From Erwin.Craps at ithelps.be Wed Mar 1 02:45:07 2006 From: Erwin.Craps at ithelps.be (Erwin Craps - IT Helps) Date: Wed, 1 Mar 2006 09:45:07 +0100 Subject: [AccessD] OT: Microsoft CRM 3 .0 Message-ID: <46B976F2B698FF46A4FE7636509B22DF1B63EE@stekelbes.ithelps.local> If I'm not mistaken I haven't read a single thing about Microsoft CRM 3.0 in this list?! Which I fiind very bizare.. I'm very intrested in MS CRM 3.0 and attented a technical and a sale presentation for MS partners but was not able to test the product yet. As I see it now, CRM looks like a good step-up for at least two tailor made apps I have written in the last years in Access, and probably a lot of others Acess apps that are Customer orientated. CRM 3.0 is based on SQL server and that also keeps everything pretty open. What is the list opinion/experiance about this CRM 3.0 espcialy for migrating Access apps to it? Greetings Erwin Craps Zaakvoerder www.ithelps.be/onsgezin This E-mail is confidential, may be legally privileged, and is for the intended recipient only. Access, disclosure, copying, distribution, or reliance on any of it by anyone else is prohibited and may be a criminal offence. Please delete if obtained in error and E-mail confirmation to the sender. IT Helps - I.T. Help Center *** Box Office Belgium & Luxembourg www.ithelps.be * www.boxoffice.be * www.stadleuven.be IT Helps bvba* ** Mercatorpad 3 ** 3000 Leuven IT Helps * Phone: +32 16 296 404 * Fax: +32 16 296 405 E-mail: Info at ithelps.be Box Office ** Fax: +32 16 296 406 ** Box Office E-mail: Staff at boxoffice.be From Gustav at cactus.dk Wed Mar 1 02:50:29 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 01 Mar 2006 09:50:29 +0100 Subject: [AccessD] Scirus Scientific Search Engine Message-ID: Hi all Are you aware of the scientific search engine Scirus: http://www.scirus.com It can be quite useful when you wish you could "cut the crap" from a Google search. The crap is often caused by this "feature" which few know about: Hi Gustav, Thank you for your note. Sometimes when you search for an exact phrase, you will not find an exact match anywhere on the page in question. When this occurs, if you look at Google's cached copy of the page you should see a message in the upper left-hand area of the page that says, "These terms only appear in links pointing to this page." In evaluating the merit of a page, Google looks not only at information found on the page itself, but also the anchor text of links that point to the page. If links pointing to the page contain the exact phrase you searched on, this can cause a page to be returned as a match for your query. We hope this explanation helps to clarify our phrase search procedure. Regards, The Google Team /gustav From Gustav at cactus.dk Wed Mar 1 03:17:13 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 01 Mar 2006 10:17:13 +0100 Subject: [AccessD] Quartile Message-ID: Hi Marty I doubt very much the GetRows() method will be faster as you will read in the full recordset while I only open the recordset, count records and move to one or two records. The SQL method is quite convoluted even for the simple Median, for Quartiles it will get much worse: http://www.aspfaq.com/show.asp?id=2506 not to say if you will not calculate on the full table but only a part of it. If having large recordset and true speed is a must, I guess you have to move to a server engine and stored procedures or OLAP. /gustav >>> martyconnelly at shaw.ca 01-03-2006 00:18 >>> This code has excel limits, arrays limited to 64K but maybe the initial part using getrows on a recordset and moving the field into another array might help you or maybe faster. Don Celko had an SQL percentile method in "SQL for Smarties" but even he suggested using SAS or SPSS for large datasets or using OLAP. Function TestRecordset() Dim strConnect As String Dim arRs As Variant Dim strsql As String strsql = "SELECT DISTINCTROW Format([ShippedDate],""yyyy""),[Order Subtotals].Subtotal, Orders.OrderID " & _ "FROM Orders INNER JOIN [Order Subtotals] ON Orders.OrderID = [Order Subtotals].OrderID " & _ "WHERE (Orders.ShippedDate Is Not Null);" Debug.Print strsql strConnect = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=""C:\Program Files\Microsoft Office\Office\Samples\Copy of Northwind.mdb"";" Dim objCnn As Object Dim objRs As Object Set objCnn = CreateObject("ADODB.Connection") objCnn.Open strConnect Set objRs = CreateObject("ADODB.Recordset") objRs.Open strsql, objCnn If objRs.EOF = False Then arRs = objRs.GetRows Else arRs = "no results" End If Dim arRsT() As Double Dim myubnd As Long Dim mylbnd As Long myubnd = UBound(arRs, 2) mylbnd = LBound(arRs, 2) ReDim arRsT(mylbnd To myubnd) 'Excel arrays get confused unless this done ' with passed arrays and limits of 64K Dim i As Long 'stuff sql query field "subtotal" into a new array For i = 0 To UBound(arRs, 2) arRsT(i) = arRs(1, i) Next i Debug.Print Pctile(arRsT, 0.75) Debug.Print "1st quartile=" & quartile(arRsT, 1) Debug.Print "2nd quartile=" & quartile(arRsT, 2) Debug.Print "3'd quartile=" & quartile(arRsT, 3) Debug.Print "min " & quartile(arRsT, 0) Debug.Print "max " & quartile(arRsT, 4) Debug.Print "95% percentile " & Pctile(arRsT, 0.95) objRs.Close Set objRs = Nothing objCnn.Close Set objCnn = Nothing TestRecordset = arRs End Function Function Pctile(data, pct) As Double Dim objExcel As Object Set objExcel = CreateObject("Excel.Application") Pctile = objExcel.Application.percentile(data, pct) objExcel.Quit Set objExcel = Nothing End Function Function quartile(data, pct As Long) As Double Dim objExcel As Object Set objExcel = CreateObject("Excel.Application") quartile = objExcel.Application.quartile(data, pct) objExcel.Quit Set objExcel = Nothing End Function From Gustav at cactus.dk Wed Mar 1 03:33:27 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 01 Mar 2006 10:33:27 +0100 Subject: [AccessD] Entering data in related tables in a single form Message-ID: Hi John Or use a multi-paged form - could be styled as a wizard operated by keypresses only. /gustav >>> jwcolby at ColbyConsulting.com 01-03-2006 04:14 >>> In fact this is the approach I am leaning towards. It is not as fast (data entry) as a single form but makes the division of labor much cleaner. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Joe Hecht Sent: Tuesday, February 28, 2006 9:45 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Entering data in related tables in a single form John, I am doing this with forms and sub forms on a tab control? I can send it to you if you need. It is the project I have been nagging the list about. Joe Hecht From pcs at azizaz.com Wed Mar 1 07:25:25 2006 From: pcs at azizaz.com (Borge Hansen) Date: Wed, 1 Mar 2006 23:25:25 +1000 Subject: [AccessD] Help with combo box References: <6.2.1.2.2.20060228155505.01e9c198@mail.tpg.com.au><4403E982.5080005@san.rr.com><6.2.1.2.2.20060228172601.01eefe80@mail.tpg.com.au><44050488.1020808@san.rr.com><6.2.1.2.2.20060301132926.01e79298@mail.tpg.com.au> <440520B4.7020907@san.rr.com> Message-ID: <003f01c63d33$99dcab00$fa10a8c0@Albatross> Haven't been following this thread, so I am just jumping in... I would do something like: Create cboRental and adjust the width so only the down arrow displays Create txtRental; make it enabled and locked and place it to the left of cboRental so it looks like one control. On afterupdate of cboRental push the field that normally would display in the combo into txtRental. Do your double clicking code on txtRental; single clicking on the cboRental... would that do? regards borge ----- Original Message ----- From: "Rocky Smolin - Beach Access Software" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 01, 2006 2:19 PM Subject: Re: [AccessD] Help with combo box > David: > > AFAIK, no, the down arrow is not a separately programmable part of the > control. But AFAIK may not go all that far. > > Rocky > > > David & Joanne Gould wrote: > > Rocky > > > > The Double-click event is set to open another form to change the Rental > > Type for this movie title. What I was wondering was if there was a way to > > access the drop-down arrow on the combo box as a separate thing. This might > > separate the main part of the control where all the other code is > > connected. Can it be done? > > > > TIA > > > > David > > > > At 01:18 PM 1/03/2006, you wrote: > > > >> Sorry about the late response. I was out all day. Can you use the > >> click event? What additional function are you trying to implement? > >> > >> Rocky > >> > >> > >> David & Joanne Gould wrote: > >> > >>> Thanks for your prompt response Rocky. > >>> > >>> At 05:11 PM 28/02/2006, you wrote: > >>> > >>> > >>>> What event is the current code attached to? > >>>> The database form is the Hiring form for a video library. There is > >>>> currently code attached to the "Before update" event, the "After Update" > >>>> event and the "On Double-click" event. The Double-click event allows the > >>>> user to add oir change the hiring code (overnight, weekly, etc). > >>>> > >>>> > >>> > >>>> Can you use the 'Got Focus' event to run your new code? > >>>> > >>>> > >>> The other issue I forgot to mention is it's on a continuous form. I have > >>> tried to make the combo box inactive if there is anything entered in it, > >>> but that just makes it inactive for all the records in the transaction (so > >>> I would only be able to enter one movie per sale). > >>> > >>> > >>> > >>> > >>>> Rocky > >>>> > >>>> > >>>> David & Joanne Gould wrote: > >>>> > >>>> > >>>>> I have a combo box on a form that has quite a lot of code attached to it. > >>>>> > >>>>> Is there a way to run code when the user clicks on the drop-down arrow > >>>>> > >>>>> > >>>> that > >>>> > >>>> > >>>>> won't interfere with other code that runs when the user double-clicks on > >>>>> the combo box? > >>>>> > >>>>> TIA > >>>>> > >>>>> David > >>>>> > >>>>> > >>>>> > >>>>> > >>>>> > >>>> -- > >>>> Rocky Smolin > >>>> Beach Access Software > >>>> 858-259-4334 > >>>> www.e-z-mrp.com > >>>> > >>>> -- > >>>> AccessD mailing list > >>>> AccessD at databaseadvisors.com > >>>> http://databaseadvisors.com/mailman/listinfo/accessd > >>>> Website: http://www.databaseadvisors.com > >>>> > >>>> > >>> > >>> > >> -- > >> Rocky Smolin > >> Beach Access Software > >> 858-259-4334 > >> www.e-z-mrp.com > >> > >> -- > >> AccessD mailing list > >> AccessD at databaseadvisors.com > >> http://databaseadvisors.com/mailman/listinfo/accessd > >> Website: http://www.databaseadvisors.com > >> > > > > > > > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From dwaters at usinternet.com Wed Mar 1 07:28:31 2006 From: dwaters at usinternet.com (Dan Waters) Date: Wed, 1 Mar 2006 07:28:31 -0600 Subject: [AccessD] Assistance In-Reply-To: <3478101.1141189286629.JavaMail.root@sniper39> Message-ID: <000c01c63d34$089f9e30$0200a8c0@danwaters> AND, the name of the autonumber field MUST be the same as the table name. For example, tblMyTable has a PK Autonumber of MyTableID. It MUST be this way! ;-) Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Tuesday, February 28, 2006 10:59 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Assistance ROTFLMAO. Some things are just worth doing, always. Because of my dictatorial methods I am able to just look at my tables and see the relationships, know what tables a field is in etc. Works for me. Most of my subjects don't dare speak up anymore, knowing my "out the door, without a parachute" mentality. ;-) John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Tuesday, February 28, 2006 11:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Assistance Well, thanks to you and your dictatorial methodology I find I am now completely unable to create a new table without defining an autonumber PK as the very first field. With ID as the suffix of the field name. Thanks a lot. And I mean that. Rocky John Colby wrote: > LOL, 99% of my forms are bound. 99% of my forms do some pretty "fancy" > stuff via my framework as well. > > For example, I have a "REC_ID" text box on every form which is bound > to the PK of the table the form collects data for. The REC_ID on the > opening form is bound to the PK so it has information on the field > name for the PK which I can use in building "move to" code. If a combo > on another (child) form is displaying a record, the combo has the PK > VALUE of a specific record in the parent table. If a user dbl clicks > a combo box, my framework can cause a data entry form to open > displaying data from the parent table that the combo is displaying. > Since I know the PK from the combo that was double clicked, and I know the table and field of that PK from the REC_ID control, I can > instruct the form to "find" that PK. I therefore have all the pieces > needed to open the form and move to the record that the combo was > displaying. If the combo back on the calling form was on the new > record, it will NOT be displaying data. That is a signal to the > opening form to move to a new record so that the user can enter data. > I use the same basic logic for the "not-in-list" event of the combo to > allow the user to automatically open the data entry form for a combo, > move to the new record, and enter new data in the table. When the > form closes, the combo requeries and now contains the newly entered data in the list table. > > That kind of stuff. > > My framework provides dozens of "behaviors" that are just there if I > want to use them. In the OnOpen of a form, when I set up the form > class, I can specify that "this combo is dependent on that combo". > When the class for this combo is requeried, it automatically requeries > all "dependent" object classes. I can have subforms, combos, list > boxes etc. all "dependent on" a given object. As long as each of these dependent objects has a "requery" > method, I can just iterate the colDependentObject collection of the > class, requerying all dependent objects. The current event of a > subform can cause the form class to requery all "dependent objects" > dependent on that current record of the subform. Of course all > dependent objects have to have feedback in the query that allows it to > display different data depending on the current row of a form, or the > selected item in a combo etc. But if you set it all up, and "inform" > the framework (objects) that other objects are dependent on them, then > they all get requeried when the master object is requeried. A combo > can have a dependent combo, which can itself have a dependent combo. Change the first combo, it requeries the second combo. > The second combo then requeries the third combo etc. The third combo > could requery 5 subforms. Your imagination is the limit. > > This kind of stuff can make the creation of dependent combos and > subforms a snap. > > Just one of dozens of behaviors built in to the framework. > > Yea, I use bound forms, I use autonumber PKs, I use a framework, and I > make good use of all of the above. > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky > Smolin - Beach Access Software > Sent: Tuesday, February 28, 2006 9:15 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Assistance > > Bound or unbound forms? > > Rocky -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From pcs at azizaz.com Wed Mar 1 07:32:17 2006 From: pcs at azizaz.com (Borge Hansen) Date: Wed, 1 Mar 2006 23:32:17 +1000 Subject: [AccessD] Help with combo box References: <6.2.1.2.2.20060301132926.01e79298@mail.tpg.com.au><000001c63ce1$61c1b230$cfb3d6d1@SUSANONE><6.2.1.2.2.20060301144836.01e78160@mail.tpg.com.au><44052061.40303@san.rr.com> <6.2.1.2.2.20060301153631.01e77178@mail.tpg.com.au> Message-ID: <005401c63d34$8f36ba00$fa10a8c0@Albatross> David, What I need to setup is a way that makes it impossible for the > > user to change their selection once they have made one (unless they delete > > the record first) but still lets them use the double-click event to open > > the form to change the rental type for the title In your code test on me.cboRental.OldValue and prevent user for changing the OldValue to a new .... regards borge ----- Original Message ----- From: "David & Joanne Gould" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 01, 2006 2:38 PM Subject: Re: [AccessD] Help with combo box > Rocky > > I had a look but the combo box doesn't have a oncurrent event. If you meant > for the form - the form is a continuous form and time I set the combo box > to disabled it disables every instance of it. > > David > > At 03:17 PM 1/03/2006, you wrote: > >David: > > > >So could you make the combo box enabled in the Current event (moving to > >a new record) and disable it after the user makes a selection? > > > >But that leads to another problem. People make mistakes. So you have > >to give them a way to back out of an erroneous selection. > > > >Rocky > > > > > >David & Joanne Gould wrote: > > > Susan > > > > > > The only property list I can see is the property dialog box for the whole > > > control. What I need to setup is a way that makes it impossible for the > > > user to change their selection once they have made one (unless they delete > > > the record first) but still lets them use the double-click event to open > > > the form to change the rental type for the title. > > > > > > TIA > > > > > > David > > > > > > At 02:36 PM 1/03/2006, you wrote: > > > > > >> Are you talking about the Dropdown property? Isn't there a Dropdown > > property > > >> that you can set to automatically open the list? Is that what you're > > after? > > >> > > >> Susan H. > > >> > > >> The Double-click event is set to open another form to change the > > Rental Type > > >> for this movie title. What I was wondering was if there was a way to > > access > > >> the drop-down arrow on the combo box as a separate thing. This might > > >> separate the main part of the control where all the other code is > > connected. > > >> Can it be done? > > >> > > >> -- > > >> AccessD mailing list > > >> AccessD at databaseadvisors.com > > >> http://databaseadvisors.com/mailman/listinfo/accessd > > >> Website: http://www.databaseadvisors.com > > >> > > > > > > > > > > > > >-- > >Rocky Smolin > >Beach Access Software > >858-259-4334 > >www.e-z-mrp.com > > > >-- > >AccessD mailing list > >AccessD at databaseadvisors.com > >http://databaseadvisors.com/mailman/listinfo/accessd > >Website: http://www.databaseadvisors.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From pcs at azizaz.com Wed Mar 1 07:42:55 2006 From: pcs at azizaz.com (Borge Hansen) Date: Wed, 1 Mar 2006 23:42:55 +1000 Subject: [AccessD] Scirus Scientific Search Engine References: Message-ID: <007101c63d36$0b58b8d0$fa10a8c0@Albatross> Gustav, I did ONE search phrase ..... and what a difference!!! I think most of my web search from now on will be done on scirus! Thanks a LOT of bringing the site to the attention of all of us. /borge ----- Original Message ----- From: "Gustav Brock" To: Sent: Wednesday, March 01, 2006 6:50 PM Subject: [AccessD] Scirus Scientific Search Engine > Hi all > > Are you aware of the scientific search engine Scirus: > > http://www.scirus.com > From harkinsss at bellsouth.net Wed Mar 1 07:49:46 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Wed, 1 Mar 2006 08:49:46 -0500 Subject: [AccessD] Help with combo box In-Reply-To: <6.2.1.2.2.20060301144836.01e78160@mail.tpg.com.au> Message-ID: <000401c63d37$01e52d50$d8b3d6d1@SUSANONE> It may be VBA only and all it does is drop the list automatically. Susan H. Susan The only property list I can see is the property dialog box for the whole control. What I need to setup is a way that makes it impossible for the user to change their selection once they have made one (unless they delete the record first) but still lets them use the double-click event to open the form to change the rental type for the title. From JHewson at karta.com Wed Mar 1 07:58:06 2006 From: JHewson at karta.com (Jim Hewson) Date: Wed, 1 Mar 2006 07:58:06 -0600 Subject: [AccessD] Assistance Message-ID: <9C382E065F54AE48BC3AA7925DCBB01C03DE6751@karta-exc-int.Karta.com> Here. Here. I concur! Jim jhewson at karta.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Tuesday, February 28, 2006 10:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Assistance Well, thanks to you and your dictatorial methodology I find I am now completely unable to create a new table without defining an autonumber PK as the very first field. With ID as the suffix of the field name. Thanks a lot. And I mean that. Rocky John Colby wrote: > LOL, 99% of my forms are bound. 99% of my forms do some pretty "fancy" > stuff via my framework as well. > > For example, I have a "REC_ID" text box on every form which is bound to the > PK of the table the form collects data for. The REC_ID on the opening form > is bound to the PK so it has information on the field name for the PK which > I can use in building "move to" code. If a combo on another (child) form is > displaying a record, the combo has the PK VALUE of a specific record in the > parent table. If a user dbl clicks a combo box, my framework can cause a > data entry form to open displaying data from the parent table that the combo > is displaying. Since I know the PK from the combo that was double clicked, > and I know the table and field of that PK from the REC_ID control, I can > instruct the form to "find" that PK. I therefore have all the pieces > needed to open the form and move to the record that the combo was > displaying. If the combo back on the calling form was on the new record, it > will NOT be displaying data. That is a signal to the opening form to move > to a new record so that the user can enter data. I use the same basic logic > for the "not-in-list" event of the combo to allow the user to automatically > open the data entry form for a combo, move to the new record, and enter new > data in the table. When the form closes, the combo requeries and now > contains the newly entered data in the list table. > > That kind of stuff. > > My framework provides dozens of "behaviors" that are just there if I want to > use them. In the OnOpen of a form, when I set up the form class, I can > specify that "this combo is dependent on that combo". When the class for > this combo is requeried, it automatically requeries all "dependent" object > classes. I can have subforms, combos, list boxes etc. all "dependent on" a > given object. As long as each of these dependent objects has a "requery" > method, I can just iterate the colDependentObject collection of the class, > requerying all dependent objects. The current event of a subform can cause > the form class to requery all "dependent objects" dependent on that current > record of the subform. Of course all dependent objects have to have > feedback in the query that allows it to display different data depending on > the current row of a form, or the selected item in a combo etc. But if you > set it all up, and "inform" the framework (objects) that other objects are > dependent on them, then they all get requeried when the master object is > requeried. A combo can have a dependent combo, which can itself have a > dependent combo. Change the first combo, it requeries the second combo. > The second combo then requeries the third combo etc. The third combo could > requery 5 subforms. Your imagination is the limit. > > This kind of stuff can make the creation of dependent combos and subforms a > snap. > > Just one of dozens of behaviors built in to the framework. > > Yea, I use bound forms, I use autonumber PKs, I use a framework, and I make > good use of all of the above. > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - > Beach Access Software > Sent: Tuesday, February 28, 2006 9:15 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Assistance > > Bound or unbound forms? > > Rocky > > > John Colby wrote: > >> Folks, >> >> I am looking for a "junior level" person to assist me in getting some >> of my back log caught up. I need one person, able to: >> >> Read and program VBA, guru not required. >> Understands and can build Access tables, queries, forms and reports. >> Must understand data normalization and be able to correctly sort out >> what data goes where given a set of objects / attributes. >> Must be able to read, understand and build relationship diagrams in >> the relationship window in Access (the center of my universe). >> Has a few hours a day available (10-20 hours a week). >> Must be self starter, blah, blah, blah. >> >> If anyone out there thinks they might fit the bill, please respond >> OFFLINE - email a resume, and introduction email with required hourly >> wage to jwcolby at colbyconsulting.com. The more you know and are >> capable of the more work I have. >> >> Thanks, >> >> John W. Colby >> www.ColbyConsulting.com >> >> >> >> > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jdemarco at hudsonhealthplan.org Wed Mar 1 08:20:42 2006 From: Jdemarco at hudsonhealthplan.org (Jim DeMarco) Date: Wed, 1 Mar 2006 09:20:42 -0500 Subject: [AccessD] Converting to 2003 Message-ID: <08F823FD83787D4BA0B99CA580AD3C7402DE6CB6@TTNEXCHCL2.hshhp.com> While I can certainly understand the how mere mention of Gustav's name might instill respect in an application I'm not quite sure I have an answer to my question. Was the bloating issue fixed or will I have to insert Gustav into my conversion process? ;-) Thanks, Jim D. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of William Hindman Sent: Tuesday, February 28, 2006 9:14 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Converting to 2003 ...your blessing or MS actually fixing an Access bug ...both are miracles in my book :) William ----- Original Message ----- From: "Gustav Brock" To: Sent: Tuesday, February 28, 2006 4:33 AM Subject: Re: [AccessD] Converting to 2003 > Hi William > > "don't particularly care" ... well, that hurts - after all my efforts! > > Actually, we have two clients - both female, wonder why - who claim that > more than once they have seen issues vanish just by calling me. I didn't > do anything - no advice or problem solving - other than devoting my > attention. And my middle name isn't Jesus. Maybe your mdbs have been on my > mind too! > > /gustav > >>>> wdhindman at bellsouth.net 28-02-2006 00:39 >>> > ...either its been fixed or Gustav blessed all my mdbs ...I don't > particularly care which :) > > William > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************************** "This electronic message is intended to be for the use only of the named recipient, and may contain information from Hudson Health Plan (HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". *********************************************************************************** From bchacc at san.rr.com Wed Mar 1 08:54:56 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Wed, 01 Mar 2006 06:54:56 -0800 Subject: [AccessD] Assistance In-Reply-To: <000c01c63d34$089f9e30$0200a8c0@danwaters> References: <000c01c63d34$089f9e30$0200a8c0@danwaters> Message-ID: <4405B5C0.4080502@san.rr.com> You forgot the fld prefix! I now also put the name of the table into each field name. so each field in tblCustomer, for example, begins with fldCustomer. More self documenting. You can always see what table a field comes from. Rocky Dan Waters wrote: > AND, the name of the autonumber field MUST be the same as the table name. > > For example, tblMyTable has a PK Autonumber of MyTableID. > > It MUST be this way! > > ;-) > > Dan > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby > Sent: Tuesday, February 28, 2006 10:59 PM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Assistance > > ROTFLMAO. > > Some things are just worth doing, always. > > Because of my dictatorial methods I am able to just look at my tables and > see the relationships, know what tables a field is in etc. Works for me. > Most of my subjects don't dare speak up anymore, knowing my "out the door, > without a parachute" mentality. > > ;-) > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - > Beach Access Software > Sent: Tuesday, February 28, 2006 11:15 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Assistance > > Well, thanks to you and your dictatorial methodology I find I am now > completely unable to create a new table without defining an autonumber PK as > the very first field. With ID as the suffix of the field name. > > Thanks a lot. > > And I mean that. > > Rocky > > > John Colby wrote: > >> LOL, 99% of my forms are bound. 99% of my forms do some pretty "fancy" >> stuff via my framework as well. >> >> For example, I have a "REC_ID" text box on every form which is bound >> to the PK of the table the form collects data for. The REC_ID on the >> opening form is bound to the PK so it has information on the field >> name for the PK which I can use in building "move to" code. If a combo >> on another (child) form is displaying a record, the combo has the PK >> VALUE of a specific record in the parent table. If a user dbl clicks >> a combo box, my framework can cause a data entry form to open >> displaying data from the parent table that the combo is displaying. >> Since I know the PK from the combo that was double clicked, and I know the >> > table and field of that PK from the REC_ID control, I can > >> instruct the form to "find" that PK. I therefore have all the pieces >> needed to open the form and move to the record that the combo was >> displaying. If the combo back on the calling form was on the new >> record, it will NOT be displaying data. That is a signal to the >> opening form to move to a new record so that the user can enter data. >> I use the same basic logic for the "not-in-list" event of the combo to >> allow the user to automatically open the data entry form for a combo, >> move to the new record, and enter new data in the table. When the >> form closes, the combo requeries and now contains the newly entered data >> > in the list table. > >> That kind of stuff. >> >> My framework provides dozens of "behaviors" that are just there if I >> want to use them. In the OnOpen of a form, when I set up the form >> class, I can specify that "this combo is dependent on that combo". >> When the class for this combo is requeried, it automatically requeries >> all "dependent" object classes. I can have subforms, combos, list >> boxes etc. all "dependent on" a given object. As long as each of these >> > dependent objects has a "requery" > >> method, I can just iterate the colDependentObject collection of the >> class, requerying all dependent objects. The current event of a >> subform can cause the form class to requery all "dependent objects" >> dependent on that current record of the subform. Of course all >> dependent objects have to have feedback in the query that allows it to >> display different data depending on the current row of a form, or the >> selected item in a combo etc. But if you set it all up, and "inform" >> the framework (objects) that other objects are dependent on them, then >> they all get requeried when the master object is requeried. A combo >> can have a dependent combo, which can itself have a dependent combo. >> > Change the first combo, it requeries the second combo. > >> The second combo then requeries the third combo etc. The third combo >> could requery 5 subforms. Your imagination is the limit. >> >> This kind of stuff can make the creation of dependent combos and >> subforms a snap. >> >> Just one of dozens of behaviors built in to the framework. >> >> Yea, I use bound forms, I use autonumber PKs, I use a framework, and I >> make good use of all of the above. >> >> John W. Colby >> www.ColbyConsulting.com >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky >> Smolin - Beach Access Software >> Sent: Tuesday, February 28, 2006 9:15 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Assistance >> >> Bound or unbound forms? >> >> Rocky >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From jmhecht at earthlink.net Wed Mar 1 09:03:24 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Wed, 1 Mar 2006 07:03:24 -0800 Subject: [AccessD] OT: Microsoft CRM 3 .0 In-Reply-To: <46B976F2B698FF46A4FE7636509B22DF1B63EE@stekelbes.ithelps.local> Message-ID: <000701c63d41$49e598b0$6701a8c0@HPLaptop> Erwin, I was at a M$ event last week. I will try to send you links later today. Remind me if I do not. The thing that turned me off as an itty bitty house is it uses servers and there opens that whole can of worms. Joe Hecht jmhecht at earthlink.net -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Erwin Craps - IT Helps Sent: Wednesday, March 01, 2006 12:45 AM To: Access Developers discussion and problem solving Subject: [AccessD] OT: Microsoft CRM 3 .0 If I'm not mistaken I haven't read a single thing about Microsoft CRM 3.0 in this list?! Which I fiind very bizare.. I'm very intrested in MS CRM 3.0 and attented a technical and a sale presentation for MS partners but was not able to test the product yet. As I see it now, CRM looks like a good step-up for at least two tailor made apps I have written in the last years in Access, and probably a lot of others Acess apps that are Customer orientated. CRM 3.0 is based on SQL server and that also keeps everything pretty open. What is the list opinion/experiance about this CRM 3.0 espcialy for migrating Access apps to it? Greetings Erwin Craps Zaakvoerder www.ithelps.be/onsgezin This E-mail is confidential, may be legally privileged, and is for the intended recipient only. Access, disclosure, copying, distribution, or reliance on any of it by anyone else is prohibited and may be a criminal offence. Please delete if obtained in error and E-mail confirmation to the sender. IT Helps - I.T. Help Center *** Box Office Belgium & Luxembourg www.ithelps.be * www.boxoffice.be * www.stadleuven.be IT Helps bvba* ** Mercatorpad 3 ** 3000 Leuven IT Helps * Phone: +32 16 296 404 * Fax: +32 16 296 405 E-mail: Info at ithelps.be Box Office ** Fax: +32 16 296 406 ** Box Office E-mail: Staff at boxoffice.be -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jmhecht at earthlink.net Wed Mar 1 09:06:48 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Wed, 1 Mar 2006 07:06:48 -0800 Subject: [AccessD] Entering data in related tables in a single form In-Reply-To: <005c01c63cde$33d3c280$647aa8c0@ColbyM6805> Message-ID: <000801c63d41$c3fe4f70$6701a8c0@HPLaptop> There is a form property called cycle so you can lock each form (subform) to show only one record at a time See http://msdn.microsoft.com/library/default.asp?url=/library/e n-us/vbaac11/html/acproCycle_HV05187126.asp Watch the wrap Joe Hecht jmhecht at earthlink.net Joe Hecht jmhecht at earthlink.net -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Tuesday, February 28, 2006 7:14 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Entering data in related tables in a single form In fact this is the approach I am leaning towards. It is not as fast (data entry) as a single form but makes the division of labor much cleaner. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Joe Hecht Sent: Tuesday, February 28, 2006 9:45 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Entering data in related tables in a single form John, I am doing this with forms and sub forms on a tab control? I can send it to you if you need. It is the project I have been nagging the list about. Joe Hecht jmhecht at earthlink.net -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Tuesday, February 28, 2006 12:13 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Entering data in related tables in a single form These are papers in boxes. Beyond that I do not know. Since the total fields they intend to enter is about 20 or so, the client intends to just "key it in". John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Tuesday, February 28, 2006 1:56 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Entering data in related tables in a single form Is the data on paper (and must be input by hand) or electronic forms (where maybe it could be parsed quickly with Monarch?) Jim Hale -----Original Message----- From: John Colby [mailto:jwcolby at colbyconsulting.com] Sent: Tuesday, February 28, 2006 12:41 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Entering data in related tables in a single form >I suppose your base is in "bounders camp" while looking for this >"quick and dirty form" solution :) LOL, yea, given I am an unholy bounder, going unbound would not qualify as quick and dirty. I have discovered that as long as you include the PK/FK pairs, and populate the data in the parent/child order it seems to work. This is a moderately complex database, normalized, with lookup tables etc. and I need to get about 3 or 4 of the major tables populated with new claim / claimant / policy data from a ton of new claims on an "emergency" basis (2000 claims input in then next couple of days). John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Tuesday, February 28, 2006 1:36 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Entering data in related tables in a single form <<< > seem to remember trying this ages ago with less than stellar results. >>> John, What issues do you mean? (It should work well in MS Access with properly organized forms (with subforms) and maybe with a few lines of code)... I suppose your base is in "bounders camp" while looking for this "quick and dirty form" solution :) Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Tuesday, February 28, 2006 9:02 PM Subject: [AccessD] Entering data in related tables in a single form >I need a quick and dirty form to enter data into a whole set of related >data tables. Policy holder, policy, claim, claimant etc. > > Is this possible? Obviously I have relational integrity turned on so > the PKs have to exist in the "parent" tables before they can be used > to enter data into the child tables. I seem to remember trying this > ages ago with less than stellar results. Has anyone here done > something like this, and if so how? > > John W. Colby > www.ColbyConsulting.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com ************************************************************ *********** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Wed Mar 1 09:12:39 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 01 Mar 2006 16:12:39 +0100 Subject: [AccessD] Assistance Message-ID: Hi Dan Actually you are denormalizing the naming of the database schema this way ... ID is fine. Outside the table it is tblMyTable.ID. Access does this for you automatically. Why having trouble with tblMyTable.MyTableID? Too much typing. Sorry, couldn't resist. Boring day here - and remember: Clients do lie. "I'm are experiencing locked records but everyone else is locked out." My colleague drives to the client just to spot a laptop with wireless network. You have one guess: Was this machine logged in to the application?" /gustav >>> dwaters at usinternet.com 01-03-2006 14:28 >>> AND, the name of the autonumber field MUST be the same as the table name. For example, tblMyTable has a PK Autonumber of MyTableID. It MUST be this way! ;-) Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Tuesday, February 28, 2006 10:59 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Assistance ROTFLMAO. Some things are just worth doing, always. Because of my dictatorial methods I am able to just look at my tables and see the relationships, know what tables a field is in etc. Works for me. Most of my subjects don't dare speak up anymore, knowing my "out the door, without a parachute" mentality. ;-) John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Tuesday, February 28, 2006 11:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Assistance Well, thanks to you and your dictatorial methodology I find I am now completely unable to create a new table without defining an autonumber PK as the very first field. With ID as the suffix of the field name. Thanks a lot. And I mean that. Rocky From Gustav at cactus.dk Wed Mar 1 09:15:07 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 01 Mar 2006 16:15:07 +0100 Subject: [AccessD] Assistance Message-ID: Hi Rocky Until you rename the table. Great time for fun! /gustav >>> bchacc at san.rr.com 01-03-2006 15:54 >>> You forgot the fld prefix! I now also put the name of the table into each field name. so each field in tblCustomer, for example, begins with fldCustomer. More self documenting. You can always see what table a field comes from. Rocky From Gustav at cactus.dk Wed Mar 1 09:23:20 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 01 Mar 2006 16:23:20 +0100 Subject: [AccessD] OT: Microsoft CRM 3 .0 Message-ID: Hi Erwin We looked briefly at the earlier versions. Problem is that any solution with Microsoft CRM ties the client to Microsoft Outlook, Microsoft servers and/or Exchange/Sharepoint and/or some of their Business apps and no Mac or Linux workstations. It's just too much Microsoft. A five or ten user package is included with the Action Pack so go'n'get that if you wish to play around with it. For some clients it may prove useful at a modest cost. /gustav >>> Erwin.Craps at ithelps.be 01-03-2006 09:45 >>> If I'm not mistaken I haven't read a single thing about Microsoft CRM 3.0 in this list?! Which I fiind very bizare.. I'm very intrested in MS CRM 3.0 and attented a technical and a sale presentation for MS partners but was not able to test the product yet. As I see it now, CRM looks like a good step-up for at least two tailor made apps I have written in the last years in Access, and probably a lot of others Acess apps that are Customer orientated. CRM 3.0 is based on SQL server and that also keeps everything pretty open. What is the list opinion/experiance about this CRM 3.0 espcialy for migrating Access apps to it? Greetings Erwin Craps Zaakvoerder www.ithelps.be/onsgezin From bchacc at san.rr.com Wed Mar 1 09:23:43 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Wed, 01 Mar 2006 07:23:43 -0800 Subject: [AccessD] Assistance In-Reply-To: References: Message-ID: <4405BC7F.2060903@san.rr.com> Isn't that what Rick Fisher's Find and Replace is for? Actually has this kind of happen this week. Had to merge one table into another. So I had to change my fldBV prefix to fldBundle everywhere - tables, queries, forms, code, etc. Great program. It found them all. Rocky Gustav Brock wrote: > Hi Rocky > > Until you rename the table. Great time for fun! > > /gustav > > >>>> bchacc at san.rr.com 01-03-2006 15:54 >>> >>>> > You forgot the fld prefix! I now also put the name of the table into > each field name. so each field in tblCustomer, for example, begins with > fldCustomer. More self documenting. You can always see what table a > field comes from. > > Rocky > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From markamatte at hotmail.com Wed Mar 1 09:35:03 2006 From: markamatte at hotmail.com (Mark A Matte) Date: Wed, 01 Mar 2006 15:35:03 +0000 Subject: [AccessD] On Open Event In-Reply-To: <4405BC7F.2060903@san.rr.com> Message-ID: Hello All, I have a form that does 'stuff' 'ON OPEN'...is there a way to cause this event to fire again from another form...repaint,refresh,requery...anything? Thanks, Mark A. Matte From JHewson at karta.com Wed Mar 1 09:39:17 2006 From: JHewson at karta.com (Jim Hewson) Date: Wed, 1 Mar 2006 09:39:17 -0600 Subject: [AccessD] On Open Event Message-ID: <9C382E065F54AE48BC3AA7925DCBB01C03DE6782@karta-exc-int.Karta.com> When I had to do this, I created a public function and then just called the function where ever I needed it. JC would have it in a class in his framework. Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mark A Matte Sent: Wednesday, March 01, 2006 9:35 AM To: accessd at databaseadvisors.com Subject: [AccessD] On Open Event Hello All, I have a form that does 'stuff' 'ON OPEN'...is there a way to cause this event to fire again from another form...repaint,refresh,requery...anything? Thanks, Mark A. Matte -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From markamatte at hotmail.com Wed Mar 1 09:43:40 2006 From: markamatte at hotmail.com (Mark A Matte) Date: Wed, 01 Mar 2006 15:43:40 +0000 Subject: [AccessD] On Open Event In-Reply-To: <9C382E065F54AE48BC3AA7925DCBB01C03DE6782@karta-exc-int.Karta.com> Message-ID: Thanks Jim, Thats what I was thinking...I just wish I would have thought about that at the beginning. Thanks, Mark A. Matte >From: "Jim Hewson" >Reply-To: Access Developers discussion and problem >solving >To: "Access Developers discussion and problem >solving" >Subject: Re: [AccessD] On Open Event >Date: Wed, 1 Mar 2006 09:39:17 -0600 > >When I had to do this, I created a public function and then just called the >function where ever I needed it. >JC would have it in a class in his framework. > >Jim > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mark A Matte >Sent: Wednesday, March 01, 2006 9:35 AM >To: accessd at databaseadvisors.com >Subject: [AccessD] On Open Event > >Hello All, > >I have a form that does 'stuff' 'ON OPEN'...is there a way to cause this >event to fire again from another form...repaint,refresh,requery...anything? > >Thanks, > >Mark A. Matte > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Wed Mar 1 10:13:55 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Wed, 1 Mar 2006 08:13:55 -0800 Subject: [AccessD] Assistance Message-ID: Troublemaker! ;o> Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Tuesday, February 28, 2006 6:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Assistance Bound or unbound forms? Rocky John Colby wrote: > Folks, > > I am looking for a "junior level" person to assist me in getting some > of my back log caught up. I need one person, able to: > > Read and program VBA, guru not required. > Understands and can build Access tables, queries, forms and reports. > Must understand data normalization and be able to correctly sort out > what data goes where given a set of objects / attributes. Must be able > to read, understand and build relationship diagrams in the > relationship window in Access (the center of my universe). Has a few > hours a day available (10-20 hours a week). Must be self starter, > blah, blah, blah. > > If anyone out there thinks they might fit the bill, please respond > OFFLINE - email a resume, and introduction email with required hourly > wage to jwcolby at colbyconsulting.com. The more you know and are > capable of the more work I have. > > Thanks, > > John W. Colby > www.ColbyConsulting.com > > From cfoust at infostatsystems.com Wed Mar 1 10:21:16 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Wed, 1 Mar 2006 08:21:16 -0800 Subject: [AccessD] Scirus Scientific Search Engine Message-ID: Well, it certainly cut the crap out for me. I get a plain white IE page with the message "Done" in the status bar. Not terribly useful, but a lot cleaner than a google search! LOL Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Wednesday, March 01, 2006 12:50 AM To: accessd at databaseadvisors.com Subject: [AccessD] Scirus Scientific Search Engine Hi all Are you aware of the scientific search engine Scirus: http://www.scirus.com It can be quite useful when you wish you could "cut the crap" from a Google search. The crap is often caused by this "feature" which few know about: Hi Gustav, Thank you for your note. Sometimes when you search for an exact phrase, you will not find an exact match anywhere on the page in question. When this occurs, if you look at Google's cached copy of the page you should see a message in the upper left-hand area of the page that says, "These terms only appear in links pointing to this page." In evaluating the merit of a page, Google looks not only at information found on the page itself, but also the anchor text of links that point to the page. If links pointing to the page contain the exact phrase you searched on, this can cause a page to be returned as a match for your query. We hope this explanation helps to clarify our phrase search procedure. Regards, The Google Team /gustav From Gustav at cactus.dk Wed Mar 1 10:21:17 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 01 Mar 2006 17:21:17 +0100 Subject: [AccessD] Assistance Message-ID: Hi Rocky Right you are. The trouble is field names in queries. It handles that. /gustav >>> bchacc at san.rr.com 01-03-2006 16:23 >>> Isn't that what Rick Fisher's Find and Replace is for? Actually has this kind of happen this week. Had to merge one table into another. So I had to change my fldBV prefix to fldBundle everywhere - tables, queries, forms, code, etc. Great program. It found them all. Rocky Gustav Brock wrote: > Hi Rocky > > Until you rename the table. Great time for fun! > > /gustav > > >>>> bchacc at san.rr.com 01-03-2006 15:54 >>> >>>> > You forgot the fld prefix! I now also put the name of the table into > each field name. so each field in tblCustomer, for example, begins with > fldCustomer. More self documenting. You can always see what table a > field comes from. From jwcolby at ColbyConsulting.com Wed Mar 1 10:26:26 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Wed, 1 Mar 2006 11:26:26 -0500 Subject: [AccessD] Assistance In-Reply-To: <4405BC7F.2060903@san.rr.com> Message-ID: <007c01c63d4c$e47d65f0$647aa8c0@ColbyM6805> Exactly. If you are changing table names you already have to search and replace in forms, reports, queries, code etc. Find&Replace ! John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Wednesday, March 01, 2006 10:24 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Assistance Isn't that what Rick Fisher's Find and Replace is for? Actually has this kind of happen this week. Had to merge one table into another. So I had to change my fldBV prefix to fldBundle everywhere - tables, queries, forms, code, etc. Great program. It found them all. Rocky Gustav Brock wrote: > Hi Rocky > > Until you rename the table. Great time for fun! > > /gustav > > >>>> bchacc at san.rr.com 01-03-2006 15:54 >>> >>>> > You forgot the fld prefix! I now also put the name of the table into > each field name. so each field in tblCustomer, for example, begins > with fldCustomer. More self documenting. You can always see what > table a field comes from. > > Rocky > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From dwaters at usinternet.com Wed Mar 1 10:39:37 2006 From: dwaters at usinternet.com (Dan Waters) Date: Wed, 1 Mar 2006 10:39:37 -0600 Subject: [AccessD] Assistance In-Reply-To: <12023378.1141226234742.JavaMail.root@sniper39> Message-ID: <000901c63d4e$be0fd590$0200a8c0@danwaters> Gustav, I usually don't argue in this list but now I have to. Do you really want one field in every table called ID? Typing is easy! Trying to hunt down which of 50 fields all named ID is causing the problem sounds like a good all-day exercise. Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Wednesday, March 01, 2006 9:13 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Assistance Hi Dan Actually you are denormalizing the naming of the database schema this way ... ID is fine. Outside the table it is tblMyTable.ID. Access does this for you automatically. Why having trouble with tblMyTable.MyTableID? Too much typing. Sorry, couldn't resist. Boring day here - and remember: Clients do lie. "I'm are experiencing locked records but everyone else is locked out." My colleague drives to the client just to spot a laptop with wireless network. You have one guess: Was this machine logged in to the application?" /gustav >>> dwaters at usinternet.com 01-03-2006 14:28 >>> AND, the name of the autonumber field MUST be the same as the table name. For example, tblMyTable has a PK Autonumber of MyTableID. It MUST be this way! ;-) Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Tuesday, February 28, 2006 10:59 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Assistance ROTFLMAO. Some things are just worth doing, always. Because of my dictatorial methods I am able to just look at my tables and see the relationships, know what tables a field is in etc. Works for me. Most of my subjects don't dare speak up anymore, knowing my "out the door, without a parachute" mentality. ;-) John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Tuesday, February 28, 2006 11:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Assistance Well, thanks to you and your dictatorial methodology I find I am now completely unable to create a new table without defining an autonumber PK as the very first field. With ID as the suffix of the field name. Thanks a lot. And I mean that. Rocky -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From dwaters at usinternet.com Wed Mar 1 10:45:35 2006 From: dwaters at usinternet.com (Dan Waters) Date: Wed, 1 Mar 2006 10:45:35 -0600 Subject: [AccessD] On Open Event In-Reply-To: <17264580.1141227507130.JavaMail.root@sniper19> Message-ID: <000a01c63d4f$908c6ab0$0200a8c0@danwaters> Mark, You can do this: 1) Make the open event a Public sub. 2) Use this: Call Forms.frmMyForm.Form_Open You can use this technique to call any procedure in any OPEN form. I do this sometimes to call an open form's Current event from code in a standard module. Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mark A Matte Sent: Wednesday, March 01, 2006 9:35 AM To: accessd at databaseadvisors.com Subject: [AccessD] On Open Event Hello All, I have a form that does 'stuff' 'ON OPEN'...is there a way to cause this event to fire again from another form...repaint,refresh,requery...anything? Thanks, Mark A. Matte -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From markamatte at hotmail.com Wed Mar 1 10:54:03 2006 From: markamatte at hotmail.com (Mark A Matte) Date: Wed, 01 Mar 2006 16:54:03 +0000 Subject: [AccessD] On Open Event In-Reply-To: <000a01c63d4f$908c6ab0$0200a8c0@danwaters> Message-ID: Dan, Thats what I was looking for... Thanks, Mark A. Matte >From: "Dan Waters" >Reply-To: Access Developers discussion and problem >solving >To: "'Access Developers discussion and problem >solving'" >Subject: Re: [AccessD] On Open Event >Date: Wed, 1 Mar 2006 10:45:35 -0600 > >Mark, > >You can do this: > >1) Make the open event a Public sub. > >2) Use this: Call Forms.frmMyForm.Form_Open > >You can use this technique to call any procedure in any OPEN form. I do >this sometimes to call an open form's Current event from code in a standard >module. > > >Dan > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mark A Matte >Sent: Wednesday, March 01, 2006 9:35 AM >To: accessd at databaseadvisors.com >Subject: [AccessD] On Open Event > >Hello All, > >I have a form that does 'stuff' 'ON OPEN'...is there a way to cause this >event to fire again from another form...repaint,refresh,requery...anything? > >Thanks, > >Mark A. Matte > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From Gustav at cactus.dk Wed Mar 1 11:52:09 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 01 Mar 2006 18:52:09 +0100 Subject: [AccessD] Assistance Message-ID: Hi Dan It really is a matter of preference, I feel. All I can say is that it has never caused any trouble for me. Also, I always prefix table names "tbl" to separate them in SQL clearly from query names. But I never prefix field names with "fld". Again, matter of taste. /gustav >>> dwaters at usinternet.com 01-03-2006 17:39 >>> Gustav, I usually don't argue in this list but now I have to. Do you really want one field in every table called ID? Typing is easy! Trying to hunt down which of 50 fields all named ID is causing the problem sounds like a good all-day exercise. Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Wednesday, March 01, 2006 9:13 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Assistance Hi Dan Actually you are denormalizing the naming of the database schema this way ... ID is fine. Outside the table it is tblMyTable.ID. Access does this for you automatically. Why having trouble with tblMyTable.MyTableID? Too much typing. Sorry, couldn't resist. Boring day here - and remember: Clients do lie. "I'm are experiencing locked records but everyone else is locked out." My colleague drives to the client just to spot a laptop with wireless network. You have one guess: Was this machine logged in to the application?" /gustav >>> dwaters at usinternet.com 01-03-2006 14:28 >>> AND, the name of the autonumber field MUST be the same as the table name. For example, tblMyTable has a PK Autonumber of MyTableID. It MUST be this way! ;-) Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Tuesday, February 28, 2006 10:59 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Assistance ROTFLMAO. Some things are just worth doing, always. Because of my dictatorial methods I am able to just look at my tables and see the relationships, know what tables a field is in etc. Works for me. Most of my subjects don't dare speak up anymore, knowing my "out the door, without a parachute" mentality. ;-) John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Tuesday, February 28, 2006 11:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Assistance Well, thanks to you and your dictatorial methodology I find I am now completely unable to create a new table without defining an autonumber PK as the very first field. With ID as the suffix of the field name. Thanks a lot. And I mean that. Rocky From jwcolby at ColbyConsulting.com Wed Mar 1 11:57:46 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Wed, 1 Mar 2006 12:57:46 -0500 Subject: [AccessD] Assistance In-Reply-To: <000901c63d4e$be0fd590$0200a8c0@danwaters> Message-ID: <008801c63d59$a686beb0$647aa8c0@ColbyM6805> Lol, my feeling exactly. Plus it is nice to just look at a field name and know where it comes from. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Dan Waters Sent: Wednesday, March 01, 2006 11:40 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Assistance Gustav, I usually don't argue in this list but now I have to. Do you really want one field in every table called ID? Typing is easy! Trying to hunt down which of 50 fields all named ID is causing the problem sounds like a good all-day exercise. Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Wednesday, March 01, 2006 9:13 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Assistance Hi Dan Actually you are denormalizing the naming of the database schema this way ... ID is fine. Outside the table it is tblMyTable.ID. Access does this for you automatically. Why having trouble with tblMyTable.MyTableID? Too much typing. Sorry, couldn't resist. Boring day here - and remember: Clients do lie. "I'm are experiencing locked records but everyone else is locked out." My colleague drives to the client just to spot a laptop with wireless network. You have one guess: Was this machine logged in to the application?" /gustav >>> dwaters at usinternet.com 01-03-2006 14:28 >>> AND, the name of the autonumber field MUST be the same as the table name. For example, tblMyTable has a PK Autonumber of MyTableID. It MUST be this way! ;-) Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Tuesday, February 28, 2006 10:59 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Assistance ROTFLMAO. Some things are just worth doing, always. Because of my dictatorial methods I am able to just look at my tables and see the relationships, know what tables a field is in etc. Works for me. Most of my subjects don't dare speak up anymore, knowing my "out the door, without a parachute" mentality. ;-) John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Tuesday, February 28, 2006 11:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Assistance Well, thanks to you and your dictatorial methodology I find I am now completely unable to create a new table without defining an autonumber PK as the very first field. With ID as the suffix of the field name. Thanks a lot. And I mean that. Rocky -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jimjih at comcast.net Wed Mar 1 12:00:00 2006 From: jimjih at comcast.net (jimjih at comcast.net) Date: Wed, 01 Mar 2006 18:00:00 +0000 Subject: [AccessD] On Form Opening Message-ID: <030120061800.13096.4405E12000028C2A000033282200750744080706030706@comcast.net> Hi all, I am quite new at working with Access, having learned what little I know from a very good book, and only because an accounting client needed something that QuickBooks couldn't do. My question is this: I have several forms used to input data such as Employees, Sub-Contractors, Customers, Delivery Tickets, etc. When the form is opened all fields are populated by data from the first item in that particular table. Is it possible to have all fields blank upon opening. Have not been able to find an answer in the books. I figured a workaround, but it involves a lot of work. Also looked at the forms in the Northwind sample program, and their forms do the same thing. Is it possible? Thanks, Jim Holbrook From cfoust at infostatsystems.com Wed Mar 1 12:04:22 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Wed, 1 Mar 2006 10:04:22 -0800 Subject: [AccessD] Assistance Message-ID: Of course, you could be truly rigorous and insist that field names be unique ... ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Wednesday, March 01, 2006 9:58 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Assistance Lol, my feeling exactly. Plus it is nice to just look at a field name and know where it comes from. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Dan Waters Sent: Wednesday, March 01, 2006 11:40 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Assistance Gustav, I usually don't argue in this list but now I have to. Do you really want one field in every table called ID? Typing is easy! Trying to hunt down which of 50 fields all named ID is causing the problem sounds like a good all-day exercise. Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Wednesday, March 01, 2006 9:13 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Assistance Hi Dan Actually you are denormalizing the naming of the database schema this way ... ID is fine. Outside the table it is tblMyTable.ID. Access does this for you automatically. Why having trouble with tblMyTable.MyTableID? Too much typing. Sorry, couldn't resist. Boring day here - and remember: Clients do lie. "I'm are experiencing locked records but everyone else is locked out." My colleague drives to the client just to spot a laptop with wireless network. You have one guess: Was this machine logged in to the application?" /gustav >>> dwaters at usinternet.com 01-03-2006 14:28 >>> AND, the name of the autonumber field MUST be the same as the table name. For example, tblMyTable has a PK Autonumber of MyTableID. It MUST be this way! ;-) Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Tuesday, February 28, 2006 10:59 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Assistance ROTFLMAO. Some things are just worth doing, always. Because of my dictatorial methods I am able to just look at my tables and see the relationships, know what tables a field is in etc. Works for me. Most of my subjects don't dare speak up anymore, knowing my "out the door, without a parachute" mentality. ;-) John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Tuesday, February 28, 2006 11:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Assistance Well, thanks to you and your dictatorial methodology I find I am now completely unable to create a new table without defining an autonumber PK as the very first field. With ID as the suffix of the field name. Thanks a lot. And I mean that. Rocky -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From markamatte at hotmail.com Wed Mar 1 12:21:13 2006 From: markamatte at hotmail.com (Mark A Matte) Date: Wed, 01 Mar 2006 18:21:13 +0000 Subject: [AccessD] On Form Opening Message-ID: Jim, I think if you set the form's "DATA ENTRY" property to YES...you will get the effect you are looking for. Or if you want them to be able to navigate to previous records...you can put the following code in the "ON OPEN" event: DoCmd.GoToRecord , , acNewRec Hope it helps, Mark A. Matte >From: jimjih at comcast.net >Reply-To: Access Developers discussion and problem >solving >To: Access Developers discussion and problem >solving >Subject: [AccessD] On Form Opening >Date: Wed, 01 Mar 2006 18:00:00 +0000 > >Hi all, >I am quite new at working with Access, having learned what little I know >from a very good book, and only because an accounting client needed >something that QuickBooks couldn't do. > >My question is this: I have several forms used to input data such as >Employees, Sub-Contractors, Customers, Delivery Tickets, etc. When the >form is opened all fields are populated by data from the first item in that >particular table. Is it possible to have all fields blank upon opening. >Have not been able to find an answer in the books. I figured a workaround, >but it involves a lot of work. > >Also looked at the forms in the Northwind sample program, and their forms >do the same thing. >Is it possible? > >Thanks, > >Jim Holbrook >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From Robin at rolledgold.net Wed Mar 1 12:15:24 2006 From: Robin at rolledgold.net (Robin ) Date: Wed, 1 Mar 2006 18:15:24 -0000 Subject: [AccessD] On Form Opening Message-ID: <560E2B80EC8F624B93A87B943B7A9CD54A3696@rgiserv.rg.local> Jim, Assuming it's a bound form ... Open the form in design view, right click the small black square top left and choose properties. Select the data tab then click on data entry and change the no to yes ... That should do it.. Rgds Robin Lawrence -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of jimjih at comcast.net Sent: 01 March 2006 18:00 To: Access Developers discussion and problem solving Subject: [AccessD] On Form Opening Hi all, I am quite new at working with Access, having learned what little I know from a very good book, and only because an accounting client needed something that QuickBooks couldn't do. My question is this: I have several forms used to input data such as Employees, Sub-Contractors, Customers, Delivery Tickets, etc. When the form is opened all fields are populated by data from the first item in that particular table. Is it possible to have all fields blank upon opening. Have not been able to find an answer in the books. I figured a workaround, but it involves a lot of work. Also looked at the forms in the Northwind sample program, and their forms do the same thing. Is it possible? Thanks, Jim Holbrook -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From harkinsss at bellsouth.net Wed Mar 1 12:23:10 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Wed, 1 Mar 2006 13:23:10 -0500 Subject: [AccessD] Assistance In-Reply-To: <000901c63d4e$be0fd590$0200a8c0@danwaters> Message-ID: <000b01c63d5d$42d5f990$c6b3d6d1@SUSANONE> ID is just the suffix, as in: CustomerID, EmployeeID, OrderID, and so on. Susan H. I usually don't argue in this list but now I have to. Do you really want one field in every table called ID? Typing is easy! Trying to hunt down which of 50 fields all named ID is causing the problem sounds like a good all-day exercise. From jimjih at comcast.net Wed Mar 1 12:25:27 2006 From: jimjih at comcast.net (jimjih at comcast.net) Date: Wed, 01 Mar 2006 18:25:27 +0000 Subject: [AccessD] On Form Opening Message-ID: <030120061825.7059.4405E7170007347500001B932200750744080706030706@comcast.net> Thanks Mark, At my age, I tend to overlook some simple things, but I really didn't think there was anything simple about Access. Jim -------------- Original message -------------- From: "Mark A Matte" > Jim, > > I think if you set the form's "DATA ENTRY" property to YES...you will get > the effect you are looking for. > > Or if you want them to be able to navigate to previous records...you can put > the following code in the "ON OPEN" event: > DoCmd.GoToRecord , , acNewRec > > Hope it helps, > > Mark A. Matte > > > > >From: jimjih at comcast.net > >Reply-To: Access Developers discussion and problem > >solving > >To: Access Developers discussion and problem > >solving > >Subject: [AccessD] On Form Opening > >Date: Wed, 01 Mar 2006 18:00:00 +0000 > > > >Hi all, > >I am quite new at working with Access, having learned what little I know > >from a very good book, and only because an accounting client needed > >something that QuickBooks couldn't do. > > > >My question is this: I have several forms used to input data such as > >Employees, Sub-Contractors, Customers, Delivery Tickets, etc. When the > >form is opened all fields are populated by data from the first item in that > >particular table. Is it possible to have all fields blank upon opening. > >Have not been able to find an answer in the books. I figured a workaround, > >but it involves a lot of work. > > > >Also looked at the forms in the Northwind sample program, and their forms > >do the same thing. > >Is it possible? > > > >Thanks, > > > >Jim Holbrook > >-- > >AccessD mailing list > >AccessD at databaseadvisors.com > >http://databaseadvisors.com/mailman/listinfo/accessd > >Website: http://www.databaseadvisors.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From DWUTKA at marlow.com Wed Mar 1 14:24:59 2006 From: DWUTKA at marlow.com (DWUTKA at marlow.com) Date: Wed, 1 Mar 2006 14:24:59 -0600 Subject: [AccessD] Assistance Message-ID: <17724746D360394AA3BFE5B8D40A9C1BD821@main2.marlow.com> I was going to offer my 'assistance' to JC, but I figured my 'unbound tendencies' might ruffle his feathers. ;) Drew -----Original Message----- From: Charlotte Foust [mailto:cfoust at infostatsystems.com] Sent: Wednesday, March 01, 2006 10:14 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Assistance Troublemaker! ;o> Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Tuesday, February 28, 2006 6:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Assistance Bound or unbound forms? Rocky John Colby wrote: > Folks, > > I am looking for a "junior level" person to assist me in getting some > of my back log caught up. I need one person, able to: > > Read and program VBA, guru not required. > Understands and can build Access tables, queries, forms and reports. > Must understand data normalization and be able to correctly sort out > what data goes where given a set of objects / attributes. Must be able > to read, understand and build relationship diagrams in the > relationship window in Access (the center of my universe). Has a few > hours a day available (10-20 hours a week). Must be self starter, > blah, blah, blah. > > If anyone out there thinks they might fit the bill, please respond > OFFLINE - email a resume, and introduction email with required hourly > wage to jwcolby at colbyconsulting.com. The more you know and are > capable of the more work I have. > > Thanks, > > John W. Colby > www.ColbyConsulting.com > > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From DWUTKA at marlow.com Wed Mar 1 14:26:15 2006 From: DWUTKA at marlow.com (DWUTKA at marlow.com) Date: Wed, 1 Mar 2006 14:26:15 -0600 Subject: [AccessD] On Form Opening Message-ID: <17724746D360394AA3BFE5B8D40A9C1BD822@main2.marlow.com> Set the DataEntry property to True. Then the forms will be blank, and only allow for adding data. Drew -----Original Message----- From: jimjih at comcast.net [mailto:jimjih at comcast.net] Sent: Wednesday, March 01, 2006 12:00 PM To: Access Developers discussion and problem solving Subject: [AccessD] On Form Opening Hi all, I am quite new at working with Access, having learned what little I know from a very good book, and only because an accounting client needed something that QuickBooks couldn't do. My question is this: I have several forms used to input data such as Employees, Sub-Contractors, Customers, Delivery Tickets, etc. When the form is opened all fields are populated by data from the first item in that particular table. Is it possible to have all fields blank upon opening. Have not been able to find an answer in the books. I figured a workaround, but it involves a lot of work. Also looked at the forms in the Northwind sample program, and their forms do the same thing. Is it possible? Thanks, Jim Holbrook -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From darrend at nimble.com.au Wed Mar 1 17:52:00 2006 From: darrend at nimble.com.au (Darren HALL) Date: Thu, 2 Mar 2006 10:52:00 +1100 Subject: [AccessD] A2003:Percentages Message-ID: <20060301235209.XIHL14751.omta05ps.mx.bigpond.com@DENZILLAP> Hi All Cross posted to dba_SQL list Got a percentage format Q Is ist possible to do the calcs and display the end result as a percentage actually in the column rather than do the converts and formats on the form or report? EG select ac.Description, sum(s.TotalCost), '% - ????' from InvoiceChargeSummary s join AccountCostCentre ac on s.AccountNo = ac.AccountNo where s.InvoiceNo = @InvoiceNo returning: AUBURN 50.00 20% MELBOURNE 100.00 40% WA 100.00 40% Many thanks DD From martyconnelly at shaw.ca Wed Mar 1 18:03:36 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Wed, 01 Mar 2006 16:03:36 -0800 Subject: [AccessD] Assistance References: <000b01c63d5d$42d5f990$c6b3d6d1@SUSANONE> Message-ID: <44063658.1070806@shaw.ca> Just remember if you prefix or suffix a field name with key, code, ID or num, it will automagically index that field and even duplicate the index if declared as a primary key. To turn off Tools --> Options --> Tables & Queries --AutoImport on Create/Create delete names Susan Harkins wrote: >ID is just the suffix, as in: CustomerID, EmployeeID, OrderID, and so on. > >Susan H. > >I usually don't argue in this list but now I have to. Do you really want >one field in every table called ID? Typing is easy! Trying to hunt down >which of 50 fields all named ID is causing the problem sounds like a good >all-day exercise. > > > > -- Marty Connelly Victoria, B.C. Canada From dajomigo at tpg.com.au Wed Mar 1 18:14:46 2006 From: dajomigo at tpg.com.au (David & Joanne Gould) Date: Thu, 02 Mar 2006 11:14:46 +1100 Subject: [AccessD] Help with combo box In-Reply-To: <003f01c63d33$99dcab00$fa10a8c0@Albatross> References: <6.2.1.2.2.20060228155505.01e9c198@mail.tpg.com.au> <4403E982.5080005@san.rr.com> <6.2.1.2.2.20060228172601.01eefe80@mail.tpg.com.au> <44050488.1020808@san.rr.com> <6.2.1.2.2.20060301132926.01e79298@mail.tpg.com.au> <440520B4.7020907@san.rr.com> <003f01c63d33$99dcab00$fa10a8c0@Albatross> Message-ID: <6.2.1.2.2.20060302111109.01edfb20@mail.tpg.com.au> Borge Thank you for your suggestion. I have made the changes you suggested. The only thing I will have to check with my client is whether the use of a scanner to input the movie will cause a problem with this setup. Other than that it seems to work great. I have set the recordsource for the text box as the combo box. Thanks to everyone else who made suggestions. You have opened my eyes to more ways of looking for solutions. David At 12:25 AM 2/03/2006, you wrote: >Haven't been following this thread, so I am just jumping in... >I would do something like: > >Create cboRental and adjust the width so only the down arrow displays >Create txtRental; make it enabled and locked and place it to the left of >cboRental so it looks like one control. >On afterupdate of cboRental push the field that normally would display in the >combo into txtRental. >Do your double clicking code on txtRental; single clicking on the cboRental... > >would that do? > >regards >borge > > >----- Original Message ----- >From: "Rocky Smolin - Beach Access Software" >To: "Access Developers discussion and problem solving" > >Sent: Wednesday, March 01, 2006 2:19 PM >Subject: Re: [AccessD] Help with combo box > > > > David: > > > > AFAIK, no, the down arrow is not a separately programmable part of the > > control. But AFAIK may not go all that far. > > > > Rocky > > > > > > David & Joanne Gould wrote: > > > Rocky > > > > > > The Double-click event is set to open another form to change the Rental > > > Type for this movie title. What I was wondering was if there was a way to > > > access the drop-down arrow on the combo box as a separate thing. This > might > > > separate the main part of the control where all the other code is > > > connected. Can it be done? > > > > > > TIA > > > > > > David > > > > > > At 01:18 PM 1/03/2006, you wrote: > > > > > >> Sorry about the late response. I was out all day. Can you use the > > >> click event? What additional function are you trying to implement? > > >> > > >> Rocky > > >> > > >> > > >> David & Joanne Gould wrote: > > >> > > >>> Thanks for your prompt response Rocky. > > >>> > > >>> At 05:11 PM 28/02/2006, you wrote: > > >>> > > >>> > > >>>> What event is the current code attached to? > > >>>> The database form is the Hiring form for a video library. There is > > >>>> currently code attached to the "Before update" event, the "After > Update" > > >>>> event and the "On Double-click" event. The Double-click event > allows the > > >>>> user to add oir change the hiring code (overnight, weekly, etc). > > >>>> > > >>>> > > >>> > > >>>> Can you use the 'Got Focus' event to run your new code? > > >>>> > > >>>> > > >>> The other issue I forgot to mention is it's on a continuous form. I > have > > >>> tried to make the combo box inactive if there is anything entered > in it, > > >>> but that just makes it inactive for all the records in the > transaction (so > > >>> I would only be able to enter one movie per sale). > > >>> > > >>> > > >>> > > >>> > > >>>> Rocky > > >>>> > > >>>> > > >>>> David & Joanne Gould wrote: > > >>>> > > >>>> > > >>>>> I have a combo box on a form that has quite a lot of code attached to >it. > > >>>>> > > >>>>> Is there a way to run code when the user clicks on the drop-down > arrow > > >>>>> > > >>>>> > > >>>> that > > >>>> > > >>>> > > >>>>> won't interfere with other code that runs when the user > double-clicks on > > >>>>> the combo box? > > >>>>> > > >>>>> TIA > > >>>>> > > >>>>> David > > >>>>> > > >>>>> > > >>>>> > > >>>>> > > >>>>> > > >>>> -- > > >>>> Rocky Smolin > > >>>> Beach Access Software > > >>>> 858-259-4334 > > >>>> www.e-z-mrp.com > > >>>> > > >>>> -- > > >>>> AccessD mailing list > > >>>> AccessD at databaseadvisors.com > > >>>> http://databaseadvisors.com/mailman/listinfo/accessd > > >>>> Website: http://www.databaseadvisors.com > > >>>> > > >>>> > > >>> > > >>> > > >> -- > > >> Rocky Smolin > > >> Beach Access Software > > >> 858-259-4334 > > >> www.e-z-mrp.com > > >> > > >> -- > > >> AccessD mailing list > > >> AccessD at databaseadvisors.com > > >> http://databaseadvisors.com/mailman/listinfo/accessd > > >> Website: http://www.databaseadvisors.com > > >> > > > > > > > > > > > > > -- > > Rocky Smolin > > Beach Access Software > > 858-259-4334 > > www.e-z-mrp.com > > > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From wdhindman at bellsouth.net Wed Mar 1 19:49:59 2006 From: wdhindman at bellsouth.net (William Hindman) Date: Wed, 1 Mar 2006 20:49:59 -0500 Subject: [AccessD] Converting to 2003 References: <08F823FD83787D4BA0B99CA580AD3C7402DE6CB6@TTNEXCHCL2.hshhp.com> Message-ID: <005b01c63d9b$9d522770$6101a8c0@50NM721> ...my mdbs no longer bloat the way they did in AXP ...but I can find no mention of a fix in any SP "problems resolved" list ...they just no longer do the bad thing as badly as they once did ...hth :))) William ----- Original Message ----- From: "Jim DeMarco" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 01, 2006 9:20 AM Subject: Re: [AccessD] Converting to 2003 > While I can certainly understand the how mere mention of Gustav's name > might instill respect in an application I'm not quite sure I have an > answer to my question. > > Was the bloating issue fixed or will I have to insert Gustav into my > conversion process? ;-) > > Thanks, > > Jim D. > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of William > Hindman > Sent: Tuesday, February 28, 2006 9:14 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Converting to 2003 > > ...your blessing or MS actually fixing an Access bug ...both are > miracles in my book :) > > William > > ----- Original Message ----- > From: "Gustav Brock" > To: > Sent: Tuesday, February 28, 2006 4:33 AM > Subject: Re: [AccessD] Converting to 2003 > > >> Hi William >> >> "don't particularly care" ... well, that hurts - after all my efforts! >> >> Actually, we have two clients - both female, wonder why - who claim > that >> more than once they have seen issues vanish just by calling me. I > didn't >> do anything - no advice or problem solving - other than devoting my >> attention. And my middle name isn't Jesus. Maybe your mdbs have been > on my >> mind too! >> >> /gustav >> >>>>> wdhindman at bellsouth.net 28-02-2006 00:39 >>> >> ...either its been fixed or Gustav blessed all my mdbs ...I don't >> particularly care which :) >> >> William >> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > > *********************************************************************************** > "This electronic message is intended to be for the use only of the named > recipient, and may contain information from Hudson Health Plan (HHP) that > is confidential or privileged. If you are not the intended recipient, you > are hereby notified that any disclosure, copying, distribution or use of > the contents of this message is strictly prohibited. If you have received > this message in error or are not the named recipient, please notify us > immediately, either by contacting the sender at the electronic mail > address noted above or calling HHP at (914) 631-1611. If you are not the > intended recipient, please do not forward this email to anyone, and delete > and destroy all copies of this message. Thank You". > *********************************************************************************** > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From darrend at nimble.com.au Wed Mar 1 22:19:18 2006 From: darrend at nimble.com.au (Darren DICK) Date: Thu, 2 Mar 2006 15:19:18 +1100 Subject: [AccessD] A2000: XML Q Message-ID: <20060302041927.JSZR14751.omta05ps.mx.bigpond.com@DENZILLAP> Hello all Cross Posted to dba_SQL List What is the minimum header information i need to include before 'my data' starts to get a 'Well formed' xml doc? Eg the stuff that looks like Folks, There has been a bit of discussion in the past few days re naming conventions as applied to tables. I have used conventions for many years and I sat down tonight and started documenting the conventions I use. I have shared my conventions in the past and will do so again here. I do these things because they work for me, in my environment. I have built a framework, which I use in any project where it is allowed. Having conventions allows me to make assumptions about how things will be handled, and write code that used those assumptions to make decisions. Even if you do not use a framework, having objects defined in a consistent manner can just generally make life easier. Feel free to discuss the methods and assumptions that I make, add how you do things (and WHY) etc. Don't bother calling the things I do stupid, if they don't work for you, don't use them. Share what does work for you, and WHY you do what you do. If you do something exactly opposite of the way I do it, explain why you prefer to do it that way. I find rules useless. I find reasons very useful. Table Definition Specification Tables are defined in a consistent manner so that they can be recognized and worked with easily. All of the definitions that I use have been assimilated from other people's ideas or developed over time, and all such conventions exist to solve a problem, whether that be readability, distinguishing functionality or allowing the framework to make assumptions. Table definitions consist of several parts. 1. Tables always use an autonumber PK, whether it appears to need one or not. This is done for a variety of reasons, ranging from divorcing the "table link" (PK/FK)from the unique index and making it trivial to change that unique index without changing the "table link", to the consistency of PK data type which allows specific assumptions in the framework. The PK is always a long integer, and a single field, which easily allows searches and other programmatic manipulations that wouldn't be possible or would be tedious if the PK was a multi-field set. 2. Table naming conventions. Tables are prefixed with 'tbl' so that as table names are encountered in forms, reports and queries they can be distinguished from other objects such as queries. Thus tblPerson, tblCompany, tblVehicle. 3. I have used other table prefixes to cause tables to group by type and be visually distinguishable from each other. Tbl for main tables, tlkp for lookup tables, tmm for many to many tables, ttmp for temporary tables etc. There is a lot of discussion about whether grouping by type is preferable to grouping by functionality, i.e. all accounting tables group together, all shipping tables group together etc. That is very much a 'preference' kind of thing. I have done both, even within the same db. It is possible to throw a "type" suffix on the end of the tables separated by an underscore if you care to group by function but be able to distinguish table type. tblPeopleVehicle_MM for a many to many, tblState_LKP for a lookup. 4. Field naming conventions. Field naming conventions have several parts. In general field and table names should only change in the most dire circumstances. If any object name changes, I have to do a search and replace to find and fix them. If there are a bunch of Fes working against a single BE, it becomes a nightmare. a. Data type prefixes are never used in field names because of issues with data type changes. There are just too many data types, and they are often changed well into a project, for very valid reasons. b. A prefix to the field name is created using the first two characters the table name where the table name is a single word - PEople, VEhicle, COmpany. In cases where the table name is multiple words, the first character of each word is used. InvoiceLineItem ILI, PeopleVehicle PV, CompanyProperty CP. An underscore is used to distinguish the field name prefix from the rest of the field name. PE_ID, PE_FName, PE_SSN. Use of the first two characters if each word is acceptable to avoid collisions and make the field prefix more readable. PEopleVEhicle PEVE_ID. Obviously as a project gets large a table is required to track field name prefixes already used, but for small to medium sized projects this allows the developer to rapidly recognize which table a field comes from just from the field name. If this naming convention is rigorously followed then every field in the db has a unique name, which allows "search and replace" type of operations to be performed without manual intervention. c. IDs (PK/FKs) are distinguished by the capitalized characters 'ID' in the field name. d. PKs use the convention of Prefix characters, followed by an underscore followed by ID. PE_ID, VE_ID, CO_ID. e. FKs use the convention of Prefix characters, followed by an underscore, followed by ID followed by the prefix characters of the foreign table. PV_IDPE, PV_IDVE. CP_IDCO. By placing ID immediately following the underscore, PKs and FKs can be immediately distinguished from other types of fields. f. PKs and FKs are grouped at the top of the field list in design view. This is done so that the PK and all FKs can be seen at a glance without having to search through the fields looking for PKs/FKs. Thus field names look like: tblVehicle: VE_ID VE_Color VE_Make tblPeople PE_ID PE_LName PE_FName PE_SSN tblPeopleVehicle PV_ID PV_IDPE PV_IDVE PV_DateAssigned As you can see, by using the _ character it is easy to distinguish the prefix from the rest of the name. By using the ID immediately after the underscore it is easy to find every PK/FK field. By grouping all the PKs/FKs at the top of the table, no searching is required to find the PKs/FKs. By using the _IDXXXX construct, it is easy to visually look at the FK and just "see" what table that is the PK in. As I said above, to me reasons are the important thing. They define why I do what I do and allow me to evaluate whether making a change to what I do is useful to me. Rules without the associated reason are useless since I cannot evaluate how it applies to what I am trying to do. Rules are made to be broken, but I want to know the danger of doing so. John W. Colby www.ColbyConsulting.com From jwcolby at ColbyConsulting.com Thu Mar 2 05:51:18 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 2 Mar 2006 06:51:18 -0500 Subject: [AccessD] Embedded Documentation Message-ID: <00c501c63def$9f381a50$647aa8c0@ColbyM6805> One of the issues that I have with overview documentation is that it is not internal to the object being documented. I document my modules, my functions, even lines of functions, but "overview" documents and theory, WHY and HOW the big picture is implemented and works just doesn't fall neatly into a module. Furthermore if you were to document that in a module you have to use comments which is a PITA. So, for example, I would like to embed a text document into a field in a table, then be able to quickly and easily edit that document using an external word processor, but have the external word processor actually update the data live in the table. Is this possible? While thinking about that I also thought about the issue of having to put "remark" characters in documentation in modules. For example if you want to place an overview of a module in the module header, you have to place ' characters in front of every line to turn it into a comment. This works but you have to place that ' at the beginning of each line, and if you want to rearrange the text you are inserting / deleting these ' characters as you move stuff around. It occurred to me that perhaps you could "bracket" the documentation with a conditional compile #if then to cause the bracketed info to be ignored by the compiler. This does appear to work, for example: #If Something Then This is a test of my ability to add documentation without the remark character #End If Compiles without error because "Something" was never set true. Unfortunately it DOES cause the JIT interpreter to evaluate the text every time you hit the carriage return and tells you that you have a compile error. Perhaps as (or more) intrusive as the ' characters. Sigh. John W. Colby www.ColbyConsulting.com From shamil at users.mns.ru Thu Mar 2 07:11:23 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Thu, 2 Mar 2006 16:11:23 +0300 Subject: [AccessD] Table naming conventions References: <00c401c63dea$2c4b1ec0$647aa8c0@ColbyM6805> Message-ID: <004501c63dfa$d3f1b7f0$6401a8c0@Nant> John, AFAIS your naming conventions are based on LRNC (see e.g. Stan Leszinsky "MS Access 97 Expert Solutions"). One exception are field names - the recommended in LRNC way is to not use underscore and to use 3-4 chars standard abbreviations to prefix field names: - Company - comp - Person - pers - Employee - empl or emp ... I do use LRNC for the last 10 years. It worked very well in many situations. Best regards, Shamil -- Web: http://smsconsulting.spb.ru/shamil_s ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Thursday, March 02, 2006 2:12 PM Subject: [AccessD] Table naming conventions > Folks, > > There has been a bit of discussion in the past few days re naming > conventions as applied to tables. I have used conventions for many years > and I sat down tonight and started documenting the conventions I use. I > have shared my conventions in the past and will do so again here. I do > these things because they work for me, in my environment. > > I have built a framework, which I use in any project where it is allowed. > Having conventions allows me to make assumptions about how things will be > handled, and write code that used those assumptions to make decisions. > Even > if you do not use a framework, having objects defined in a consistent > manner > can just generally make life easier. > > Feel free to discuss the methods and assumptions that I make, add how you > do > things (and WHY) etc. Don't bother calling the things I do stupid, if > they > don't work for you, don't use them. Share what does work for you, and WHY > you do what you do. If you do something exactly opposite of the way I do > it, explain why you prefer to do it that way. I find rules useless. I > find > reasons very useful. > > Table Definition Specification > Tables are defined in a consistent manner so that they can be recognized > and > worked with easily. All of the definitions that I use have been > assimilated > from other people's ideas or developed over time, and all such conventions > exist to solve a problem, whether that be readability, distinguishing > functionality or allowing the framework to make assumptions. > > Table definitions consist of several parts. > 1. Tables always use an autonumber PK, whether it appears to need one > or not. This is done for a variety of reasons, ranging from divorcing the > "table link" (PK/FK)from the unique index and making it trivial to change > that unique index without changing the "table link", to the consistency of > PK data type which allows specific assumptions in the framework. The PK > is > always a long integer, and a single field, which easily allows searches > and > other programmatic manipulations that wouldn't be possible or would be > tedious if the PK was a multi-field set. > 2. Table naming conventions. Tables are prefixed with 'tbl' so that as > table names are encountered in forms, reports and queries they can be > distinguished from other objects such as queries. Thus tblPerson, > tblCompany, tblVehicle. > 3. I have used other table prefixes to cause tables to group by type > and be visually distinguishable from each other. Tbl for main tables, > tlkp > for lookup tables, tmm for many to many tables, ttmp for temporary tables > etc. There is a lot of discussion about whether grouping by type is > preferable to grouping by functionality, i.e. all accounting tables group > together, all shipping tables group together etc. That is very much a > 'preference' kind of thing. I have done both, even within the same db. > It > is possible to throw a "type" suffix on the end of the tables separated by > an underscore if you care to group by function but be able to distinguish > table type. tblPeopleVehicle_MM for a many to many, tblState_LKP for a > lookup. > 4. Field naming conventions. Field naming conventions have several > parts. In general field and table names should only change in the most > dire > circumstances. If any object name changes, I have to do a search and > replace to find and fix them. If there are a bunch of Fes working against > a > single BE, it becomes a nightmare. > a. Data type prefixes are never used in field names because of issues > with data type changes. There are just too many data types, and they are > often changed well into a project, for very valid reasons. > b. A prefix to the field name is created using the first two characters > the table name where the table name is a single word - PEople, VEhicle, > COmpany. In cases where the table name is multiple words, the first > character of each word is used. InvoiceLineItem ILI, PeopleVehicle PV, > CompanyProperty CP. An underscore is used to distinguish the field name > prefix from the rest of the field name. PE_ID, PE_FName, PE_SSN. Use of > the first two characters if each word is acceptable to avoid collisions > and > make the field prefix more readable. PEopleVEhicle PEVE_ID. > > Obviously as a project gets large a table is required to track field name > prefixes already used, but for small to medium sized projects this allows > the developer to rapidly recognize which table a field comes from just > from > the field name. If this naming convention is rigorously followed then > every > field in the db has a unique name, which allows "search and replace" type > of > operations to be performed without manual intervention. > c. IDs (PK/FKs) are distinguished by the capitalized characters 'ID' > in the field name. > d. PKs use the convention of Prefix characters, followed by an > underscore followed by ID. PE_ID, VE_ID, CO_ID. > e. FKs use the convention of Prefix characters, followed by an > underscore, followed by ID followed by the prefix characters of the > foreign > table. PV_IDPE, PV_IDVE. CP_IDCO. By placing ID immediately following > the > underscore, PKs and FKs can be immediately distinguished from other types > of > fields. > f. PKs and FKs are grouped at the top of the field list in design view. > This is done so that the PK and all FKs can be seen at a glance without > having to search through the fields looking for PKs/FKs. > > > Thus field names look like: > tblVehicle: > VE_ID > VE_Color > VE_Make > > tblPeople > PE_ID > PE_LName > PE_FName > PE_SSN > > tblPeopleVehicle > PV_ID > PV_IDPE > PV_IDVE > PV_DateAssigned > > As you can see, by using the _ character it is easy to distinguish the > prefix from the rest of the name. By using the ID immediately after the > underscore it is easy to find every PK/FK field. By grouping all the > PKs/FKs at the top of the table, no searching is required to find the > PKs/FKs. By using the _IDXXXX construct, it is easy to visually look at > the > FK and just "see" what table that is the PK in. > > As I said above, to me reasons are the important thing. They define why I > do what I do and allow me to evaluate whether making a change to what I do > is useful to me. Rules without the associated reason are useless since I > cannot evaluate how it applies to what I am trying to do. > > Rules are made to be broken, but I want to know the danger of doing so. > > John W. Colby > www.ColbyConsulting.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From harkinsss at bellsouth.net Thu Mar 2 07:41:18 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Thu, 2 Mar 2006 08:41:18 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: <004501c63dfa$d3f1b7f0$6401a8c0@Nant> Message-ID: <000601c63dff$0a97c070$9ab3d6d1@SUSANONE> AFAIS your naming conventions are based on LRNC (see e.g. Stan Leszinsky "MS Access 97 Expert Solutions"). One exception are field names - the recommended in LRNC way is to not use underscore and to use 3-4 chars standard abbreviations to prefix field names: - Company - comp - Person - pers - Employee - empl or emp ... ========I find abbreviated names a real pia. :) Susan H. From Gustav at cactus.dk Thu Mar 2 07:57:38 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Thu, 02 Mar 2006 14:57:38 +0100 Subject: [AccessD] Quartile Message-ID: Hi all Not much response on this except, as always, from Marty. Did I find a niche? /gustav >>> Gustav at cactus.dk 28-02-2006 14:41:07 >>> Anyone having a need to calculate quartiles? From reuben at gfconsultants.com Thu Mar 2 08:09:55 2006 From: reuben at gfconsultants.com (Reuben Cummings) Date: Thu, 2 Mar 2006 09:09:55 -0500 Subject: [AccessD] A2003:Percentages In-Reply-To: <20060301235209.XIHL14751.omta05ps.mx.bigpond.com@DENZILLAP> Message-ID: I don't totally understand your problem, but I beleive if you use the "Percentage" format on a text box and the data is .2, for example, the report will show 20%. Reuben Cummings GFC, LLC 812.523.1017 > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Darren HALL > Sent: Wednesday, March 01, 2006 6:52 PM > To: AccessD > Subject: [AccessD] A2003:Percentages > > > Hi All > Cross posted to dba_SQL list > Got a percentage format Q > Is ist possible to do the calcs and display the end result as a percentage > actually in the column > rather than do the converts and formats on the form or report? > > EG > select ac.Description, sum(s.TotalCost), '% - ????' > > from InvoiceChargeSummary s > > join AccountCostCentre ac on > > s.AccountNo = ac.AccountNo > > where s.InvoiceNo = @InvoiceNo > > returning: > > AUBURN 50.00 20% > > MELBOURNE 100.00 40% > > WA 100.00 40% > > Many thanks > > DD > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From Lambert.Heenan at AIG.com Thu Mar 2 08:16:10 2006 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Thu, 2 Mar 2006 09:16:10 -0500 Subject: [AccessD] Table naming conventions Message-ID: <1D7828CDB8350747AFE9D69E0E90DA1F1DDB21D3@xlivmbx21.aig.com> Not read all this, but one point I want to make is "why are people obsessed with PREFIXES?" I use the "_tbl" SUFFIX in my table names. Why? So that when I sort the list of tables I can use the initial letter of the table name to quickly jump to it using the keyboard. If they all begin with "tbl" you cannot do that. Simple. :-) Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 6:12 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Table naming conventions Folks, There has been a bit of discussion in the past few days re naming conventions as applied to tables. I have used conventions for many years and I sat down tonight and started documenting the conventions I use. I have shared my conventions in the past and will do so again here. I do these things because they work for me, in my environment. I have built a framework, which I use in any project where it is allowed. Having conventions allows me to make assumptions about how things will be handled, and write code that used those assumptions to make decisions. Even if you do not use a framework, having objects defined in a consistent manner can just generally make life easier. Feel free to discuss the methods and assumptions that I make, add how you do things (and WHY) etc. Don't bother calling the things I do stupid, if they don't work for you, don't use them. Share what does work for you, and WHY you do what you do. If you do something exactly opposite of the way I do it, explain why you prefer to do it that way. I find rules useless. I find reasons very useful. Table Definition Specification Tables are defined in a consistent manner so that they can be recognized and worked with easily. All of the definitions that I use have been assimilated from other people's ideas or developed over time, and all such conventions exist to solve a problem, whether that be readability, distinguishing functionality or allowing the framework to make assumptions. Table definitions consist of several parts. 1. Tables always use an autonumber PK, whether it appears to need one or not. This is done for a variety of reasons, ranging from divorcing the "table link" (PK/FK)from the unique index and making it trivial to change that unique index without changing the "table link", to the consistency of PK data type which allows specific assumptions in the framework. The PK is always a long integer, and a single field, which easily allows searches and other programmatic manipulations that wouldn't be possible or would be tedious if the PK was a multi-field set. 2. Table naming conventions. Tables are prefixed with 'tbl' so that as table names are encountered in forms, reports and queries they can be distinguished from other objects such as queries. Thus tblPerson, tblCompany, tblVehicle. 3. I have used other table prefixes to cause tables to group by type and be visually distinguishable from each other. Tbl for main tables, tlkp for lookup tables, tmm for many to many tables, ttmp for temporary tables etc. There is a lot of discussion about whether grouping by type is preferable to grouping by functionality, i.e. all accounting tables group together, all shipping tables group together etc. That is very much a 'preference' kind of thing. I have done both, even within the same db. It is possible to throw a "type" suffix on the end of the tables separated by an underscore if you care to group by function but be able to distinguish table type. tblPeopleVehicle_MM for a many to many, tblState_LKP for a lookup. 4. Field naming conventions. Field naming conventions have several parts. In general field and table names should only change in the most dire circumstances. If any object name changes, I have to do a search and replace to find and fix them. If there are a bunch of Fes working against a single BE, it becomes a nightmare. a. Data type prefixes are never used in field names because of issues with data type changes. There are just too many data types, and they are often changed well into a project, for very valid reasons. b. A prefix to the field name is created using the first two characters the table name where the table name is a single word - PEople, VEhicle, COmpany. In cases where the table name is multiple words, the first character of each word is used. InvoiceLineItem ILI, PeopleVehicle PV, CompanyProperty CP. An underscore is used to distinguish the field name prefix from the rest of the field name. PE_ID, PE_FName, PE_SSN. Use of the first two characters if each word is acceptable to avoid collisions and make the field prefix more readable. PEopleVEhicle PEVE_ID. Obviously as a project gets large a table is required to track field name prefixes already used, but for small to medium sized projects this allows the developer to rapidly recognize which table a field comes from just from the field name. If this naming convention is rigorously followed then every field in the db has a unique name, which allows "search and replace" type of operations to be performed without manual intervention. c. IDs (PK/FKs) are distinguished by the capitalized characters 'ID' in the field name. d. PKs use the convention of Prefix characters, followed by an underscore followed by ID. PE_ID, VE_ID, CO_ID. e. FKs use the convention of Prefix characters, followed by an underscore, followed by ID followed by the prefix characters of the foreign table. PV_IDPE, PV_IDVE. CP_IDCO. By placing ID immediately following the underscore, PKs and FKs can be immediately distinguished from other types of fields. f. PKs and FKs are grouped at the top of the field list in design view. This is done so that the PK and all FKs can be seen at a glance without having to search through the fields looking for PKs/FKs. Thus field names look like: tblVehicle: VE_ID VE_Color VE_Make tblPeople PE_ID PE_LName PE_FName PE_SSN tblPeopleVehicle PV_ID PV_IDPE PV_IDVE PV_DateAssigned As you can see, by using the _ character it is easy to distinguish the prefix from the rest of the name. By using the ID immediately after the underscore it is easy to find every PK/FK field. By grouping all the PKs/FKs at the top of the table, no searching is required to find the PKs/FKs. By using the _IDXXXX construct, it is easy to visually look at the FK and just "see" what table that is the PK in. As I said above, to me reasons are the important thing. They define why I do what I do and allow me to evaluate whether making a change to what I do is useful to me. Rules without the associated reason are useless since I cannot evaluate how it applies to what I am trying to do. Rules are made to be broken, but I want to know the danger of doing so. John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From darrend at nimble.com.au Thu Mar 2 08:35:11 2006 From: darrend at nimble.com.au (Darren DICK) Date: Fri, 3 Mar 2006 01:35:11 +1100 Subject: [AccessD] A2003:Percentages In-Reply-To: Message-ID: <20060302143514.CCZX1358.omta03sl.mx.bigpond.com@DENZILLAP> Ok - Slightly different from my original Q Assume I pay $75.33 for an item I sell it for $292.35 What do I do to calc my margin as a percentage? (292.35/75.33) *100 ? Or something like it? Darren ------------------------------ T: 0424 696 433 From accessd666 at yahoo.com Thu Mar 2 08:37:01 2006 From: accessd666 at yahoo.com (Sad Der) Date: Thu, 2 Mar 2006 06:37:01 -0800 (PST) Subject: [AccessD] Display New/Updated items? (Kinda OT) Message-ID: <20060302143701.52926.qmail@web31614.mail.mud.yahoo.com> Hi group, I've got an A2K app with a SQL Server 2000 b.e. In this application we store information about all application that we use (kind of knowledge base) I want to create a form that displays new, or updated items. However, we didn't implement the following 4 columns: InsertedOn insertedBy LastUpdatedon UpdatedBy So we also didn't implement logic to fill these columns (duh). I came up with the idea to create a logging table with where we can store info about new items or updated items. I want to fill this table using triggers. For every (importand) table I want to create 2 or 3 triggers (insert, update and perhaps delete). In these triggers I would create logic that adds a record in the logging table. Does this make sence? Is this a good approach? TIA Sander __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com From harkinsss at bellsouth.net Thu Mar 2 09:08:26 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Thu, 2 Mar 2006 10:08:26 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: <1D7828CDB8350747AFE9D69E0E90DA1F1DDB21D3@xlivmbx21.aig.com> Message-ID: <001701c63e0b$2f8fbf70$9ab3d6d1@SUSANONE> I don't think using prefixes with the actual objects is terribly important -- I think a lot of people lend toward natural names for objects and use the prefixes for variables. Susan H. Not read all this, but one point I want to make is "why are people obsessed with PREFIXES?" I use the "_tbl" SUFFIX in my table names. Why? So that when I sort the list of tables I can use the initial letter of the table name to quickly jump to it using the keyboard. If they all begin with "tbl" you cannot do that. Simple. :-) From reuben at gfconsultants.com Thu Mar 2 09:19:06 2006 From: reuben at gfconsultants.com (Reuben Cummings) Date: Thu, 2 Mar 2006 10:19:06 -0500 Subject: [AccessD] A2003:Percentages In-Reply-To: <20060302143514.CCZX1358.omta03sl.mx.bigpond.com@DENZILLAP> Message-ID: (292.35-75.33)/75.33 * 100 That's a 288% profit!!! Reuben Cummings GFC, LLC 812.523.1017 > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Darren DICK > Sent: Thursday, March 02, 2006 9:35 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] A2003:Percentages > > > Ok - Slightly different from my original Q > > Assume I pay $75.33 for an item > I sell it for $292.35 > > What do I do to calc my margin as a percentage? > > (292.35/75.33) *100 ? Or something like it? > > Darren > ------------------------------ > T: 0424 696 433 > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From darrend at nimble.com.au Thu Mar 2 09:33:13 2006 From: darrend at nimble.com.au (Darren DICK) Date: Fri, 3 Mar 2006 02:33:13 +1100 Subject: [AccessD] A2003:Percentages In-Reply-To: Message-ID: <20060302153314.YYVJ10380.omta04sl.mx.bigpond.com@DENZILLAP> It's a good business to be in - though it's not mine Thanks Reuben - I appreciate the calc See ya Darren ------------------------------ T: 0424 696 433 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Reuben Cummings Sent: Friday, 3 March 2006 2:19 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] A2003:Percentages (292.35-75.33)/75.33 * 100 That's a 288% profit!!! Reuben Cummings GFC, LLC 812.523.1017 > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Darren DICK > Sent: Thursday, March 02, 2006 9:35 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] A2003:Percentages > > > Ok - Slightly different from my original Q > > Assume I pay $75.33 for an item > I sell it for $292.35 > > What do I do to calc my margin as a percentage? > > (292.35/75.33) *100 ? Or something like it? > > Darren > ------------------------------ > T: 0424 696 433 > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Lambert.Heenan at AIG.com Thu Mar 2 09:38:08 2006 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Thu, 2 Mar 2006 09:38:08 -0600 Subject: [AccessD] Table naming conventions Message-ID: <1D7828CDB8350747AFE9D69E0E90DA1F1DDB2286@xlivmbx21.aig.com> All I'm really saying is that the Access user interface allows you to select an object in the database window by typing the initial letter. Type 'D' and the interface will jump to the first object in the list that starts with a D. Type D again to jump to the next one. That's why I use suffixes instead of prefixes. If you have a common prefix for your objects, you lose this handy navigation feature. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Thursday, March 02, 2006 10:08 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions I don't think using prefixes with the actual objects is terribly important -- I think a lot of people lend toward natural names for objects and use the prefixes for variables. Susan H. Not read all this, but one point I want to make is "why are people obsessed with PREFIXES?" I use the "_tbl" SUFFIX in my table names. Why? So that when I sort the list of tables I can use the initial letter of the table name to quickly jump to it using the keyboard. If they all begin with "tbl" you cannot do that. Simple. :-) -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From zora_db at yahoo.com Thu Mar 2 09:53:28 2006 From: zora_db at yahoo.com (Roz Clarke) Date: Thu, 2 Mar 2006 15:53:28 +0000 (GMT) Subject: [AccessD] OT: farewell In-Reply-To: <1D7828CDB8350747AFE9D69E0E90DA1F1DDB2286@xlivmbx21.aig.com> Message-ID: <20060302155328.19996.qmail@web50115.mail.yahoo.com> Hi guys. Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 months. I am no longer working in IT, having given up my job and taken up a Masters in Creative Writing. Whilst I may have the occasional web project to work on, I have no plans to return to development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing all your familiar names in my inbox every day. So I am leaving the list and standing down as a moderator. It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything I know about database development and a lot more besides, but I've had tears and laughter along the way and a fantastic trip to Germany into the bargain. Thank you all for being invaluable 'virtual colleagues', but above all for being friends. Love and hugs Roz PS what's the OT list like these days? ;) ___________________________________________________________ NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ From cfoust at infostatsystems.com Thu Mar 2 09:56:32 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 2 Mar 2006 07:56:32 -0800 Subject: [AccessD] Table naming conventions Message-ID: Try giving a query and a table the same name and see why prefixes can be important! LOL Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Thursday, March 02, 2006 7:08 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions I don't think using prefixes with the actual objects is terribly important -- I think a lot of people lend toward natural names for objects and use the prefixes for variables. Susan H. Not read all this, but one point I want to make is "why are people obsessed with PREFIXES?" I use the "_tbl" SUFFIX in my table names. Why? So that when I sort the list of tables I can use the initial letter of the table name to quickly jump to it using the keyboard. If they all begin with "tbl" you cannot do that. Simple. :-) -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Thu Mar 2 09:57:45 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 2 Mar 2006 07:57:45 -0800 Subject: [AccessD] Table naming conventions Message-ID: You use suffixes for ease of navigation. I prefer prefixes for grouping by types of objects. Different strokes. Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert Sent: Thursday, March 02, 2006 6:16 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions Not read all this, but one point I want to make is "why are people obsessed with PREFIXES?" I use the "_tbl" SUFFIX in my table names. Why? So that when I sort the list of tables I can use the initial letter of the table name to quickly jump to it using the keyboard. If they all begin with "tbl" you cannot do that. Simple. :-) Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 6:12 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Table naming conventions Folks, There has been a bit of discussion in the past few days re naming conventions as applied to tables. I have used conventions for many years and I sat down tonight and started documenting the conventions I use. I have shared my conventions in the past and will do so again here. I do these things because they work for me, in my environment. I have built a framework, which I use in any project where it is allowed. Having conventions allows me to make assumptions about how things will be handled, and write code that used those assumptions to make decisions. Even if you do not use a framework, having objects defined in a consistent manner can just generally make life easier. Feel free to discuss the methods and assumptions that I make, add how you do things (and WHY) etc. Don't bother calling the things I do stupid, if they don't work for you, don't use them. Share what does work for you, and WHY you do what you do. If you do something exactly opposite of the way I do it, explain why you prefer to do it that way. I find rules useless. I find reasons very useful. Table Definition Specification Tables are defined in a consistent manner so that they can be recognized and worked with easily. All of the definitions that I use have been assimilated from other people's ideas or developed over time, and all such conventions exist to solve a problem, whether that be readability, distinguishing functionality or allowing the framework to make assumptions. Table definitions consist of several parts. 1. Tables always use an autonumber PK, whether it appears to need one or not. This is done for a variety of reasons, ranging from divorcing the "table link" (PK/FK)from the unique index and making it trivial to change that unique index without changing the "table link", to the consistency of PK data type which allows specific assumptions in the framework. The PK is always a long integer, and a single field, which easily allows searches and other programmatic manipulations that wouldn't be possible or would be tedious if the PK was a multi-field set. 2. Table naming conventions. Tables are prefixed with 'tbl' so that as table names are encountered in forms, reports and queries they can be distinguished from other objects such as queries. Thus tblPerson, tblCompany, tblVehicle. 3. I have used other table prefixes to cause tables to group by type and be visually distinguishable from each other. Tbl for main tables, tlkp for lookup tables, tmm for many to many tables, ttmp for temporary tables etc. There is a lot of discussion about whether grouping by type is preferable to grouping by functionality, i.e. all accounting tables group together, all shipping tables group together etc. That is very much a 'preference' kind of thing. I have done both, even within the same db. It is possible to throw a "type" suffix on the end of the tables separated by an underscore if you care to group by function but be able to distinguish table type. tblPeopleVehicle_MM for a many to many, tblState_LKP for a lookup. 4. Field naming conventions. Field naming conventions have several parts. In general field and table names should only change in the most dire circumstances. If any object name changes, I have to do a search and replace to find and fix them. If there are a bunch of Fes working against a single BE, it becomes a nightmare. a. Data type prefixes are never used in field names because of issues with data type changes. There are just too many data types, and they are often changed well into a project, for very valid reasons. b. A prefix to the field name is created using the first two characters the table name where the table name is a single word - PEople, VEhicle, COmpany. In cases where the table name is multiple words, the first character of each word is used. InvoiceLineItem ILI, PeopleVehicle PV, CompanyProperty CP. An underscore is used to distinguish the field name prefix from the rest of the field name. PE_ID, PE_FName, PE_SSN. Use of the first two characters if each word is acceptable to avoid collisions and make the field prefix more readable. PEopleVEhicle PEVE_ID. Obviously as a project gets large a table is required to track field name prefixes already used, but for small to medium sized projects this allows the developer to rapidly recognize which table a field comes from just from the field name. If this naming convention is rigorously followed then every field in the db has a unique name, which allows "search and replace" type of operations to be performed without manual intervention. c. IDs (PK/FKs) are distinguished by the capitalized characters 'ID' in the field name. d. PKs use the convention of Prefix characters, followed by an underscore followed by ID. PE_ID, VE_ID, CO_ID. e. FKs use the convention of Prefix characters, followed by an underscore, followed by ID followed by the prefix characters of the foreign table. PV_IDPE, PV_IDVE. CP_IDCO. By placing ID immediately following the underscore, PKs and FKs can be immediately distinguished from other types of fields. f. PKs and FKs are grouped at the top of the field list in design view. This is done so that the PK and all FKs can be seen at a glance without having to search through the fields looking for PKs/FKs. Thus field names look like: tblVehicle: VE_ID VE_Color VE_Make tblPeople PE_ID PE_LName PE_FName PE_SSN tblPeopleVehicle PV_ID PV_IDPE PV_IDVE PV_DateAssigned As you can see, by using the _ character it is easy to distinguish the prefix from the rest of the name. By using the ID immediately after the underscore it is easy to find every PK/FK field. By grouping all the PKs/FKs at the top of the table, no searching is required to find the PKs/FKs. By using the _IDXXXX construct, it is easy to visually look at the FK and just "see" what table that is the PK in. As I said above, to me reasons are the important thing. They define why I do what I do and allow me to evaluate whether making a change to what I do is useful to me. Rules without the associated reason are useless since I cannot evaluate how it applies to what I am trying to do. Rules are made to be broken, but I want to know the danger of doing so. John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From mwp.reid at qub.ac.uk Thu Mar 2 09:59:58 2006 From: mwp.reid at qub.ac.uk (Martin Reid) Date: Thu, 2 Mar 2006 15:59:58 -0000 Subject: [AccessD] OT: farewell Message-ID: Roz May I wish you all the very best in whatever you do and great things with your writing. You have always been a valuable asset to this group and a friend into the bargain. Best Wishes Martin -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Roz Clarke Sent: 02 March 2006 15:53 To: Access Developers discussion and problem solving Subject: [AccessD] OT: farewell Hi guys. Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 months. I am no longer working in IT, having given up my job and taken up a Masters in Creative Writing. Whilst I may have the occasional web project to work on, I have no plans to return to development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing all your familiar names in my inbox every day. So I am leaving the list and standing down as a moderator. It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything I know about database development and a lot more besides, but I've had tears and laughter along the way and a fantastic trip to Germany into the bargain. Thank you all for being invaluable 'virtual colleagues', but above all for being friends. Love and hugs Roz PS what's the OT list like these days? ;) ___________________________________________________________ NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com rs.com From cfoust at infostatsystems.com Thu Mar 2 10:03:21 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 2 Mar 2006 08:03:21 -0800 Subject: [AccessD] Table naming conventions Message-ID: Shamil, I, too, have used Stan's naming convention and have since it was originally introduced as LRNC (R went off and developed his own later ;o>). The underscore annoys me because it is harder to type than just a capital letter, which is, I believe, the reason it was discouraged in LRNC. I really think it boils down to whatever works for the developer, but some kind of naming convention is critical. I've worked with some of John's tables (bet you didn't know that, did you, JC?) and I absolutely HATE his naming convention. I couldn't use it in a million years and I break out in hives just thinking of it, but it works for him. It only becomes an issue in a team development environment, where using the same or at least compatible naming conventions is critical. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Thursday, March 02, 2006 5:11 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions John, AFAIS your naming conventions are based on LRNC (see e.g. Stan Leszinsky "MS Access 97 Expert Solutions"). One exception are field names - the recommended in LRNC way is to not use underscore and to use 3-4 chars standard abbreviations to prefix field names: - Company - comp - Person - pers - Employee - empl or emp ... I do use LRNC for the last 10 years. It worked very well in many situations. Best regards, Shamil -- Web: http://smsconsulting.spb.ru/shamil_s ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Thursday, March 02, 2006 2:12 PM Subject: [AccessD] Table naming conventions > Folks, > > There has been a bit of discussion in the past few days re naming > conventions as applied to tables. I have used conventions for many > years and I sat down tonight and started documenting the conventions I > use. I have shared my conventions in the past and will do so again > here. I do these things because they work for me, in my environment. > > I have built a framework, which I use in any project where it is > allowed. Having conventions allows me to make assumptions about how > things will be handled, and write code that used those assumptions to > make decisions. Even if you do not use a framework, having objects > defined in a consistent manner > can just generally make life easier. > > Feel free to discuss the methods and assumptions that I make, add how > you > do > things (and WHY) etc. Don't bother calling the things I do stupid, if > they > don't work for you, don't use them. Share what does work for you, and WHY > you do what you do. If you do something exactly opposite of the way I do > it, explain why you prefer to do it that way. I find rules useless. I > find > reasons very useful. > > Table Definition Specification > Tables are defined in a consistent manner so that they can be > recognized > and > worked with easily. All of the definitions that I use have been > assimilated > from other people's ideas or developed over time, and all such conventions > exist to solve a problem, whether that be readability, distinguishing > functionality or allowing the framework to make assumptions. > > Table definitions consist of several parts. > 1. Tables always use an autonumber PK, whether it appears to need one > or not. This is done for a variety of reasons, ranging from divorcing > the "table link" (PK/FK)from the unique index and making it trivial to > change that unique index without changing the "table link", to the > consistency of PK data type which allows specific assumptions in the > framework. The PK is always a long integer, and a single field, which > easily allows searches and > other programmatic manipulations that wouldn't be possible or would be > tedious if the PK was a multi-field set. > 2. Table naming conventions. Tables are prefixed with 'tbl' so that as > table names are encountered in forms, reports and queries they can be > distinguished from other objects such as queries. Thus tblPerson, > tblCompany, tblVehicle. > 3. I have used other table prefixes to cause tables to group by type > and be visually distinguishable from each other. Tbl for main tables, > tlkp > for lookup tables, tmm for many to many tables, ttmp for temporary tables > etc. There is a lot of discussion about whether grouping by type is > preferable to grouping by functionality, i.e. all accounting tables group > together, all shipping tables group together etc. That is very much a > 'preference' kind of thing. I have done both, even within the same db. > It > is possible to throw a "type" suffix on the end of the tables separated by > an underscore if you care to group by function but be able to distinguish > table type. tblPeopleVehicle_MM for a many to many, tblState_LKP for a > lookup. > 4. Field naming conventions. Field naming conventions have several > parts. In general field and table names should only change in the most > dire > circumstances. If any object name changes, I have to do a search and > replace to find and fix them. If there are a bunch of Fes working against > a > single BE, it becomes a nightmare. > a. Data type prefixes are never used in field names because of issues > with data type changes. There are just too many data types, and they are > often changed well into a project, for very valid reasons. > b. A prefix to the field name is created using the first two characters > the table name where the table name is a single word - PEople, VEhicle, > COmpany. In cases where the table name is multiple words, the first > character of each word is used. InvoiceLineItem ILI, PeopleVehicle PV, > CompanyProperty CP. An underscore is used to distinguish the field name > prefix from the rest of the field name. PE_ID, PE_FName, PE_SSN. Use of > the first two characters if each word is acceptable to avoid collisions > and > make the field prefix more readable. PEopleVEhicle PEVE_ID. > > Obviously as a project gets large a table is required to track field > name prefixes already used, but for small to medium sized projects > this allows the developer to rapidly recognize which table a field > comes from just from the field name. If this naming convention is > rigorously followed then every > field in the db has a unique name, which allows "search and replace" type > of > operations to be performed without manual intervention. > c. IDs (PK/FKs) are distinguished by the capitalized characters 'ID' > in the field name. > d. PKs use the convention of Prefix characters, followed by an > underscore followed by ID. PE_ID, VE_ID, CO_ID. > e. FKs use the convention of Prefix characters, followed by an > underscore, followed by ID followed by the prefix characters of the > foreign > table. PV_IDPE, PV_IDVE. CP_IDCO. By placing ID immediately following > the > underscore, PKs and FKs can be immediately distinguished from other types > of > fields. > f. PKs and FKs are grouped at the top of the field list in design view. > This is done so that the PK and all FKs can be seen at a glance without > having to search through the fields looking for PKs/FKs. > > > Thus field names look like: > tblVehicle: > VE_ID > VE_Color > VE_Make > > tblPeople > PE_ID > PE_LName > PE_FName > PE_SSN > > tblPeopleVehicle > PV_ID > PV_IDPE > PV_IDVE > PV_DateAssigned > > As you can see, by using the _ character it is easy to distinguish the > prefix from the rest of the name. By using the ID immediately after > the underscore it is easy to find every PK/FK field. By grouping all > the PKs/FKs at the top of the table, no searching is required to find > the PKs/FKs. By using the _IDXXXX construct, it is easy to visually > look at the FK and just "see" what table that is the PK in. > > As I said above, to me reasons are the important thing. They define > why I do what I do and allow me to evaluate whether making a change to > what I do is useful to me. Rules without the associated reason are > useless since I cannot evaluate how it applies to what I am trying to > do. > > Rules are made to be broken, but I want to know the danger of doing > so. > > John W. Colby > www.ColbyConsulting.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From garykjos at gmail.com Thu Mar 2 10:04:08 2006 From: garykjos at gmail.com (Gary Kjos) Date: Thu, 2 Mar 2006 10:04:08 -0600 Subject: [AccessD] OT: farewell In-Reply-To: <20060302155328.19996.qmail@web50115.mail.yahoo.com> References: <1D7828CDB8350747AFE9D69E0E90DA1F1DDB2286@xlivmbx21.aig.com> <20060302155328.19996.qmail@web50115.mail.yahoo.com> Message-ID: Good Luck Roz. We would certainly love to have you join the OT list. It's a nice chatty place. Well usually nice. Chatty nonetheless. ;-) On 3/2/06, Roz Clarke wrote: > Hi guys. > > Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. > > Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 > months. I am no longer working in IT, having given up my job and taken up a Masters in Creative > Writing. Whilst I may have the occasional web project to work on, I have no plans to return to > development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing > all your familiar names in my inbox every day. > > So I am leaving the list and standing down as a moderator. > > It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything > I know about database development and a lot more besides, but I've had tears and laughter along > the way and a fantastic trip to Germany into the bargain. > > Thank you all for being invaluable 'virtual colleagues', but above all for being friends. > > Love and hugs > > Roz > > PS what's the OT list like these days? ;) > > > > ___________________________________________________________ > NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Gary Kjos garykjos at gmail.com From bchacc at san.rr.com Thu Mar 2 10:07:27 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 02 Mar 2006 08:07:27 -0800 Subject: [AccessD] OT: farewell In-Reply-To: <20060302155328.19996.qmail@web50115.mail.yahoo.com> References: <20060302155328.19996.qmail@web50115.mail.yahoo.com> Message-ID: <4407183F.4050204@san.rr.com> Well, adios and godspeed. Sign up for OT and stay in touch. Rocky Roz Clarke wrote: > Hi guys. > > Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. > > Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 > months. I am no longer working in IT, having given up my job and taken up a Masters in Creative > Writing. Whilst I may have the occasional web project to work on, I have no plans to return to > development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing > all your familiar names in my inbox every day. > > So I am leaving the list and standing down as a moderator. > > It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything > I know about database development and a lot more besides, but I've had tears and laughter along > the way and a fantastic trip to Germany into the bargain. > > Thank you all for being invaluable 'virtual colleagues', but above all for being friends. > > Love and hugs > > Roz > > PS what's the OT list like these days? ;) > > > > ___________________________________________________________ > NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From cfoust at infostatsystems.com Thu Mar 2 10:07:43 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 2 Mar 2006 08:07:43 -0800 Subject: [AccessD] OT: farewell Message-ID: Roz, Come back and visit when you're in the neighborhood! I have several virtual "families" here and in Woody's Lounge and they mean a great deal to me (yes, even the bratty teenagers and the uncle who thinks he's a comedian!). Just because you're pursuing a new life doesn't mean you have to turn your back on the old one. Good luck with your writing, and we look forward to hearing about all your literary awards. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Roz Clarke Sent: Thursday, March 02, 2006 7:53 AM To: Access Developers discussion and problem solving Subject: [AccessD] OT: farewell Hi guys. Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 months. I am no longer working in IT, having given up my job and taken up a Masters in Creative Writing. Whilst I may have the occasional web project to work on, I have no plans to return to development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing all your familiar names in my inbox every day. So I am leaving the list and standing down as a moderator. It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything I know about database development and a lot more besides, but I've had tears and laughter along the way and a fantastic trip to Germany into the bargain. Thank you all for being invaluable 'virtual colleagues', but above all for being friends. Love and hugs Roz PS what's the OT list like these days? ;) ___________________________________________________________ NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Thu Mar 2 10:12:41 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Thu, 02 Mar 2006 17:12:41 +0100 Subject: [AccessD] OT: farewell Message-ID: Hi Roz What a change in career! I'm sure you will do well, and I will miss your slightly twisted comments which always - I can say as a foreigner - have been a pleasure to just read. All the best! /gustav >>> zora_db at yahoo.com 02-03-2006 16:53:28 >>> Hi guys. Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 months. I am no longer working in IT, having given up my job and taken up a Masters in Creative Writing. Whilst I may have the occasional web project to work on, I have no plans to return to development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing all your familiar names in my inbox every day. So I am leaving the list and standing down as a moderator. It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything I know about database development and a lot more besides, but I've had tears and laughter along the way and a fantastic trip to Germany into the bargain. Thank you all for being invaluable 'virtual colleagues', but above all for being friends. Love and hugs Roz PS what's the OT list like these days? ;) From bchacc at san.rr.com Thu Mar 2 10:17:12 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 02 Mar 2006 08:17:12 -0800 Subject: [AccessD] Normalize Data by date In-Reply-To: References: Message-ID: <44071A88.1020903@san.rr.com> Chester: Sorry for the late reply. What exactly do you mean by "normalize back to the first volume date"? Can you give an example? Regards, Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com Kaup, Chester wrote: > I have a table with 4 columns of data. The fields are Well_Number, > Production_Date, Water_Volume and CO2_Volume. I need to normalize these > back to the first volume date separately for Water_Volume and > CO2_Volume. ie sum the first volumes data together regardless of date > and through the rest of the records. Hope I am making sense. I am at a > loss of where to start. Thanks. > > > > Chester Kaup > > Engineering Technician > > Kinder Morgan CO2 Company, LLP > > Office (432) 688-3797 > > FAX (432) 688-3799 > > > > > > No trees were killed in the sending of this message. However a large > number of electrons were terribly inconvenienced. > > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From lembit.dbamail at t-online.de Thu Mar 2 10:18:05 2006 From: lembit.dbamail at t-online.de (Lembit Soobik) Date: Thu, 2 Mar 2006 17:18:05 +0100 Subject: [AccessD] OT: farewell References: <20060302155328.19996.qmail@web50115.mail.yahoo.com> Message-ID: <001e01c63e14$e3473300$1400a8c0@v1000> Roz, I wish you a lot success with your writing (how about a Harry Potter type book :-)) why not log into OT at least to say hello. you will sure be welcome. Lembit ----- Original Message ----- From: "Roz Clarke" To: "Access Developers discussion and problem solving" Sent: Thursday, March 02, 2006 4:53 PM Subject: [AccessD] OT: farewell > Hi guys. > > Sorry to bust up your Thursday with an OT goodbye thread, but the moment > is upon me. > > Those who ever noticed me at all, may have noticed that I haven't posted > to Accessd in the last 6 > months. I am no longer working in IT, having given up my job and taken up > a Masters in Creative > Writing. Whilst I may have the occasional web project to work on, I have > no plans to return to > development career-wise. The fact is, I only really stayed subscribed for > the comfort of seeing > all your familiar names in my inbox every day. > > So I am leaving the list and standing down as a moderator. > > It's been a good ten years. Not only do I owe a great deal to the list, > which taught me everything > I know about database development and a lot more besides, but I've had > tears and laughter along > the way and a fantastic trip to Germany into the bargain. > > Thank you all for being invaluable 'virtual colleagues', but above all for > being friends. > > Love and hugs > > Roz > > PS what's the OT list like these days? ;) > > > > ___________________________________________________________ > NEW Yahoo! Cars - sell your car and browse thousands of new and used cars > online! http://uk.cars.yahoo.com/ > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > > -- > No virus found in this incoming message. > Checked by AVG Free Edition. > Version: 7.1.375 / Virus Database: 268.1.1/272 - Release Date: 01.03.2006 > > From zora_db at yahoo.com Thu Mar 2 10:19:03 2006 From: zora_db at yahoo.com (Roz Clarke) Date: Thu, 2 Mar 2006 16:19:03 +0000 (GMT) Subject: [AccessD] OT: farewell In-Reply-To: <4407183F.4050204@san.rr.com> Message-ID: <20060302161903.84554.qmail@web50107.mail.yahoo.com> OK, I'm convinced. OT signup has been executed... --- Rocky Smolin - Beach Access Software wrote: > Well, adios and godspeed. Sign up for OT and stay in touch. > > Rocky > > > Roz Clarke wrote: > > Hi guys. > > > > Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. > > > > Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the > last 6 > > months. I am no longer working in IT, having given up my job and taken up a Masters in > Creative > > Writing. Whilst I may have the occasional web project to work on, I have no plans to return to > > development career-wise. The fact is, I only really stayed subscribed for the comfort of > seeing > > all your familiar names in my inbox every day. > > > > So I am leaving the list and standing down as a moderator. > > > > It's been a good ten years. Not only do I owe a great deal to the list, which taught me > everything > > I know about database development and a lot more besides, but I've had tears and laughter > along > > the way and a fantastic trip to Germany into the bargain. > > > > Thank you all for being invaluable 'virtual colleagues', but above all for being friends. > > > > Love and hugs > > > > Roz > > > > PS what's the OT list like these days? ;) > > > > > > > > ___________________________________________________________ > > NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! > http://uk.cars.yahoo.com/ > > > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > ___________________________________________________________ Yahoo! Messenger - NEW crystal clear PC to PC calling worldwide with voicemail http://uk.messenger.yahoo.com From zora_db at yahoo.com Thu Mar 2 10:22:06 2006 From: zora_db at yahoo.com (Roz Clarke) Date: Thu, 2 Mar 2006 16:22:06 +0000 (GMT) Subject: [AccessD] OT: farewell In-Reply-To: <001e01c63e14$e3473300$1400a8c0@v1000> Message-ID: <20060302162206.67735.qmail@web50114.mail.yahoo.com> LOL If I had a pound for every time someone's suggested that I'd be almost as rich as JK Rowling... well, OK, NOWHERE NEAR as rich as JK Rowling, but it would be enough to get a round of drinks in for all of AccessD. I am coming to OT, so this is only an arrivederci thread now. :) We'll see how long I last this time. --- Lembit Soobik wrote: > Roz, > I wish you a lot success with your writing (how about a Harry Potter type > book :-)) > > why not log into OT at least to say hello. you will sure be welcome. > > Lembit > > ----- Original Message ----- > From: "Roz Clarke" > To: "Access Developers discussion and problem solving" > > Sent: Thursday, March 02, 2006 4:53 PM > Subject: [AccessD] OT: farewell > > > > Hi guys. > > > > Sorry to bust up your Thursday with an OT goodbye thread, but the moment > > is upon me. > > > > Those who ever noticed me at all, may have noticed that I haven't posted > > to Accessd in the last 6 > > months. I am no longer working in IT, having given up my job and taken up > > a Masters in Creative > > Writing. Whilst I may have the occasional web project to work on, I have > > no plans to return to > > development career-wise. The fact is, I only really stayed subscribed for > > the comfort of seeing > > all your familiar names in my inbox every day. > > > > So I am leaving the list and standing down as a moderator. > > > > It's been a good ten years. Not only do I owe a great deal to the list, > > which taught me everything > > I know about database development and a lot more besides, but I've had > > tears and laughter along > > the way and a fantastic trip to Germany into the bargain. > > > > Thank you all for being invaluable 'virtual colleagues', but above all for > > being friends. > > > > Love and hugs > > > > Roz > > > > PS what's the OT list like these days? ;) > > > > > > > > ___________________________________________________________ > > NEW Yahoo! Cars - sell your car and browse thousands of new and used cars > > online! http://uk.cars.yahoo.com/ > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > > > > > -- > > No virus found in this incoming message. > > Checked by AVG Free Edition. > > Version: 7.1.375 / Virus Database: 268.1.1/272 - Release Date: 01.03.2006 > > > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > ___________________________________________________________ To help you stay safe and secure online, we've developed the all new Yahoo! Security Centre. http://uk.security.yahoo.com From markamatte at hotmail.com Thu Mar 2 10:27:51 2006 From: markamatte at hotmail.com (Mark A Matte) Date: Thu, 02 Mar 2006 16:27:51 +0000 Subject: [AccessD] Changing form Name In-Reply-To: Message-ID: Hello All, I just saw an 'odd'...well more unexpected occurence in A2K. I changed the name of a form...and then went to the queries that used controls on this form as criteria to change them as well...all of my criteria had already been changed...but not changed where I was using the same control in an 'update to' of an update query. I guess this is a feature I've just overlooked until now? Not sure what my question is...just a curious topic for me if anyone has any thoughts or insight into how extensive this is in A2K. Thanks, Mark A. Matte From Chester_Kaup at kindermorgan.com Thu Mar 2 10:32:43 2006 From: Chester_Kaup at kindermorgan.com (Kaup, Chester) Date: Thu, 2 Mar 2006 10:32:43 -0600 Subject: [AccessD] Normalize Data by date Message-ID: Example data Well_Number Production_Date Water_Volume CO2_Volume 1 1/1/2005 10 10 1 2/1/2005 20 15 1 3/1/2005 25 20 2 4/1/2005 50 35 2 5/1/2005 75 100 2 6/1/2005 44 87 3 10/1/2005 100 20 3 11/1/2005 200 40 4 2/1/2006 123 57 4 3/1/2006 44 23 To normalize the data what I need to do is sum the Water_Volumes and CO2_Volumes for the first date for each well, second date etc. Thus for dimensionless date 1 well 1 on 1/1/2005 is added to well 2 on 4/1/2005 is added to well 3 on 10/1/2005 and is added to well 4 on 2/1/2006. For Water_Volume on first date 10+50+100+123. For CO2_Volume on first date 10+35+20+57. The again for the second date for sum wells etc. Hope this makes sense. Thanks. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 02, 2006 10:17 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Normalize Data by date Chester: Sorry for the late reply. What exactly do you mean by "normalize back to the first volume date"? Can you give an example? Regards, Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com Kaup, Chester wrote: > I have a table with 4 columns of data. The fields are Well_Number, > Production_Date, Water_Volume and CO2_Volume. I need to normalize these > back to the first volume date separately for Water_Volume and > CO2_Volume. ie sum the first volumes data together regardless of date > and through the rest of the records. Hope I am making sense. I am at a > loss of where to start. Thanks. > > > > Chester Kaup > > Engineering Technician > > Kinder Morgan CO2 Company, LLP > > Office (432) 688-3797 > > FAX (432) 688-3799 > > > > > > No trees were killed in the sending of this message. However a large > number of electrons were terribly inconvenienced. > > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jim.Hale at FleetPride.com Thu Mar 2 10:44:49 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Thu, 2 Mar 2006 10:44:49 -0600 Subject: [AccessD] OT: farewell Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDA6E@corp-es01.fleetpride.com> I envy you! Good luck. Jim Hale -----Original Message----- From: Roz Clarke [mailto:zora_db at yahoo.com] Sent: Thursday, March 02, 2006 9:53 AM To: Access Developers discussion and problem solving Subject: [AccessD] OT: farewell Hi guys. Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 months. I am no longer working in IT, having given up my job and taken up a Masters in Creative Writing. Whilst I may have the occasional web project to work on, I have no plans to return to development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing all your familiar names in my inbox every day. So I am leaving the list and standing down as a moderator. It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything I know about database development and a lot more besides, but I've had tears and laughter along the way and a fantastic trip to Germany into the bargain. Thank you all for being invaluable 'virtual colleagues', but above all for being friends. Love and hugs Roz PS what's the OT list like these days? ;) ___________________________________________________________ NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From markamatte at hotmail.com Thu Mar 2 10:49:45 2006 From: markamatte at hotmail.com (Mark A Matte) Date: Thu, 02 Mar 2006 16:49:45 +0000 Subject: [AccessD] On Open Event In-Reply-To: <000a01c63d4f$908c6ab0$0200a8c0@danwaters> Message-ID: Dan, I tried this...it does work for the 'On Current'...but unless I'm doing something wrong it does not work for the 'On Open'. It gives the error "Argument not Optional". Any other ideas? Thanks, Mark >From: "Dan Waters" >Reply-To: Access Developers discussion and problem >solving >To: "'Access Developers discussion and problem >solving'" >Subject: Re: [AccessD] On Open Event >Date: Wed, 1 Mar 2006 10:45:35 -0600 > >Mark, > >You can do this: > >1) Make the open event a Public sub. > >2) Use this: Call Forms.frmMyForm.Form_Open > >You can use this technique to call any procedure in any OPEN form. I do >this sometimes to call an open form's Current event from code in a standard >module. > > >Dan > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mark A Matte >Sent: Wednesday, March 01, 2006 9:35 AM >To: accessd at databaseadvisors.com >Subject: [AccessD] On Open Event > >Hello All, > >I have a form that does 'stuff' 'ON OPEN'...is there a way to cause this >event to fire again from another form...repaint,refresh,requery...anything? > >Thanks, > >Mark A. Matte > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From zora_db at yahoo.com Thu Mar 2 10:56:51 2006 From: zora_db at yahoo.com (Roz Clarke) Date: Thu, 2 Mar 2006 16:56:51 +0000 (GMT) Subject: [AccessD] OT: farewell In-Reply-To: Message-ID: <20060302165651.95613.qmail@web50108.mail.yahoo.com> I don't know *what* you mean, Gustav. --- Gustav Brock wrote: > Hi Roz > > What a change in career! I'm sure you will do well, and I will miss your slightly twisted > comments which always - I can say as a foreigner - have been a pleasure to just read. > > All the best! > > /gustav > > >>> zora_db at yahoo.com 02-03-2006 16:53:28 >>> > Hi guys. > > Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. > > Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last > 6 > months. I am no longer working in IT, having given up my job and taken up a Masters in Creative > Writing. Whilst I may have the occasional web project to work on, I have no plans to return to > development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing > all your familiar names in my inbox every day. > > So I am leaving the list and standing down as a moderator. > > It's been a good ten years. Not only do I owe a great deal to the list, which taught me > everything > I know about database development and a lot more besides, but I've had tears and laughter along > the way and a fantastic trip to Germany into the bargain. > > Thank you all for being invaluable 'virtual colleagues', but above all for being friends. > > Love and hugs > > Roz > > PS what's the OT list like these days? ;) > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > ___________________________________________________________ Win a BlackBerry device from O2 with Yahoo!. Enter now. http://www.yahoo.co.uk/blackberry From bchacc at san.rr.com Thu Mar 2 11:02:50 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 02 Mar 2006 09:02:50 -0800 Subject: [AccessD] Normalize Data by date In-Reply-To: References: Message-ID: <4407253A.1020308@san.rr.com> Do each of the wells have the same number of dates? If not, what do you do when you get to the third date for well 1 and well2 doesn't have a third date? Rocky Kaup, Chester wrote: > Example data > Well_Number Production_Date Water_Volume > CO2_Volume > 1 1/1/2005 10 > 10 > 1 2/1/2005 20 > 15 > 1 3/1/2005 25 > 20 > 2 4/1/2005 50 > 35 > 2 5/1/2005 75 > 100 > 2 6/1/2005 44 > 87 > 3 10/1/2005 100 > 20 > 3 11/1/2005 200 > 40 > 4 2/1/2006 123 > 57 > 4 3/1/2006 44 > 23 > > To normalize the data what I need to do is sum the Water_Volumes and > CO2_Volumes for the first date for each well, second date etc. Thus for > dimensionless date 1 well 1 on 1/1/2005 is added to well 2 on 4/1/2005 > is added to well 3 on 10/1/2005 and is added to well 4 on 2/1/2006. For > Water_Volume on first date 10+50+100+123. For CO2_Volume on first date > 10+35+20+57. The again for the second date for sum wells etc. Hope this > makes sense. Thanks. > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin > - Beach Access Software > Sent: Thursday, March 02, 2006 10:17 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Normalize Data by date > > Chester: > > Sorry for the late reply. What exactly do you mean by "normalize back > to the first volume date"? Can you give an example? > > Regards, > > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > > Kaup, Chester wrote: > >> I have a table with 4 columns of data. The fields are Well_Number, >> Production_Date, Water_Volume and CO2_Volume. I need to normalize >> > these > >> back to the first volume date separately for Water_Volume and >> CO2_Volume. ie sum the first volumes data together regardless of date >> and through the rest of the records. Hope I am making sense. I am at a >> loss of where to start. Thanks. >> >> >> >> Chester Kaup >> >> Engineering Technician >> >> Kinder Morgan CO2 Company, LLP >> >> Office (432) 688-3797 >> >> FAX (432) 688-3799 >> >> >> >> >> >> No trees were killed in the sending of this message. However a large >> number of electrons were terribly inconvenienced. >> >> >> >> >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From developer at ultradnt.com Thu Mar 2 11:11:03 2006 From: developer at ultradnt.com (Steve Conklin) Date: Thu, 2 Mar 2006 12:11:03 -0500 Subject: [AccessD] OT - Action Pack In-Reply-To: <20060302143514.CCZX1358.omta03sl.mx.bigpond.com@DENZILLAP> Message-ID: <200603021710.k22HAxj49344@ultradnt.com> I have picked up a new client, mostly for server work, and when I asked him if his Windows XP and Server 2003 were properly licensed, he showed me an Action Pack. This is a real estate office, but apparently because the word "consulting" is in the company name, it was able to be registered to whatever level necessary to get an Action Pack. The question is, is there any long term risk associated with this? Are these things re-newable an unlimited number of times? Will MS ever ask to see a list of how many clients you have influenced to buy their products through your Ac.Pack? Or did this company find a loophole you could drive a truck through? I know there are a few Action Packers out there; I am an MSDN-U myself, so I don't any details about this thing. Thanks for any insight, Steve From Chester_Kaup at kindermorgan.com Thu Mar 2 11:11:08 2006 From: Chester_Kaup at kindermorgan.com (Kaup, Chester) Date: Thu, 2 Mar 2006 11:11:08 -0600 Subject: [AccessD] Normalize Data by date Message-ID: All of the wells may have a different number of data points. For example if well 1 has been on for 1 year it will have 12 data points. If well 2 has been on for 6 months it will have 6 data points. However many wells have data at a certain number of data points from the first data point get added together. Thus if 6 wells has data at the first point they are summed. If there are three wells that have data at the second point those three are added together. If only 2 wells have data at the last point only there data is summed. Thanks. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 02, 2006 11:03 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Normalize Data by date Do each of the wells have the same number of dates? If not, what do you do when you get to the third date for well 1 and well2 doesn't have a third date? Rocky Kaup, Chester wrote: > Example data > Well_Number Production_Date Water_Volume > CO2_Volume > 1 1/1/2005 10 > 10 > 1 2/1/2005 20 > 15 > 1 3/1/2005 25 > 20 > 2 4/1/2005 50 > 35 > 2 5/1/2005 75 > 100 > 2 6/1/2005 44 > 87 > 3 10/1/2005 100 > 20 > 3 11/1/2005 200 > 40 > 4 2/1/2006 123 > 57 > 4 3/1/2006 44 > 23 > > To normalize the data what I need to do is sum the Water_Volumes and > CO2_Volumes for the first date for each well, second date etc. Thus for > dimensionless date 1 well 1 on 1/1/2005 is added to well 2 on 4/1/2005 > is added to well 3 on 10/1/2005 and is added to well 4 on 2/1/2006. For > Water_Volume on first date 10+50+100+123. For CO2_Volume on first date > 10+35+20+57. The again for the second date for sum wells etc. Hope this > makes sense. Thanks. > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin > - Beach Access Software > Sent: Thursday, March 02, 2006 10:17 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Normalize Data by date > > Chester: > > Sorry for the late reply. What exactly do you mean by "normalize back > to the first volume date"? Can you give an example? > > Regards, > > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > > Kaup, Chester wrote: > >> I have a table with 4 columns of data. The fields are Well_Number, >> Production_Date, Water_Volume and CO2_Volume. I need to normalize >> > these > >> back to the first volume date separately for Water_Volume and >> CO2_Volume. ie sum the first volumes data together regardless of date >> and through the rest of the records. Hope I am making sense. I am at a >> loss of where to start. Thanks. >> >> >> >> Chester Kaup >> >> Engineering Technician >> >> Kinder Morgan CO2 Company, LLP >> >> Office (432) 688-3797 >> >> FAX (432) 688-3799 >> >> >> >> >> >> No trees were killed in the sending of this message. However a large >> number of electrons were terribly inconvenienced. >> >> >> >> >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From garykjos at gmail.com Thu Mar 2 11:38:16 2006 From: garykjos at gmail.com (Gary Kjos) Date: Thu, 2 Mar 2006 11:38:16 -0600 Subject: [AccessD] OT - Action Pack In-Reply-To: <200603021710.k22HAxj49344@ultradnt.com> References: <20060302143514.CCZX1358.omta03sl.mx.bigpond.com@DENZILLAP> <200603021710.k22HAxj49344@ultradnt.com> Message-ID: https://partner.microsoft.com/40009735 has all the info. here's a quote from the FAQ --------------------------------------- Who can subscribe to the Microsoft Action Pack? The Microsoft Action Pack Subscription is available exclusively to consultants, value-added resellers, value-added providers, system integrators, developers, system builders, hosts, and service providers who are enrolled as Registered Members in the Microsoft Partner Program and who distribute or influence the acquisition of Microsoft software and Microsoft-based solutions by end customers. ---------------------------------- that describes a pretty broad group. "influence the aquisition of Microsoft software and Microsoft-bases solutions by end customers" can include a whole lot of people and businesses. I think Microsoft is glad to have them paying something every year. GK On 3/2/06, Steve Conklin wrote: > I have picked up a new client, mostly for server work, and when I asked him > if his Windows XP and Server 2003 were properly licensed, he showed me an > Action Pack. This is a real estate office, but apparently because the word > "consulting" is in the company name, it was able to be registered to > whatever level necessary to get an Action Pack. > > The question is, is there any long term risk associated with this? Are > these things re-newable an unlimited number of times? Will MS ever ask to > see a list of how many clients you have influenced to buy their products > through your Ac.Pack? Or did this company find a loophole you could drive a > truck through? > > I know there are a few Action Packers out there; I am an MSDN-U myself, so I > don't any details about this thing. > > Thanks for any insight, > Steve > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Gary Kjos garykjos at gmail.com From garykjos at gmail.com Thu Mar 2 11:42:33 2006 From: garykjos at gmail.com (Gary Kjos) Date: Thu, 2 Mar 2006 11:42:33 -0600 Subject: [AccessD] Changing form Name In-Reply-To: References: Message-ID: I think that would be "Perform Name AutoCorrect" at work. Tools/Options/General - Right side check boxes. I usually find it to be trouble and try to remember to turn it OFF. ;-) GK On 3/2/06, Mark A Matte wrote: > Hello All, > > I just saw an 'odd'...well more unexpected occurence in A2K. I changed the > name of a form...and then went to the queries that used controls on this > form as criteria to change them as well...all of my criteria had already > been changed...but not changed where I was using the same control in an > 'update to' of an update query. I guess this is a feature I've just > overlooked until now? > > Not sure what my question is...just a curious topic for me if anyone has any > thoughts or insight into how extensive this is in A2K. > > Thanks, > > Mark A. Matte > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Gary Kjos garykjos at gmail.com From bchacc at san.rr.com Thu Mar 2 11:45:21 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 02 Mar 2006 09:45:21 -0800 Subject: [AccessD] Normalize Data by date In-Reply-To: References: Message-ID: <44072F31.9060507@san.rr.com> Chester: Now that I see what's what I think this is best done in code in a big loop. I'd set up an array to hold the sums. Set the number of rows in the array to the maximum number of data points any well has and the number of columns to 2 - the first column holding the sum of the water volume, the second holding the sum of the CO2. Open up a DAO recordset for each well in turn. Initialize a counter to 1. Put the first data points into the first cell. Add one to the counter and using .MoveNext until .EOF add the data in each record to the appropriate cells pointed to by the counter. If this ain't perfect at least it might give you an idea of an approach. HTH Rocky Kaup, Chester wrote: > All of the wells may have a different number of data points. For example > if well 1 has been on for 1 year it will have 12 data points. If well 2 > has been on for 6 months it will have 6 data points. However many wells > have data at a certain number of data points from the first data point > get added together. Thus if 6 wells has data at the first point they are > summed. If there are three wells that have data at the second point > those three are added together. If only 2 wells have data at the last > point only there data is summed. Thanks. > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin > - Beach Access Software > Sent: Thursday, March 02, 2006 11:03 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Normalize Data by date > > Do each of the wells have the same number of dates? If not, what do you > > do when you get to the third date for well 1 and well2 doesn't have a > third date? > > Rocky > > > Kaup, Chester wrote: > >> Example data >> Well_Number Production_Date Water_Volume >> CO2_Volume >> 1 1/1/2005 10 >> 10 >> 1 2/1/2005 20 >> 15 >> 1 3/1/2005 25 >> 20 >> 2 4/1/2005 50 >> 35 >> 2 5/1/2005 75 >> 100 >> 2 6/1/2005 44 >> 87 >> 3 10/1/2005 100 >> 20 >> 3 11/1/2005 200 >> 40 >> 4 2/1/2006 123 >> 57 >> 4 3/1/2006 44 >> 23 >> >> To normalize the data what I need to do is sum the Water_Volumes and >> CO2_Volumes for the first date for each well, second date etc. Thus >> > for > >> dimensionless date 1 well 1 on 1/1/2005 is added to well 2 on 4/1/2005 >> is added to well 3 on 10/1/2005 and is added to well 4 on 2/1/2006. >> > For > >> Water_Volume on first date 10+50+100+123. For CO2_Volume on first date >> 10+35+20+57. The again for the second date for sum wells etc. Hope >> > this > >> makes sense. Thanks. >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky >> > Smolin > >> - Beach Access Software >> Sent: Thursday, March 02, 2006 10:17 AM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Normalize Data by date >> >> Chester: >> >> Sorry for the late reply. What exactly do you mean by "normalize back >> > > >> to the first volume date"? Can you give an example? >> >> Regards, >> >> Rocky Smolin >> Beach Access Software >> 858-259-4334 >> www.e-z-mrp.com >> >> >> Kaup, Chester wrote: >> >> >>> I have a table with 4 columns of data. The fields are Well_Number, >>> Production_Date, Water_Volume and CO2_Volume. I need to normalize >>> >>> >> these >> >> >>> back to the first volume date separately for Water_Volume and >>> CO2_Volume. ie sum the first volumes data together regardless of date >>> and through the rest of the records. Hope I am making sense. I am at >>> > a > >>> loss of where to start. Thanks. >>> >>> >>> >>> Chester Kaup >>> >>> Engineering Technician >>> >>> Kinder Morgan CO2 Company, LLP >>> >>> Office (432) 688-3797 >>> >>> FAX (432) 688-3799 >>> >>> >>> >>> >>> >>> No trees were killed in the sending of this message. However a large >>> number of electrons were terribly inconvenienced. >>> >>> >>> >>> >>> >>> >> >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From developer at ultradnt.com Thu Mar 2 12:19:53 2006 From: developer at ultradnt.com (Steve Conklin) Date: Thu, 2 Mar 2006 13:19:53 -0500 Subject: [AccessD] OT - Action Pack In-Reply-To: Message-ID: <200603021819.k22IJmj57655@ultradnt.com> Thanks for the link. But there's no way this real estate office does any influencing over anything computer related. There's no stretching the definition of their business to fit any of that, so that's why I wanted to know if there is any risk of them losing theses licenses. Seems to me that they have found a loophole that any business with <= 10 PC's and 1 Server can exploit. Steve -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gary Kjos Sent: Thursday, March 02, 2006 12:38 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT - Action Pack https://partner.microsoft.com/40009735 has all the info. here's a quote from the FAQ --------------------------------------- Who can subscribe to the Microsoft Action Pack? The Microsoft Action Pack Subscription is available exclusively to consultants, value-added resellers, value-added providers, system integrators, developers, system builders, hosts, and service providers who are enrolled as Registered Members in the Microsoft Partner Program and who distribute or influence the acquisition of Microsoft software and Microsoft-based solutions by end customers. ---------------------------------- that describes a pretty broad group. "influence the aquisition of Microsoft software and Microsoft-bases solutions by end customers" can include a whole lot of people and businesses. I think Microsoft is glad to have them paying something every year. GK On 3/2/06, Steve Conklin wrote: > I have picked up a new client, mostly for server work, and when I > asked him if his Windows XP and Server 2003 were properly licensed, he > showed me an Action Pack. This is a real estate office, but > apparently because the word "consulting" is in the company name, it > was able to be registered to whatever level necessary to get an Action Pack. > > The question is, is there any long term risk associated with this? > Are these things re-newable an unlimited number of times? Will MS > ever ask to see a list of how many clients you have influenced to buy > their products through your Ac.Pack? Or did this company find a > loophole you could drive a truck through? > > I know there are a few Action Packers out there; I am an MSDN-U > myself, so I don't any details about this thing. > > Thanks for any insight, > Steve > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Gary Kjos garykjos at gmail.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From andy at minstersystems.co.uk Thu Mar 2 12:22:26 2006 From: andy at minstersystems.co.uk (Andy Lacey) Date: Thu, 2 Mar 2006 18:22:26 -0000 Subject: [AccessD] OT: farewell In-Reply-To: <20060302162206.67735.qmail@web50114.mail.yahoo.com> Message-ID: <001401c63e26$4266cab0$9af00651@minster33c3r25> As I'm not on OT I'll say goodbye now Roz, and good luck with the writing. When you're published please let the list know somehow cos I'd love to read it. I'll even BUY it for heaven's sake. And many thanks for your sage words on the moderator's list. You will be sorely missed. -- Andy Lacey http://www.minstersystems.co.uk > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Roz Clarke > Sent: 02 March 2006 16:22 > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] OT: farewell > > > LOL > > If I had a pound for every time someone's suggested that I'd > be almost as rich as JK Rowling... well, OK, NOWHERE NEAR as > rich as JK Rowling, but it would be enough to get a round of > drinks in for all of AccessD. > > I am coming to OT, so this is only an arrivederci thread now. :) > > We'll see how long I last this time. > > --- Lembit Soobik wrote: > > > Roz, > > I wish you a lot success with your writing (how about a > Harry Potter > > type > > book :-)) > > > > why not log into OT at least to say hello. you will sure be welcome. > > > > Lembit > > > > ----- Original Message ----- > > From: "Roz Clarke" > > To: "Access Developers discussion and problem solving" > > > > Sent: Thursday, March 02, 2006 4:53 PM > > Subject: [AccessD] OT: farewell > > > > > > > Hi guys. > > > > > > Sorry to bust up your Thursday with an OT goodbye thread, but the > > > moment > > > is upon me. > > > > > > Those who ever noticed me at all, may have noticed that I haven't > > > posted > > > to Accessd in the last 6 > > > months. I am no longer working in IT, having given up my > job and taken up > > > a Masters in Creative > > > Writing. Whilst I may have the occasional web project to > work on, I have > > > no plans to return to > > > development career-wise. The fact is, I only really > stayed subscribed for > > > the comfort of seeing > > > all your familiar names in my inbox every day. > > > > > > So I am leaving the list and standing down as a moderator. > > > > > > It's been a good ten years. Not only do I owe a great deal to the > > > list, > > > which taught me everything > > > I know about database development and a lot more besides, > but I've had > > > tears and laughter along > > > the way and a fantastic trip to Germany into the bargain. > > > > > > Thank you all for being invaluable 'virtual colleagues', > but above > > > all for > > > being friends. > > > > > > Love and hugs > > > > > > Roz > > > > > > PS what's the OT list like these days? ;) > > > > > > > > > > > > ___________________________________________________________ > > > NEW Yahoo! Cars - sell your car and browse thousands of > new and used > > > cars > > > online! http://uk.cars.yahoo.com/ > > > -- > > > AccessD mailing list > > > AccessD at databaseadvisors.com > > > http://databaseadvisors.com/mailman/listinfo/accessd > > > Website: http://www.databaseadvisors.com > > > > > > > > > -- > > > No virus found in this incoming message. > > > Checked by AVG Free Edition. > > > Version: 7.1.375 / Virus Database: 268.1.1/272 - Release > Date: 01.03.2006 > > > > > > > > > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > > > > > > ___________________________________________________________ > To help you stay safe and secure online, we've developed the > all new Yahoo! Security Centre. http://uk.security.yahoo.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > From bchacc at san.rr.com Thu Mar 2 12:31:49 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 02 Mar 2006 10:31:49 -0800 Subject: [AccessD] Table naming conventions In-Reply-To: References: Message-ID: <44073A15.4080206@san.rr.com> On a related note, does everyone use/not use Me. when referring to a control in code? Any advantage other than the auto-fill to using Me.? TIA Rocky Charlotte Foust wrote: > You use suffixes for ease of navigation. I prefer prefixes for grouping > by types of objects. Different strokes. > > Charlotte > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, > Lambert > Sent: Thursday, March 02, 2006 6:16 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Table naming conventions > > > Not read all this, but one point I want to make is "why are people > obsessed with PREFIXES?" > > I use the "_tbl" SUFFIX in my table names. Why? So that when I sort the > list of tables I can use the initial letter of the table name to quickly > jump to it using the keyboard. If they all begin with "tbl" you cannot > do that. Simple. :-) > > Lambert > > From zora_db at yahoo.com Thu Mar 2 12:35:49 2006 From: zora_db at yahoo.com (Roz Clarke) Date: Thu, 2 Mar 2006 18:35:49 +0000 (GMT) Subject: [AccessD] OT: farewell In-Reply-To: <001401c63e26$4266cab0$9af00651@minster33c3r25> Message-ID: <20060302183549.37301.qmail@web50108.mail.yahoo.com> 'When' I'm published! Thank you for the vote of confidence, Andy. I'm sure that 'when' the novel is published I'll be shouting it from the rooftops - don't worry, you'll hear me! I tried to let you know on the moderators list but I don't seem to be able to post to it at the moment - so sorry for not giving you a seperate heads-up. You are more than sage enough to manage the moderating job without me - all of you mods are - and I will miss you, too. Take care (of the list and yourself) Roz --- Andy Lacey wrote: > As I'm not on OT I'll say goodbye now Roz, and good luck with the writing. > When you're published please let the list know somehow cos I'd love to read > it. I'll even BUY it for heaven's sake. > > And many thanks for your sage words on the moderator's list. You will be > sorely missed. > > -- > Andy Lacey > http://www.minstersystems.co.uk > > > > -----Original Message----- > > From: accessd-bounces at databaseadvisors.com > > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Roz Clarke > > Sent: 02 March 2006 16:22 > > To: Access Developers discussion and problem solving > > Subject: Re: [AccessD] OT: farewell > > > > > > LOL > > > > If I had a pound for every time someone's suggested that I'd > > be almost as rich as JK Rowling... well, OK, NOWHERE NEAR as > > rich as JK Rowling, but it would be enough to get a round of > > drinks in for all of AccessD. > > > > I am coming to OT, so this is only an arrivederci thread now. :) > > > > We'll see how long I last this time. > > > > --- Lembit Soobik wrote: > > > > > Roz, > > > I wish you a lot success with your writing (how about a > > Harry Potter > > > type > > > book :-)) > > > > > > why not log into OT at least to say hello. you will sure be welcome. > > > > > > Lembit > > > > > > ----- Original Message ----- > > > From: "Roz Clarke" > > > To: "Access Developers discussion and problem solving" > > > > > > Sent: Thursday, March 02, 2006 4:53 PM > > > Subject: [AccessD] OT: farewell > > > > > > > > > > Hi guys. > > > > > > > > Sorry to bust up your Thursday with an OT goodbye thread, but the > > > > moment > > > > is upon me. > > > > > > > > Those who ever noticed me at all, may have noticed that I haven't > > > > posted > > > > to Accessd in the last 6 > > > > months. I am no longer working in IT, having given up my > > job and taken up > > > > a Masters in Creative > > > > Writing. Whilst I may have the occasional web project to > > work on, I have > > > > no plans to return to > > > > development career-wise. The fact is, I only really > > stayed subscribed for > > > > the comfort of seeing > > > > all your familiar names in my inbox every day. > > > > > > > > So I am leaving the list and standing down as a moderator. > > > > > > > > It's been a good ten years. Not only do I owe a great deal to the > > > > list, > > > > which taught me everything > > > > I know about database development and a lot more besides, > > but I've had > > > > tears and laughter along > > > > the way and a fantastic trip to Germany into the bargain. > > > > > > > > Thank you all for being invaluable 'virtual colleagues', > > but above > > > > all for > > > > being friends. > > > > > > > > Love and hugs > > > > > > > > Roz > > > > > > > > PS what's the OT list like these days? ;) > > > > > > > > > > > > > > > > ___________________________________________________________ > > > > NEW Yahoo! Cars - sell your car and browse thousands of > > new and used > > > > cars > > > > online! http://uk.cars.yahoo.com/ > > > > -- > > > > AccessD mailing list > > > > AccessD at databaseadvisors.com > > > > http://databaseadvisors.com/mailman/listinfo/accessd > > > > Website: http://www.databaseadvisors.com > > > > > > > > > > > > -- > > > > No virus found in this incoming message. > > > > Checked by AVG Free Edition. > > > > Version: 7.1.375 / Virus Database: 268.1.1/272 - Release > > Date: 01.03.2006 > > > > > > > > > > > > > > -- > > > AccessD mailing list > > > AccessD at databaseadvisors.com > > > http://databaseadvisors.com/mailman/listinfo/accessd > > > Website: http://www.databaseadvisors.com > > > > > > > > > > > > > ___________________________________________________________ > > To help you stay safe and secure online, we've developed the > > all new Yahoo! Security Centre. http://uk.security.yahoo.com > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > ___________________________________________________________ Win a BlackBerry device from O2 with Yahoo!. Enter now. http://www.yahoo.co.uk/blackberry From cfoust at infostatsystems.com Thu Mar 2 12:44:10 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 2 Mar 2006 10:44:10 -0800 Subject: [AccessD] OT - Action Pack Message-ID: Well, if MS ever decides to close that loophole, the EULA requires that they uninstall the software and any of its supporting files from all their machines. I've heard of people cheating like this, it's like those who buy the Academic edition even though it isn't licensed for commercial use. If we aren't honest about our licenses, how can our clients/customers/employees trust us? Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Conklin Sent: Thursday, March 02, 2006 10:20 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT - Action Pack Thanks for the link. But there's no way this real estate office does any influencing over anything computer related. There's no stretching the definition of their business to fit any of that, so that's why I wanted to know if there is any risk of them losing theses licenses. Seems to me that they have found a loophole that any business with <= 10 PC's and 1 Server can exploit. Steve -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gary Kjos Sent: Thursday, March 02, 2006 12:38 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT - Action Pack https://partner.microsoft.com/40009735 has all the info. here's a quote from the FAQ --------------------------------------- Who can subscribe to the Microsoft Action Pack? The Microsoft Action Pack Subscription is available exclusively to consultants, value-added resellers, value-added providers, system integrators, developers, system builders, hosts, and service providers who are enrolled as Registered Members in the Microsoft Partner Program and who distribute or influence the acquisition of Microsoft software and Microsoft-based solutions by end customers. ---------------------------------- that describes a pretty broad group. "influence the aquisition of Microsoft software and Microsoft-bases solutions by end customers" can include a whole lot of people and businesses. I think Microsoft is glad to have them paying something every year. GK On 3/2/06, Steve Conklin wrote: > I have picked up a new client, mostly for server work, and when I > asked him if his Windows XP and Server 2003 were properly licensed, he > showed me an Action Pack. This is a real estate office, but > apparently because the word "consulting" is in the company name, it > was able to be registered to whatever level necessary to get an Action Pack. > > The question is, is there any long term risk associated with this? > Are these things re-newable an unlimited number of times? Will MS > ever ask to see a list of how many clients you have influenced to buy > their products through your Ac.Pack? Or did this company find a > loophole you could drive a truck through? > > I know there are a few Action Packers out there; I am an MSDN-U > myself, so I don't any details about this thing. > > Thanks for any insight, > Steve > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Gary Kjos garykjos at gmail.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Thu Mar 2 12:46:32 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 2 Mar 2006 10:46:32 -0800 Subject: [AccessD] Table naming conventions Message-ID: The big advantage to it is that the Access engine knows immediately that you are referring to something that belongs to the object rather than having to check to see if it is a variable. Misspellings bite, and not using Me doesn't tell the engine that it needs to check the spelling. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 02, 2006 10:32 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions On a related note, does everyone use/not use Me. when referring to a control in code? Any advantage other than the auto-fill to using Me.? TIA Rocky Charlotte Foust wrote: > You use suffixes for ease of navigation. I prefer prefixes for > grouping by types of objects. Different strokes. > > Charlotte > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, > Lambert > Sent: Thursday, March 02, 2006 6:16 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Table naming conventions > > > Not read all this, but one point I want to make is "why are people > obsessed with PREFIXES?" > > I use the "_tbl" SUFFIX in my table names. Why? So that when I sort > the list of tables I can use the initial letter of the table name to > quickly jump to it using the keyboard. If they all begin with "tbl" > you cannot do that. Simple. :-) > > Lambert > > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From harkinsss at bellsouth.net Thu Mar 2 13:04:50 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Thu, 2 Mar 2006 14:04:50 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: <1D7828CDB8350747AFE9D69E0E90DA1F1DDB2286@xlivmbx21.aig.com> Message-ID: <000301c63e2c$2f5d88e0$b6b3d6d1@SUSANONE> I agree and it's a bit of a nuisance with forms and reports -- trying to sort them in a list for users -- big pain if they're prefixed with frm or rpt. Susan H. All I'm really saying is that the Access user interface allows you to select an object in the database window by typing the initial letter. Type 'D' and the interface will jump to the first object in the list that starts with a D. Type D again to jump to the next one. That's why I use suffixes instead of prefixes. If you have a common prefix for your objects, you lose this handy navigation feature. From DWUTKA at marlow.com Thu Mar 2 12:59:35 2006 From: DWUTKA at marlow.com (DWUTKA at marlow.com) Date: Thu, 2 Mar 2006 12:59:35 -0600 Subject: [AccessD] OT: farewell Message-ID: <17724746D360394AA3BFE5B8D40A9C1BD832@main2.marlow.com> Why don't you subscribe to OT, so you can keep in touch! ;) We'll miss ya Roz! Drew -----Original Message----- From: Roz Clarke [mailto:zora_db at yahoo.com] Sent: Thursday, March 02, 2006 9:53 AM To: Access Developers discussion and problem solving Subject: [AccessD] OT: farewell Hi guys. Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 months. I am no longer working in IT, having given up my job and taken up a Masters in Creative Writing. Whilst I may have the occasional web project to work on, I have no plans to return to development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing all your familiar names in my inbox every day. So I am leaving the list and standing down as a moderator. It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything I know about database development and a lot more besides, but I've had tears and laughter along the way and a fantastic trip to Germany into the bargain. Thank you all for being invaluable 'virtual colleagues', but above all for being friends. Love and hugs Roz PS what's the OT list like these days? ;) ___________________________________________________________ NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From DWUTKA at marlow.com Thu Mar 2 13:00:15 2006 From: DWUTKA at marlow.com (DWUTKA at marlow.com) Date: Thu, 2 Mar 2006 13:00:15 -0600 Subject: [AccessD] OT: farewell Message-ID: <17724746D360394AA3BFE5B8D40A9C1BD833@main2.marlow.com> Yes, and Alan could critique her creative writing..... ;) Drew -----Original Message----- From: Gary Kjos [mailto:garykjos at gmail.com] Sent: Thursday, March 02, 2006 10:04 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT: farewell Good Luck Roz. We would certainly love to have you join the OT list. It's a nice chatty place. Well usually nice. Chatty nonetheless. ;-) On 3/2/06, Roz Clarke wrote: > Hi guys. > > Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. > > Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 > months. I am no longer working in IT, having given up my job and taken up a Masters in Creative > Writing. Whilst I may have the occasional web project to work on, I have no plans to return to > development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing > all your familiar names in my inbox every day. > > So I am leaving the list and standing down as a moderator. > > It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything > I know about database development and a lot more besides, but I've had tears and laughter along > the way and a fantastic trip to Germany into the bargain. > > Thank you all for being invaluable 'virtual colleagues', but above all for being friends. > > Love and hugs > > Roz > > PS what's the OT list like these days? ;) > > > > ___________________________________________________________ > NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Gary Kjos garykjos at gmail.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From developer at ultradnt.com Thu Mar 2 13:08:03 2006 From: developer at ultradnt.com (Steve Conklin) Date: Thu, 2 Mar 2006 14:08:03 -0500 Subject: [AccessD] OT - Action Pack In-Reply-To: Message-ID: <200603021907.k22J7wj63845@ultradnt.com> Charlotte, I agree 100%. Their previous consultant sent them on this path. When I asked for their W2k3 CD, that's when I saw Action Pack. I kept quiet (temporarily); I wanted to post here first to try to begin to assess their risk. Steve -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Thursday, March 02, 2006 1:44 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT - Action Pack Well, if MS ever decides to close that loophole, the EULA requires that they uninstall the software and any of its supporting files from all their machines. I've heard of people cheating like this, it's like those who buy the Academic edition even though it isn't licensed for commercial use. If we aren't honest about our licenses, how can our clients/customers/employees trust us? Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Conklin Sent: Thursday, March 02, 2006 10:20 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT - Action Pack Thanks for the link. But there's no way this real estate office does any influencing over anything computer related. There's no stretching the definition of their business to fit any of that, so that's why I wanted to know if there is any risk of them losing theses licenses. Seems to me that they have found a loophole that any business with <= 10 PC's and 1 Server can exploit. Steve -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gary Kjos Sent: Thursday, March 02, 2006 12:38 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT - Action Pack https://partner.microsoft.com/40009735 has all the info. here's a quote from the FAQ --------------------------------------- Who can subscribe to the Microsoft Action Pack? The Microsoft Action Pack Subscription is available exclusively to consultants, value-added resellers, value-added providers, system integrators, developers, system builders, hosts, and service providers who are enrolled as Registered Members in the Microsoft Partner Program and who distribute or influence the acquisition of Microsoft software and Microsoft-based solutions by end customers. ---------------------------------- that describes a pretty broad group. "influence the aquisition of Microsoft software and Microsoft-bases solutions by end customers" can include a whole lot of people and businesses. I think Microsoft is glad to have them paying something every year. GK On 3/2/06, Steve Conklin wrote: > I have picked up a new client, mostly for server work, and when I > asked him if his Windows XP and Server 2003 were properly licensed, he > showed me an Action Pack. This is a real estate office, but > apparently because the word "consulting" is in the company name, it > was able to be registered to whatever level necessary to get an Action Pack. > > The question is, is there any long term risk associated with this? > Are these things re-newable an unlimited number of times? Will MS > ever ask to see a list of how many clients you have influenced to buy > their products through your Ac.Pack? Or did this company find a > loophole you could drive a truck through? > > I know there are a few Action Packers out there; I am an MSDN-U > myself, so I don't any details about this thing. > > Thanks for any insight, > Steve > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Gary Kjos garykjos at gmail.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From starkey at wanadoo.nl Thu Mar 2 13:13:34 2006 From: starkey at wanadoo.nl (StaRKeY) Date: Thu, 2 Mar 2006 20:13:34 +0100 Subject: [AccessD] OT: farewell In-Reply-To: <20060302183549.37301.qmail@web50108.mail.yahoo.com> Message-ID: <001301c63e2d$6711d470$0400a8c0@PC1> Roz, all the best wishes in writing!! Eric Starkenburg Netherlands -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Roz Clarke Sent: Thursday, March 02, 2006 7:36 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT: farewell 'When' I'm published! Thank you for the vote of confidence, Andy. I'm sure that 'when' the novel is published I'll be shouting it from the rooftops - don't worry, you'll hear me! I tried to let you know on the moderators list but I don't seem to be able to post to it at the moment - so sorry for not giving you a seperate heads-up. You are more than sage enough to manage the moderating job without me - all of you mods are - and I will miss you, too. Take care (of the list and yourself) Roz --- Andy Lacey wrote: > As I'm not on OT I'll say goodbye now Roz, and good luck with the writing. > When you're published please let the list know somehow cos I'd love to read > it. I'll even BUY it for heaven's sake. > > And many thanks for your sage words on the moderator's list. You will be > sorely missed. > > -- > Andy Lacey > http://www.minstersystems.co.uk > > > > -----Original Message----- > > From: accessd-bounces at databaseadvisors.com > > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Roz Clarke > > Sent: 02 March 2006 16:22 > > To: Access Developers discussion and problem solving > > Subject: Re: [AccessD] OT: farewell > > > > > > LOL > > > > If I had a pound for every time someone's suggested that I'd > > be almost as rich as JK Rowling... well, OK, NOWHERE NEAR as > > rich as JK Rowling, but it would be enough to get a round of > > drinks in for all of AccessD. > > > > I am coming to OT, so this is only an arrivederci thread now. :) > > > > We'll see how long I last this time. > > > > --- Lembit Soobik wrote: > > > > > Roz, > > > I wish you a lot success with your writing (how about a > > Harry Potter > > > type > > > book :-)) > > > > > > why not log into OT at least to say hello. you will sure be welcome. > > > > > > Lembit > > > > > > ----- Original Message ----- > > > From: "Roz Clarke" > > > To: "Access Developers discussion and problem solving" > > > > > > Sent: Thursday, March 02, 2006 4:53 PM > > > Subject: [AccessD] OT: farewell > > > > > > > > > > Hi guys. > > > > > > > > Sorry to bust up your Thursday with an OT goodbye thread, but the > > > > moment > > > > is upon me. > > > > > > > > Those who ever noticed me at all, may have noticed that I haven't > > > > posted > > > > to Accessd in the last 6 > > > > months. I am no longer working in IT, having given up my > > job and taken up > > > > a Masters in Creative > > > > Writing. Whilst I may have the occasional web project to > > work on, I have > > > > no plans to return to > > > > development career-wise. The fact is, I only really > > stayed subscribed for > > > > the comfort of seeing > > > > all your familiar names in my inbox every day. > > > > > > > > So I am leaving the list and standing down as a moderator. > > > > > > > > It's been a good ten years. Not only do I owe a great deal to the > > > > list, > > > > which taught me everything > > > > I know about database development and a lot more besides, > > but I've had > > > > tears and laughter along > > > > the way and a fantastic trip to Germany into the bargain. > > > > > > > > Thank you all for being invaluable 'virtual colleagues', > > but above > > > > all for > > > > being friends. > > > > > > > > Love and hugs > > > > > > > > Roz > > > > > > > > PS what's the OT list like these days? ;) > > > > > > > > > > > > > > > > ___________________________________________________________ > > > > NEW Yahoo! Cars - sell your car and browse thousands of > > new and used > > > > cars > > > > online! http://uk.cars.yahoo.com/ > > > > -- > > > > AccessD mailing list > > > > AccessD at databaseadvisors.com > > > > http://databaseadvisors.com/mailman/listinfo/accessd > > > > Website: http://www.databaseadvisors.com > > > > > > > > > > > > -- > > > > No virus found in this incoming message. > > > > Checked by AVG Free Edition. > > > > Version: 7.1.375 / Virus Database: 268.1.1/272 - Release > > Date: 01.03.2006 > > > > > > > > > > > > > > -- > > > AccessD mailing list > > > AccessD at databaseadvisors.com > > > http://databaseadvisors.com/mailman/listinfo/accessd > > > Website: http://www.databaseadvisors.com > > > > > > > > > > > > > ___________________________________________________________ > > To help you stay safe and secure online, we've developed the > > all new Yahoo! Security Centre. http://uk.security.yahoo.com > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > ___________________________________________________________ Win a BlackBerry device from O2 with Yahoo!. Enter now. http://www.yahoo.co.uk/blackberry -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com --- avast! Antivirus: Uitgaande bericht is niet besmet. Virus Gegevensbestand (VPS): 0609-2, 02-03-2006 Getest op: 02-03-2006 20:13:35 uur avast! auteursrecht (c) 1988-2005 ALWIL Software. http://www.avast.com From wdhindman at bellsouth.net Thu Mar 2 13:41:11 2006 From: wdhindman at bellsouth.net (William Hindman) Date: Thu, 2 Mar 2006 14:41:11 -0500 Subject: [AccessD] OT - Action Pack References: <200603021907.k22J7wj63845@ultradnt.com> Message-ID: <003101c63e31$439c1560$6101a8c0@50NM721> ...is the Action Pak subscription actually in their name or the former consultant's? William ----- Original Message ----- From: "Steve Conklin" To: "'Access Developers discussion and problem solving'" Sent: Thursday, March 02, 2006 2:08 PM Subject: Re: [AccessD] OT - Action Pack > Charlotte, I agree 100%. Their previous consultant sent them on this > path. > When I asked for their W2k3 CD, that's when I saw Action Pack. I kept > quiet > (temporarily); I wanted to post here first to try to begin to assess their > risk. > > Steve > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust > Sent: Thursday, March 02, 2006 1:44 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] OT - Action Pack > > Well, if MS ever decides to close that loophole, the EULA requires that > they > uninstall the software and any of its supporting files from all their > machines. I've heard of people cheating like this, it's like those who > buy > the Academic edition even though it isn't licensed for commercial use. If > we aren't honest about our licenses, how can our > clients/customers/employees > trust us? > > Charlotte Foust > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Conklin > Sent: Thursday, March 02, 2006 10:20 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] OT - Action Pack > > > Thanks for the link. But there's no way this real estate office does any > influencing over anything computer related. There's no stretching the > definition of their business to fit any of that, so that's why I wanted to > know if there is any risk of them losing theses licenses. > Seems to me that they have found a loophole that any business with <= 10 > PC's and 1 Server can exploit. > > > Steve > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gary Kjos > Sent: Thursday, March 02, 2006 12:38 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] OT - Action Pack > > https://partner.microsoft.com/40009735 > > has all the info. > > here's a quote from the FAQ > --------------------------------------- > > Who can subscribe to the Microsoft Action Pack? > The Microsoft Action Pack Subscription is available exclusively to > consultants, value-added resellers, value-added providers, system > integrators, developers, system builders, hosts, and service providers who > are enrolled as Registered Members in the Microsoft Partner Program and > who > distribute or influence the acquisition of Microsoft software and > Microsoft-based solutions by end customers. > > ---------------------------------- > > that describes a pretty broad group. "influence the aquisition of > Microsoft > software and Microsoft-bases solutions by end customers" can include a > whole > lot of people and businesses. > > I think Microsoft is glad to have them paying something every year. > > GK > > > On 3/2/06, Steve Conklin wrote: >> I have picked up a new client, mostly for server work, and when I >> asked him if his Windows XP and Server 2003 were properly licensed, he > >> showed me an Action Pack. This is a real estate office, but >> apparently because the word "consulting" is in the company name, it >> was able to be registered to whatever level necessary to get an Action > Pack. >> >> The question is, is there any long term risk associated with this? >> Are these things re-newable an unlimited number of times? Will MS >> ever ask to see a list of how many clients you have influenced to buy >> their products through your Ac.Pack? Or did this company find a >> loophole you could drive a truck through? >> >> I know there are a few Action Packers out there; I am an MSDN-U >> myself, so I don't any details about this thing. >> >> Thanks for any insight, >> Steve >> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > > > -- > Gary Kjos > garykjos at gmail.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From developer at ultradnt.com Thu Mar 2 13:46:36 2006 From: developer at ultradnt.com (Steve Conklin) Date: Thu, 2 Mar 2006 14:46:36 -0500 Subject: [AccessD] OT - Action Pack In-Reply-To: <003101c63e31$439c1560$6101a8c0@50NM721> Message-ID: <200603021946.k22JkWj68683@ultradnt.com> It's in the client's corporate name, which includes the word "consulting" but not "real estate". Steve -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of William Hindman Sent: Thursday, March 02, 2006 2:41 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT - Action Pack ...is the Action Pak subscription actually in their name or the former consultant's? William ----- Original Message ----- From: "Steve Conklin" To: "'Access Developers discussion and problem solving'" Sent: Thursday, March 02, 2006 2:08 PM Subject: Re: [AccessD] OT - Action Pack > Charlotte, I agree 100%. Their previous consultant sent them on this > path. > When I asked for their W2k3 CD, that's when I saw Action Pack. I kept > quiet > (temporarily); I wanted to post here first to try to begin to assess their > risk. > > Steve > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust > Sent: Thursday, March 02, 2006 1:44 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] OT - Action Pack > > Well, if MS ever decides to close that loophole, the EULA requires that > they > uninstall the software and any of its supporting files from all their > machines. I've heard of people cheating like this, it's like those who > buy > the Academic edition even though it isn't licensed for commercial use. If > we aren't honest about our licenses, how can our > clients/customers/employees > trust us? > > Charlotte Foust > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Conklin > Sent: Thursday, March 02, 2006 10:20 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] OT - Action Pack > > > Thanks for the link. But there's no way this real estate office does any > influencing over anything computer related. There's no stretching the > definition of their business to fit any of that, so that's why I wanted to > know if there is any risk of them losing theses licenses. > Seems to me that they have found a loophole that any business with <= 10 > PC's and 1 Server can exploit. > > > Steve > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gary Kjos > Sent: Thursday, March 02, 2006 12:38 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] OT - Action Pack > > https://partner.microsoft.com/40009735 > > has all the info. > > here's a quote from the FAQ > --------------------------------------- > > Who can subscribe to the Microsoft Action Pack? > The Microsoft Action Pack Subscription is available exclusively to > consultants, value-added resellers, value-added providers, system > integrators, developers, system builders, hosts, and service providers who > are enrolled as Registered Members in the Microsoft Partner Program and > who > distribute or influence the acquisition of Microsoft software and > Microsoft-based solutions by end customers. > > ---------------------------------- > > that describes a pretty broad group. "influence the aquisition of > Microsoft > software and Microsoft-bases solutions by end customers" can include a > whole > lot of people and businesses. > > I think Microsoft is glad to have them paying something every year. > > GK > > > On 3/2/06, Steve Conklin wrote: >> I have picked up a new client, mostly for server work, and when I >> asked him if his Windows XP and Server 2003 were properly licensed, he > >> showed me an Action Pack. This is a real estate office, but >> apparently because the word "consulting" is in the company name, it >> was able to be registered to whatever level necessary to get an Action > Pack. >> >> The question is, is there any long term risk associated with this? >> Are these things re-newable an unlimited number of times? Will MS >> ever ask to see a list of how many clients you have influenced to buy >> their products through your Ac.Pack? Or did this company find a >> loophole you could drive a truck through? >> >> I know there are a few Action Packers out there; I am an MSDN-U >> myself, so I don't any details about this thing. >> >> Thanks for any insight, >> Steve >> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > > > -- > Gary Kjos > garykjos at gmail.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Thu Mar 2 12:55:18 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Thu, 2 Mar 2006 21:55:18 +0300 Subject: [AccessD] Table naming conventions References: <44073A15.4080206@san.rr.com> Message-ID: <00f101c63e32$fa4fd2a0$6401a8c0@Nant> <<< Any advantage other than the auto-fill to using Me.? >>> Rocky, If you move code out of form/report module then if Me. used it will be mechanical find and replace to change Me. to . Shamil ----- Original Message ----- From: "Rocky Smolin - Beach Access Software" To: "Access Developers discussion and problem solving" Sent: Thursday, March 02, 2006 9:31 PM Subject: Re: [AccessD] Table naming conventions > On a related note, does everyone use/not use Me. when referring to a > control in code? Any advantage other than the auto-fill to using Me.? > > TIA > > Rocky > > > Charlotte Foust wrote: >> You use suffixes for ease of navigation. I prefer prefixes for grouping >> by types of objects. Different strokes. >> >> Charlotte >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, >> Lambert >> Sent: Thursday, March 02, 2006 6:16 AM >> To: 'Access Developers discussion and problem solving' >> Subject: Re: [AccessD] Table naming conventions >> >> >> Not read all this, but one point I want to make is "why are people >> obsessed with PREFIXES?" >> >> I use the "_tbl" SUFFIX in my table names. Why? So that when I sort the >> list of tables I can use the initial letter of the table name to quickly >> jump to it using the keyboard. If they all begin with "tbl" you cannot >> do that. Simple. :-) >> >> Lambert >> >> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From shamil at users.mns.ru Thu Mar 2 13:53:26 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Thu, 2 Mar 2006 22:53:26 +0300 Subject: [AccessD] Table naming conventions References: Message-ID: <00f201c63e32$fa713d50$6401a8c0@Nant> <<< The underscore annoys me because it is harder to type than just a > capital letter, >>> I don't use underscore because they weren't used in LRNC. But typing it for me isn't a big trouble :) <<< I really think it boils down to whatever works for the developer, >>> Sure it is. I just accepted LRNC and I use it naturally for a long time. But to use other naming conventions if they are well systematically designed and applied (like JC's :)) wouldn't be a problem for me:) For example in VB.NET/C# I do not use Hungarian notation/LRNC as it's recommended by MS and I like it too - I'm flexible :) <<< It only becomes an issue in a team development environment, where > using the same or at least compatible naming conventions is critical. >>> Yes, in a team environment the systematic use of naming conventions is critical - the naming conventions approved by team leader :) - I mean any discussions what is better to use prefixes or suffixes or both or ... should be "rudely"/decisively suppressed by team leader as soon as naming conventions are defined and accepted and a project starts - teamwork isn't a discussion club... :) Prefixes or suffixes in variables and even tables', queries' etc. names are getting obsolete - this is my current opinion. I still use them in MS Access/VBA but not in VS.NET development (except control names prefixes but these are also becoming not easy to use with so many different types of controls in VS.NET 2005 Winforms). Still using table name prefixes in tables' field names look reasonable from practical point of view (to build queries quicker without field names collisions first of all) but with mainstream tendency of relational back-ends becoming something more than just normalized databases and morphing to XML hierarchies ... -> and finally somewhere in the future to ORDBMSs or pure OODBMSs - with this clear mainstream tendency the usage of prefixes or suffixes is clearly becoming generally depreciated... I do use tbl, tlkp, qsel, qapp, ... etc. prefixes with table names and queries but this usage is looking more and more obsolete because a table can migrate to a set of queries(views), stored procedures, UDFs, web services etc. and vice versa then renaming could become a real time consuming and error prone problem... I did use LRNC prefixes to clearly recognize source object type, to group objects, to speed-up development but it's clear that in real life modern development using only prefixes or only suffixes or both isn't enough - there could be many useful groupings/sortings of the same types or different types of objects - and modern development tools supply different features to natively keep and use such groupings/sortings.... There should be clear practical reasons to use prefixes or suffixes as it was with LRNC and MS Access/Office development for the last 10 years or with Hungarian notation and MSVC++ for the last 15 years ago, VB6 for the last 10 years... I mean it shouldn't be like "We use prefixes or suffixes because our fathers and grand-fathers used them, we forgot/don't know why they are so keen and what for they are needed, we do not see any practical reasons now to use them but we do use them to keep the traditions alive...." Shamil ----- Original Message ----- From: "Charlotte Foust" To: "Access Developers discussion and problem solving" Sent: Thursday, March 02, 2006 7:03 PM Subject: Re: [AccessD] Table naming conventions > Shamil, > > I, too, have used Stan's naming convention and have since it was > originally introduced as LRNC (R went off and developed his own later > ;o>). The underscore annoys me because it is harder to type than just a > capital letter, which is, I believe, the reason it was discouraged in > LRNC. I really think it boils down to whatever works for the developer, > but some kind of naming convention is critical. I've worked with some > of John's tables (bet you didn't know that, did you, JC?) and I > absolutely HATE his naming convention. I couldn't use it in a million > years and I break out in hives just thinking of it, but it works for > him. It only becomes an issue in a team development environment, where > using the same or at least compatible naming conventions is critical. > > Charlotte Foust > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Thursday, March 02, 2006 5:11 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Table naming conventions > > > John, > > AFAIS your naming conventions are based on LRNC (see e.g. Stan Leszinsky > "MS > Access 97 Expert Solutions"). > One exception are field names - the recommended in LRNC way is to not > use > underscore and to use 3-4 chars standard abbreviations to prefix field > names: > > - Company - comp > - Person - pers > - Employee - empl or emp > ... > > I do use LRNC for the last 10 years. It worked very well in many > situations. > > Best regards, > Shamil > -- > Web: http://smsconsulting.spb.ru/shamil_s > > ----- Original Message ----- > From: "John Colby" > To: "'Access Developers discussion and problem solving'" > > Sent: Thursday, March 02, 2006 2:12 PM > Subject: [AccessD] Table naming conventions > > >> Folks, >> >> There has been a bit of discussion in the past few days re naming >> conventions as applied to tables. I have used conventions for many >> years and I sat down tonight and started documenting the conventions I > >> use. I have shared my conventions in the past and will do so again >> here. I do these things because they work for me, in my environment. >> >> I have built a framework, which I use in any project where it is >> allowed. Having conventions allows me to make assumptions about how >> things will be handled, and write code that used those assumptions to >> make decisions. Even if you do not use a framework, having objects >> defined in a consistent manner >> can just generally make life easier. >> >> Feel free to discuss the methods and assumptions that I make, add how >> you >> do >> things (and WHY) etc. Don't bother calling the things I do stupid, if > >> they >> don't work for you, don't use them. Share what does work for you, and > WHY >> you do what you do. If you do something exactly opposite of the way I > do >> it, explain why you prefer to do it that way. I find rules useless. > I >> find >> reasons very useful. >> >> Table Definition Specification >> Tables are defined in a consistent manner so that they can be >> recognized >> and >> worked with easily. All of the definitions that I use have been >> assimilated >> from other people's ideas or developed over time, and all such > conventions >> exist to solve a problem, whether that be readability, distinguishing >> functionality or allowing the framework to make assumptions. >> >> Table definitions consist of several parts. >> 1. Tables always use an autonumber PK, whether it appears to need one >> or not. This is done for a variety of reasons, ranging from divorcing > >> the "table link" (PK/FK)from the unique index and making it trivial to > >> change that unique index without changing the "table link", to the >> consistency of PK data type which allows specific assumptions in the >> framework. The PK is always a long integer, and a single field, which > >> easily allows searches and >> other programmatic manipulations that wouldn't be possible or would be >> tedious if the PK was a multi-field set. >> 2. Table naming conventions. Tables are prefixed with 'tbl' so that > as >> table names are encountered in forms, reports and queries they can be >> distinguished from other objects such as queries. Thus tblPerson, >> tblCompany, tblVehicle. >> 3. I have used other table prefixes to cause tables to group by type >> and be visually distinguishable from each other. Tbl for main tables, > >> tlkp >> for lookup tables, tmm for many to many tables, ttmp for temporary > tables >> etc. There is a lot of discussion about whether grouping by type is >> preferable to grouping by functionality, i.e. all accounting tables > group >> together, all shipping tables group together etc. That is very much a >> 'preference' kind of thing. I have done both, even within the same > db. >> It >> is possible to throw a "type" suffix on the end of the tables > separated by >> an underscore if you care to group by function but be able to > distinguish >> table type. tblPeopleVehicle_MM for a many to many, tblState_LKP for > a >> lookup. >> 4. Field naming conventions. Field naming conventions have several >> parts. In general field and table names should only change in the > most >> dire >> circumstances. If any object name changes, I have to do a search and >> replace to find and fix them. If there are a bunch of Fes working > against >> a >> single BE, it becomes a nightmare. >> a. Data type prefixes are never used in field names because of issues >> with data type changes. There are just too many data types, and they > are >> often changed well into a project, for very valid reasons. >> b. A prefix to the field name is created using the first two > characters >> the table name where the table name is a single word - PEople, > VEhicle, >> COmpany. In cases where the table name is multiple words, the first >> character of each word is used. InvoiceLineItem ILI, PeopleVehicle > PV, >> CompanyProperty CP. An underscore is used to distinguish the field > name >> prefix from the rest of the field name. PE_ID, PE_FName, PE_SSN. Use > of >> the first two characters if each word is acceptable to avoid > collisions >> and >> make the field prefix more readable. PEopleVEhicle PEVE_ID. >> >> Obviously as a project gets large a table is required to track field >> name prefixes already used, but for small to medium sized projects >> this allows the developer to rapidly recognize which table a field >> comes from just from the field name. If this naming convention is >> rigorously followed then every >> field in the db has a unique name, which allows "search and replace" > type >> of >> operations to be performed without manual intervention. >> c. IDs (PK/FKs) are distinguished by the capitalized characters 'ID' >> in the field name. >> d. PKs use the convention of Prefix characters, followed by an >> underscore followed by ID. PE_ID, VE_ID, CO_ID. >> e. FKs use the convention of Prefix characters, followed by an >> underscore, followed by ID followed by the prefix characters of the >> foreign >> table. PV_IDPE, PV_IDVE. CP_IDCO. By placing ID immediately > following >> the >> underscore, PKs and FKs can be immediately distinguished from other > types >> of >> fields. >> f. PKs and FKs are grouped at the top of the field list in design > view. >> This is done so that the PK and all FKs can be seen at a glance > without >> having to search through the fields looking for PKs/FKs. >> >> >> Thus field names look like: >> tblVehicle: >> VE_ID >> VE_Color >> VE_Make >> >> tblPeople >> PE_ID >> PE_LName >> PE_FName >> PE_SSN >> >> tblPeopleVehicle >> PV_ID >> PV_IDPE >> PV_IDVE >> PV_DateAssigned >> >> As you can see, by using the _ character it is easy to distinguish the > >> prefix from the rest of the name. By using the ID immediately after >> the underscore it is easy to find every PK/FK field. By grouping all >> the PKs/FKs at the top of the table, no searching is required to find >> the PKs/FKs. By using the _IDXXXX construct, it is easy to visually >> look at the FK and just "see" what table that is the PK in. >> >> As I said above, to me reasons are the important thing. They define >> why I do what I do and allow me to evaluate whether making a change to > >> what I do is useful to me. Rules without the associated reason are >> useless since I cannot evaluate how it applies to what I am trying to >> do. >> >> Rules are made to be broken, but I want to know the danger of doing >> so. >> >> John W. Colby >> www.ColbyConsulting.com >> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Thu Mar 2 14:58:20 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 2 Mar 2006 12:58:20 -0800 Subject: [AccessD] Table naming conventions Message-ID: I do use naming conventions in VB.Net, at least as much as I'm allowed to. My boss decreed we would use suffixes instead of prefixes to name forms, reports, etc., so related objects would sort together in the project. Now you have to read the entire name of the object to find out what it is! We've never used prefixes on table names, or fields, so that hasn't been an issue in converting to .Net. I prefer prefixes on table names and I prefer prefixes because they allow my eye to skate over the object types I don't want to examine without having to read the entire name of the object. SIGH! I can't have everything I want. Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Thursday, March 02, 2006 11:53 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions <<< The underscore annoys me because it is harder to type than just a > capital letter, >>> I don't use underscore because they weren't used in LRNC. But typing it for me isn't a big trouble :) <<< I really think it boils down to whatever works for the developer, >>> Sure it is. I just accepted LRNC and I use it naturally for a long time. But to use other naming conventions if they are well systematically designed and applied (like JC's :)) wouldn't be a problem for me:) For example in VB.NET/C# I do not use Hungarian notation/LRNC as it's recommended by MS and I like it too - I'm flexible :) <<< It only becomes an issue in a team development environment, where > using the same or at least compatible naming conventions is critical. >>> Yes, in a team environment the systematic use of naming conventions is critical - the naming conventions approved by team leader :) - I mean any discussions what is better to use prefixes or suffixes or both or ... should be "rudely"/decisively suppressed by team leader as soon as naming conventions are defined and accepted and a project starts - teamwork isn't a discussion club... :) Prefixes or suffixes in variables and even tables', queries' etc. names are getting obsolete - this is my current opinion. I still use them in MS Access/VBA but not in VS.NET development (except control names prefixes but these are also becoming not easy to use with so many different types of controls in VS.NET 2005 Winforms). Still using table name prefixes in tables' field names look reasonable from practical point of view (to build queries quicker without field names collisions first of all) but with mainstream tendency of relational back-ends becoming something more than just normalized databases and morphing to XML hierarchies ... -> and finally somewhere in the future to ORDBMSs or pure OODBMSs - with this clear mainstream tendency the usage of prefixes or suffixes is clearly becoming generally depreciated... I do use tbl, tlkp, qsel, qapp, ... etc. prefixes with table names and queries but this usage is looking more and more obsolete because a table can migrate to a set of queries(views), stored procedures, UDFs, web services etc. and vice versa then renaming could become a real time consuming and error prone problem... I did use LRNC prefixes to clearly recognize source object type, to group objects, to speed-up development but it's clear that in real life modern development using only prefixes or only suffixes or both isn't enough - there could be many useful groupings/sortings of the same types or different types of objects - and modern development tools supply different features to natively keep and use such groupings/sortings.... There should be clear practical reasons to use prefixes or suffixes as it was with LRNC and MS Access/Office development for the last 10 years or with Hungarian notation and MSVC++ for the last 15 years ago, VB6 for the last 10 years... I mean it shouldn't be like "We use prefixes or suffixes because our fathers and grand-fathers used them, we forgot/don't know why they are so keen and what for they are needed, we do not see any practical reasons now to use them but we do use them to keep the traditions alive...." Shamil From Jim.Hale at FleetPride.com Thu Mar 2 14:46:20 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Thu, 2 Mar 2006 14:46:20 -0600 Subject: [AccessD] Table naming conventions Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDA73@corp-es01.fleetpride.com> Me.do Jim Hale -----Original Message----- From: Rocky Smolin - Beach Access Software [mailto:bchacc at san.rr.com] Sent: Thursday, March 02, 2006 12:32 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions On a related note, does everyone use/not use Me. when referring to a control in code? Any advantage other than the auto-fill to using Me.? TIA Rocky Charlotte Foust wrote: > You use suffixes for ease of navigation. I prefer prefixes for grouping > by types of objects. Different strokes. > > Charlotte > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, > Lambert > Sent: Thursday, March 02, 2006 6:16 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Table naming conventions > > > Not read all this, but one point I want to make is "why are people > obsessed with PREFIXES?" > > I use the "_tbl" SUFFIX in my table names. Why? So that when I sort the > list of tables I can use the initial letter of the table name to quickly > jump to it using the keyboard. If they all begin with "tbl" you cannot > do that. Simple. :-) > > Lambert > > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From jwcolby at ColbyConsulting.com Thu Mar 2 15:13:14 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 2 Mar 2006 16:13:14 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: <004501c63dfa$d3f1b7f0$6401a8c0@Nant> Message-ID: <000e01c63e3e$1f6b0680$647aa8c0@ColbyM6805> I started with LRNS, and still use it for variables etc. I do not claim to be the originator of anything, I adapt where possible. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Thursday, March 02, 2006 8:11 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions John, AFAIS your naming conventions are based on LRNC (see e.g. Stan Leszinsky "MS Access 97 Expert Solutions"). One exception are field names - the recommended in LRNC way is to not use underscore and to use 3-4 chars standard abbreviations to prefix field names: - Company - comp - Person - pers - Employee - empl or emp ... I do use LRNC for the last 10 years. It worked very well in many situations. Best regards, Shamil -- Web: http://smsconsulting.spb.ru/shamil_s ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Thursday, March 02, 2006 2:12 PM Subject: [AccessD] Table naming conventions > Folks, > > There has been a bit of discussion in the past few days re naming > conventions as applied to tables. I have used conventions for many years > and I sat down tonight and started documenting the conventions I use. I > have shared my conventions in the past and will do so again here. I do > these things because they work for me, in my environment. > > I have built a framework, which I use in any project where it is allowed. > Having conventions allows me to make assumptions about how things will be > handled, and write code that used those assumptions to make decisions. > Even > if you do not use a framework, having objects defined in a consistent > manner > can just generally make life easier. > > Feel free to discuss the methods and assumptions that I make, add how you > do > things (and WHY) etc. Don't bother calling the things I do stupid, if > they > don't work for you, don't use them. Share what does work for you, and WHY > you do what you do. If you do something exactly opposite of the way I do > it, explain why you prefer to do it that way. I find rules useless. I > find > reasons very useful. > > Table Definition Specification > Tables are defined in a consistent manner so that they can be recognized > and > worked with easily. All of the definitions that I use have been > assimilated > from other people's ideas or developed over time, and all such conventions > exist to solve a problem, whether that be readability, distinguishing > functionality or allowing the framework to make assumptions. > > Table definitions consist of several parts. > 1. Tables always use an autonumber PK, whether it appears to need one > or not. This is done for a variety of reasons, ranging from divorcing the > "table link" (PK/FK)from the unique index and making it trivial to change > that unique index without changing the "table link", to the consistency of > PK data type which allows specific assumptions in the framework. The PK > is > always a long integer, and a single field, which easily allows searches > and > other programmatic manipulations that wouldn't be possible or would be > tedious if the PK was a multi-field set. > 2. Table naming conventions. Tables are prefixed with 'tbl' so that as > table names are encountered in forms, reports and queries they can be > distinguished from other objects such as queries. Thus tblPerson, > tblCompany, tblVehicle. > 3. I have used other table prefixes to cause tables to group by type > and be visually distinguishable from each other. Tbl for main tables, > tlkp > for lookup tables, tmm for many to many tables, ttmp for temporary tables > etc. There is a lot of discussion about whether grouping by type is > preferable to grouping by functionality, i.e. all accounting tables group > together, all shipping tables group together etc. That is very much a > 'preference' kind of thing. I have done both, even within the same db. > It > is possible to throw a "type" suffix on the end of the tables separated by > an underscore if you care to group by function but be able to distinguish > table type. tblPeopleVehicle_MM for a many to many, tblState_LKP for a > lookup. > 4. Field naming conventions. Field naming conventions have several > parts. In general field and table names should only change in the most > dire > circumstances. If any object name changes, I have to do a search and > replace to find and fix them. If there are a bunch of Fes working against > a > single BE, it becomes a nightmare. > a. Data type prefixes are never used in field names because of issues > with data type changes. There are just too many data types, and they are > often changed well into a project, for very valid reasons. > b. A prefix to the field name is created using the first two characters > the table name where the table name is a single word - PEople, VEhicle, > COmpany. In cases where the table name is multiple words, the first > character of each word is used. InvoiceLineItem ILI, PeopleVehicle PV, > CompanyProperty CP. An underscore is used to distinguish the field name > prefix from the rest of the field name. PE_ID, PE_FName, PE_SSN. Use of > the first two characters if each word is acceptable to avoid collisions > and > make the field prefix more readable. PEopleVEhicle PEVE_ID. > > Obviously as a project gets large a table is required to track field name > prefixes already used, but for small to medium sized projects this allows > the developer to rapidly recognize which table a field comes from just > from > the field name. If this naming convention is rigorously followed then > every > field in the db has a unique name, which allows "search and replace" type > of > operations to be performed without manual intervention. > c. IDs (PK/FKs) are distinguished by the capitalized characters 'ID' > in the field name. > d. PKs use the convention of Prefix characters, followed by an > underscore followed by ID. PE_ID, VE_ID, CO_ID. > e. FKs use the convention of Prefix characters, followed by an > underscore, followed by ID followed by the prefix characters of the > foreign > table. PV_IDPE, PV_IDVE. CP_IDCO. By placing ID immediately following > the > underscore, PKs and FKs can be immediately distinguished from other types > of > fields. > f. PKs and FKs are grouped at the top of the field list in design view. > This is done so that the PK and all FKs can be seen at a glance without > having to search through the fields looking for PKs/FKs. > > > Thus field names look like: > tblVehicle: > VE_ID > VE_Color > VE_Make > > tblPeople > PE_ID > PE_LName > PE_FName > PE_SSN > > tblPeopleVehicle > PV_ID > PV_IDPE > PV_IDVE > PV_DateAssigned > > As you can see, by using the _ character it is easy to distinguish the > prefix from the rest of the name. By using the ID immediately after the > underscore it is easy to find every PK/FK field. By grouping all the > PKs/FKs at the top of the table, no searching is required to find the > PKs/FKs. By using the _IDXXXX construct, it is easy to visually look at > the > FK and just "see" what table that is the PK in. > > As I said above, to me reasons are the important thing. They define why I > do what I do and allow me to evaluate whether making a change to what I do > is useful to me. Rules without the associated reason are useless since I > cannot evaluate how it applies to what I am trying to do. > > Rules are made to be broken, but I want to know the danger of doing so. > > John W. Colby > www.ColbyConsulting.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Thu Mar 2 15:15:02 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 2 Mar 2006 16:15:02 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: <001701c63e0b$2f8fbf70$9ab3d6d1@SUSANONE> Message-ID: <000f01c63e3e$5f55a2a0$647aa8c0@ColbyM6805> I do use prefixes simply because it is easier for the eye to discover than suffixes (at least for Westerners). John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Thursday, March 02, 2006 10:08 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions I don't think using prefixes with the actual objects is terribly important -- I think a lot of people lend toward natural names for objects and use the prefixes for variables. Susan H. Not read all this, but one point I want to make is "why are people obsessed with PREFIXES?" I use the "_tbl" SUFFIX in my table names. Why? So that when I sort the list of tables I can use the initial letter of the table name to quickly jump to it using the keyboard. If they all begin with "tbl" you cannot do that. Simple. :-) -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Thu Mar 2 15:15:48 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 2 Mar 2006 16:15:48 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: <1D7828CDB8350747AFE9D69E0E90DA1F1DDB2286@xlivmbx21.aig.com> Message-ID: <001001c63e3e$7aa3fde0$647aa8c0@ColbyM6805> Understood, and that is a good reason for what you do! John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert Sent: Thursday, March 02, 2006 10:38 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions All I'm really saying is that the Access user interface allows you to select an object in the database window by typing the initial letter. Type 'D' and the interface will jump to the first object in the list that starts with a D. Type D again to jump to the next one. That's why I use suffixes instead of prefixes. If you have a common prefix for your objects, you lose this handy navigation feature. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Thursday, March 02, 2006 10:08 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions I don't think using prefixes with the actual objects is terribly important -- I think a lot of people lend toward natural names for objects and use the prefixes for variables. Susan H. Not read all this, but one point I want to make is "why are people obsessed with PREFIXES?" I use the "_tbl" SUFFIX in my table names. Why? So that when I sort the list of tables I can use the initial letter of the table name to quickly jump to it using the keyboard. If they all begin with "tbl" you cannot do that. Simple. :-) -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Thu Mar 2 15:17:22 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 2 Mar 2006 16:17:22 -0500 Subject: [AccessD] OT: farewell In-Reply-To: <20060302155328.19996.qmail@web50115.mail.yahoo.com> Message-ID: <001101c63e3e$b2b4ddd0$647aa8c0@ColbyM6805> Roz, Don't be a stranger. We'll miss you. Good luck in your future and pop in every once in awhile. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Roz Clarke Sent: Thursday, March 02, 2006 10:53 AM To: Access Developers discussion and problem solving Subject: [AccessD] OT: farewell Hi guys. Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 months. I am no longer working in IT, having given up my job and taken up a Masters in Creative Writing. Whilst I may have the occasional web project to work on, I have no plans to return to development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing all your familiar names in my inbox every day. So I am leaving the list and standing down as a moderator. It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything I know about database development and a lot more besides, but I've had tears and laughter along the way and a fantastic trip to Germany into the bargain. Thank you all for being invaluable 'virtual colleagues', but above all for being friends. Love and hugs Roz PS what's the OT list like these days? ;) ___________________________________________________________ NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Thu Mar 2 15:22:19 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 2 Mar 2006 16:22:19 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: <44073A15.4080206@san.rr.com> Message-ID: <001201c63e3f$63e658e0$647aa8c0@ColbyM6805> Me. Should NEVER be used to refer to controls. Dot . Should only refer to properties. Bang ! Should be used to refer to controls and objects. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 02, 2006 1:32 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions On a related note, does everyone use/not use Me. when referring to a control in code? Any advantage other than the auto-fill to using Me.? TIA Rocky Charlotte Foust wrote: > You use suffixes for ease of navigation. I prefer prefixes for > grouping by types of objects. Different strokes. > > Charlotte > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, > Lambert > Sent: Thursday, March 02, 2006 6:16 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Table naming conventions > > > Not read all this, but one point I want to make is "why are people > obsessed with PREFIXES?" > > I use the "_tbl" SUFFIX in my table names. Why? So that when I sort > the list of tables I can use the initial letter of the table name to > quickly jump to it using the keyboard. If they all begin with "tbl" > you cannot do that. Simple. :-) > > Lambert > > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From martyconnelly at shaw.ca Thu Mar 2 15:13:53 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Thu, 02 Mar 2006 13:13:53 -0800 Subject: [AccessD] OT - Action Pack References: <200603021946.k22JkWj68683@ultradnt.com> Message-ID: <44076011.6070103@shaw.ca> I have seen Action Packs assigned to numbered corporations. But if they don't renew the yearly subscriptions, security fix updates may not be available from MS update sites.. Steve Conklin wrote: >It's in the client's corporate name, which includes the word "consulting" >but not "real estate". > >Steve > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of William Hindman >Sent: Thursday, March 02, 2006 2:41 PM >To: Access Developers discussion and problem solving >Subject: Re: [AccessD] OT - Action Pack > >...is the Action Pak subscription actually in their name or the former >consultant's? > >William > >----- Original Message ----- >From: "Steve Conklin" >To: "'Access Developers discussion and problem solving'" > >Sent: Thursday, March 02, 2006 2:08 PM >Subject: Re: [AccessD] OT - Action Pack > > > > >>Charlotte, I agree 100%. Their previous consultant sent them on this >>path. >>When I asked for their W2k3 CD, that's when I saw Action Pack. I kept >>quiet >>(temporarily); I wanted to post here first to try to begin to assess their >>risk. >> >>Steve >> >> >>-----Original Message----- >>From: accessd-bounces at databaseadvisors.com >>[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust >>Sent: Thursday, March 02, 2006 1:44 PM >>To: Access Developers discussion and problem solving >>Subject: Re: [AccessD] OT - Action Pack >> >>Well, if MS ever decides to close that loophole, the EULA requires that >>they >>uninstall the software and any of its supporting files from all their >>machines. I've heard of people cheating like this, it's like those who >>buy >>the Academic edition even though it isn't licensed for commercial use. If >>we aren't honest about our licenses, how can our >>clients/customers/employees >>trust us? >> >>Charlotte Foust >> >> >>-----Original Message----- >>From: accessd-bounces at databaseadvisors.com >>[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Conklin >>Sent: Thursday, March 02, 2006 10:20 AM >>To: 'Access Developers discussion and problem solving' >>Subject: Re: [AccessD] OT - Action Pack >> >> >>Thanks for the link. But there's no way this real estate office does any >>influencing over anything computer related. There's no stretching the >>definition of their business to fit any of that, so that's why I wanted to >>know if there is any risk of them losing theses licenses. >>Seems to me that they have found a loophole that any business with <= 10 >>PC's and 1 Server can exploit. >> >> >>Steve >> >> >>-----Original Message----- >>From: accessd-bounces at databaseadvisors.com >>[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gary Kjos >>Sent: Thursday, March 02, 2006 12:38 PM >>To: Access Developers discussion and problem solving >>Subject: Re: [AccessD] OT - Action Pack >> >>https://partner.microsoft.com/40009735 >> >>has all the info. >> >>here's a quote from the FAQ >>--------------------------------------- >> >>Who can subscribe to the Microsoft Action Pack? >>The Microsoft Action Pack Subscription is available exclusively to >>consultants, value-added resellers, value-added providers, system >>integrators, developers, system builders, hosts, and service providers who >>are enrolled as Registered Members in the Microsoft Partner Program and >>who >>distribute or influence the acquisition of Microsoft software and >>Microsoft-based solutions by end customers. >> >>---------------------------------- >> >>that describes a pretty broad group. "influence the aquisition of >>Microsoft >>software and Microsoft-bases solutions by end customers" can include a >>whole >>lot of people and businesses. >> >>I think Microsoft is glad to have them paying something every year. >> >>GK >> >> >>On 3/2/06, Steve Conklin wrote: >> >> >>>I have picked up a new client, mostly for server work, and when I >>>asked him if his Windows XP and Server 2003 were properly licensed, he >>> >>> >>>showed me an Action Pack. This is a real estate office, but >>>apparently because the word "consulting" is in the company name, it >>>was able to be registered to whatever level necessary to get an Action >>> >>> >>Pack. >> >> >>>The question is, is there any long term risk associated with this? >>>Are these things re-newable an unlimited number of times? Will MS >>>ever ask to see a list of how many clients you have influenced to buy >>>their products through your Ac.Pack? Or did this company find a >>>loophole you could drive a truck through? >>> >>>I know there are a few Action Packers out there; I am an MSDN-U >>>myself, so I don't any details about this thing. >>> >>>Thanks for any insight, >>>Steve >>> >>> >>> >> >> > > -- Marty Connelly Victoria, B.C. Canada From developer at ultradnt.com Thu Mar 2 15:59:59 2006 From: developer at ultradnt.com (Steve Conklin) Date: Thu, 2 Mar 2006 16:59:59 -0500 Subject: [AccessD] OT - Action Pack In-Reply-To: <44076011.6070103@shaw.ca> Message-ID: <200603022159.k22Lxtj84166@ultradnt.com> Hey Marty, Uh, what's a numbered corp.? This is their 2nd year, they renewed in January. Is there any possibility that MS will ever say "you're not an IT firm" and refuse to let them renew, is my question. Steve -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of MartyConnelly Sent: Thursday, March 02, 2006 4:14 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT - Action Pack I have seen Action Packs assigned to numbered corporations. But if they don't renew the yearly subscriptions, security fix updates may not be available from MS update sites.. Steve Conklin wrote: >It's in the client's corporate name, which includes the word "consulting" >but not "real estate". > >Steve > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of William Hindman >Sent: Thursday, March 02, 2006 2:41 PM >To: Access Developers discussion and problem solving >Subject: Re: [AccessD] OT - Action Pack > >...is the Action Pak subscription actually in their name or the former >consultant's? > >William > >----- Original Message ----- >From: "Steve Conklin" >To: "'Access Developers discussion and problem solving'" > >Sent: Thursday, March 02, 2006 2:08 PM >Subject: Re: [AccessD] OT - Action Pack > > > > >>Charlotte, I agree 100%. Their previous consultant sent them on this >>path. >>When I asked for their W2k3 CD, that's when I saw Action Pack. I kept >>quiet >>(temporarily); I wanted to post here first to try to begin to assess their >>risk. >> >>Steve >> >> >>-----Original Message----- >>From: accessd-bounces at databaseadvisors.com >>[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust >>Sent: Thursday, March 02, 2006 1:44 PM >>To: Access Developers discussion and problem solving >>Subject: Re: [AccessD] OT - Action Pack >> >>Well, if MS ever decides to close that loophole, the EULA requires that >>they >>uninstall the software and any of its supporting files from all their >>machines. I've heard of people cheating like this, it's like those who >>buy >>the Academic edition even though it isn't licensed for commercial use. If >>we aren't honest about our licenses, how can our >>clients/customers/employees >>trust us? >> >>Charlotte Foust >> >> >>-----Original Message----- >>From: accessd-bounces at databaseadvisors.com >>[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Conklin >>Sent: Thursday, March 02, 2006 10:20 AM >>To: 'Access Developers discussion and problem solving' >>Subject: Re: [AccessD] OT - Action Pack >> >> >>Thanks for the link. But there's no way this real estate office does any >>influencing over anything computer related. There's no stretching the >>definition of their business to fit any of that, so that's why I wanted to >>know if there is any risk of them losing theses licenses. >>Seems to me that they have found a loophole that any business with <= 10 >>PC's and 1 Server can exploit. >> >> >>Steve >> >> >>-----Original Message----- >>From: accessd-bounces at databaseadvisors.com >>[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gary Kjos >>Sent: Thursday, March 02, 2006 12:38 PM >>To: Access Developers discussion and problem solving >>Subject: Re: [AccessD] OT - Action Pack >> >>https://partner.microsoft.com/40009735 >> >>has all the info. >> >>here's a quote from the FAQ >>--------------------------------------- >> >>Who can subscribe to the Microsoft Action Pack? >>The Microsoft Action Pack Subscription is available exclusively to >>consultants, value-added resellers, value-added providers, system >>integrators, developers, system builders, hosts, and service providers who >>are enrolled as Registered Members in the Microsoft Partner Program and >>who >>distribute or influence the acquisition of Microsoft software and >>Microsoft-based solutions by end customers. >> >>---------------------------------- >> >>that describes a pretty broad group. "influence the aquisition of >>Microsoft >>software and Microsoft-bases solutions by end customers" can include a >>whole >>lot of people and businesses. >> >>I think Microsoft is glad to have them paying something every year. >> >>GK >> >> >>On 3/2/06, Steve Conklin wrote: >> >> >>>I have picked up a new client, mostly for server work, and when I >>>asked him if his Windows XP and Server 2003 were properly licensed, he >>> >>> >>>showed me an Action Pack. This is a real estate office, but >>>apparently because the word "consulting" is in the company name, it >>>was able to be registered to whatever level necessary to get an Action >>> >>> >>Pack. >> >> >>>The question is, is there any long term risk associated with this? >>>Are these things re-newable an unlimited number of times? Will MS >>>ever ask to see a list of how many clients you have influenced to buy >>>their products through your Ac.Pack? Or did this company find a >>>loophole you could drive a truck through? >>> >>>I know there are a few Action Packers out there; I am an MSDN-U >>>myself, so I don't any details about this thing. >>> >>>Thanks for any insight, >>>Steve >>> >>> >>> >> >> > > -- Marty Connelly Victoria, B.C. Canada -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From developer at ultradnt.com Thu Mar 2 16:01:39 2006 From: developer at ultradnt.com (Steve Conklin) Date: Thu, 2 Mar 2006 17:01:39 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: <001201c63e3f$63e658e0$647aa8c0@ColbyM6805> Message-ID: <200603022201.k22M1Zj84564@ultradnt.com> Reason(s)? -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 4:22 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions Me. Should NEVER be used to refer to controls. Dot . Should only refer to properties. Bang ! Should be used to refer to controls and objects. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 02, 2006 1:32 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions On a related note, does everyone use/not use Me. when referring to a control in code? Any advantage other than the auto-fill to using Me.? TIA Rocky Charlotte Foust wrote: > You use suffixes for ease of navigation. I prefer prefixes for > grouping by types of objects. Different strokes. > > Charlotte > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, > Lambert > Sent: Thursday, March 02, 2006 6:16 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Table naming conventions > > > Not read all this, but one point I want to make is "why are people > obsessed with PREFIXES?" > > I use the "_tbl" SUFFIX in my table names. Why? So that when I sort > the list of tables I can use the initial letter of the table name to > quickly jump to it using the keyboard. If they all begin with "tbl" > you cannot do that. Simple. :-) > > Lambert > > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From prosoft6 at hotmail.com Thu Mar 2 16:30:23 2006 From: prosoft6 at hotmail.com (Julie Reardon-Taylor) Date: Thu, 02 Mar 2006 17:30:23 -0500 Subject: [AccessD] OT - Action Pack In-Reply-To: <44076011.6070103@shaw.ca> Message-ID: I recently had to "let an employee go" and I think that some of my software licenses may be missing. Can anyone tell me what they received in the Jan. update for licenses? I think that I have the cd's, I'm talking about the white cards with the sticky yellow license keys. The only yellow license keys that I see in my folder are the XP Pro 64-bit. Did anyone get any other cards? Julie Reardon-Taylor PRO-SOFT OF NY, INC. 44 Public Square Suite #5 Watertown, NY 13601 Phone/Fax: (315) 785-0319 www.pro-soft.net NYS IT Services Contract CMT026A NYS Certified Woman-Owned Business From shamil at users.mns.ru Thu Mar 2 16:33:53 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Fri, 3 Mar 2006 01:33:53 +0300 Subject: [AccessD] Table naming conventions References: Message-ID: <003501c63e49$deb70970$6401a8c0@Nant> <<< I can't have everything I want. >>> Charlotte, In MS Access database window you can create groups and put links to objects into these groups and rename these links whatever you need/prefer - the source object names will stay unchanged... In VS.NET 2005 projects you can create folders and subforders having source files as well as links to the source files - by thus you can create groups of related source files. Unfortunately you can't give different names to the links as in MS Access groups still it's a useful feature to keep related source files grouped - especialy useful in large projects with many source files.... Shamil ----- Original Message ----- From: "Charlotte Foust" To: "Access Developers discussion and problem solving" Sent: Thursday, March 02, 2006 11:58 PM Subject: Re: [AccessD] Table naming conventions >I do use naming conventions in VB.Net, at least as much as I'm allowed > to. My boss decreed we would use suffixes instead of prefixes to name > forms, reports, etc., so related objects would sort together in the > project. Now you have to read the entire name of the object to find out > what it is! We've never used prefixes on table names, or fields, so > that hasn't been an issue in converting to .Net. I prefer prefixes on > table names and I prefer prefixes because they allow my eye to skate > over the object types I don't want to examine without having to read the > entire name of the object. SIGH! I can't have everything I want. > > Charlotte > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Thursday, March 02, 2006 11:53 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Table naming conventions > > > <<< > The underscore annoys me because it is harder to type than just a >> capital letter, >>>> > I don't use underscore because they weren't used in LRNC. > But typing it for me isn't a big trouble :) > > <<< > I really think it boils down to whatever works for the developer, >>>> > Sure it is. I just accepted LRNC and I use it naturally for a long time. > But to use other naming conventions if they are well systematically > designed > and applied (like JC's :)) wouldn't be a problem for me:) > > For example in VB.NET/C# I do not use Hungarian notation/LRNC as it's > recommended by MS and I like it too - I'm flexible :) > > <<< > It only becomes an issue in a team development environment, where >> using the same or at least compatible naming conventions is critical. >>>> > Yes, in a team environment the systematic use of naming conventions is > critical - the naming conventions approved by team leader :) - I mean > any > discussions what is better to use prefixes or suffixes or both or ... > should > be "rudely"/decisively suppressed by team leader as soon as naming > conventions are defined and accepted and a project starts - teamwork > isn't > a discussion club... :) > > Prefixes or suffixes in variables and even tables', queries' etc. names > are > getting obsolete - this is my current opinion. I still use them in MS > Access/VBA but not in VS.NET development (except control names prefixes > but > these are also becoming not easy to use with so many different types of > controls in VS.NET 2005 Winforms). > > Still using table name prefixes in tables' field names look reasonable > from > practical point of view (to build queries quicker without field names > collisions first of all) but with mainstream tendency of relational > back-ends becoming something more than just normalized databases and > morphing to XML hierarchies ... -> and finally somewhere in the future > to > ORDBMSs or pure OODBMSs - with this clear mainstream tendency the usage > of > prefixes or suffixes is clearly becoming generally depreciated... > > I do use tbl, tlkp, qsel, qapp, ... etc. prefixes with table names and > queries but this usage is looking more and more obsolete because a table > can > migrate to a set of queries(views), stored procedures, UDFs, web > services > etc. and vice versa then renaming could become a real time consuming and > > error prone problem... > > I did use LRNC prefixes to clearly recognize source object type, to > group > objects, to speed-up development but it's clear that in real life modern > > development using only prefixes or only suffixes or both isn't enough - > there could be many useful groupings/sortings of the same types or > different > types of objects - and modern development tools supply different > features to > natively keep and use such groupings/sortings.... > > There should be clear practical reasons to use prefixes or suffixes as > it > was with LRNC and MS Access/Office development for the last 10 years or > with > Hungarian notation and MSVC++ for the last 15 years ago, VB6 for the > last 10 > years... > > I mean it shouldn't be like "We use prefixes or suffixes because our > fathers > and grand-fathers used them, we forgot/don't know why they are so keen > and > what for they are needed, we do not see any practical reasons now to use > > them but we do use them to keep the traditions alive...." > > Shamil > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From shamil at users.mns.ru Thu Mar 2 16:37:18 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Fri, 3 Mar 2006 01:37:18 +0300 Subject: [AccessD] Table naming conventions References: <000e01c63e3e$1f6b0680$647aa8c0@ColbyM6805> Message-ID: <003601c63e49$df6ec0b0$6401a8c0@Nant> John, I just noted that your naming conventions are solid and systematic and based on LRNC - and that's "what doctor ordered". <<< I adapt where possible. >>> Either do I. Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Friday, March 03, 2006 12:13 AM Subject: Re: [AccessD] Table naming conventions >I started with LRNS, and still use it for variables etc. I do not claim to > be the originator of anything, I adapt where possible. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Thursday, March 02, 2006 8:11 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Table naming conventions > > John, > > AFAIS your naming conventions are based on LRNC (see e.g. Stan Leszinsky > "MS > Access 97 Expert Solutions"). > One exception are field names - the recommended in LRNC way is to not use > underscore and to use 3-4 chars standard abbreviations to prefix field > names: > > - Company - comp > - Person - pers > - Employee - empl or emp > ... > > I do use LRNC for the last 10 years. It worked very well in many > situations. > > Best regards, > Shamil > -- > Web: http://smsconsulting.spb.ru/shamil_s > > ----- Original Message ----- > From: "John Colby" > To: "'Access Developers discussion and problem solving'" > > Sent: Thursday, March 02, 2006 2:12 PM > Subject: [AccessD] Table naming conventions > > >> Folks, >> >> There has been a bit of discussion in the past few days re naming >> conventions as applied to tables. I have used conventions for many years >> and I sat down tonight and started documenting the conventions I use. I >> have shared my conventions in the past and will do so again here. I do >> these things because they work for me, in my environment. >> >> I have built a framework, which I use in any project where it is allowed. >> Having conventions allows me to make assumptions about how things will be >> handled, and write code that used those assumptions to make decisions. >> Even >> if you do not use a framework, having objects defined in a consistent >> manner >> can just generally make life easier. >> >> Feel free to discuss the methods and assumptions that I make, add how you >> do >> things (and WHY) etc. Don't bother calling the things I do stupid, if >> they >> don't work for you, don't use them. Share what does work for you, and >> WHY >> you do what you do. If you do something exactly opposite of the way I do >> it, explain why you prefer to do it that way. I find rules useless. I >> find >> reasons very useful. >> >> Table Definition Specification >> Tables are defined in a consistent manner so that they can be recognized >> and >> worked with easily. All of the definitions that I use have been >> assimilated >> from other people's ideas or developed over time, and all such >> conventions >> exist to solve a problem, whether that be readability, distinguishing >> functionality or allowing the framework to make assumptions. >> >> Table definitions consist of several parts. >> 1. Tables always use an autonumber PK, whether it appears to need one >> or not. This is done for a variety of reasons, ranging from divorcing >> the >> "table link" (PK/FK)from the unique index and making it trivial to change >> that unique index without changing the "table link", to the consistency >> of >> PK data type which allows specific assumptions in the framework. The PK >> is >> always a long integer, and a single field, which easily allows searches >> and >> other programmatic manipulations that wouldn't be possible or would be >> tedious if the PK was a multi-field set. >> 2. Table naming conventions. Tables are prefixed with 'tbl' so that as >> table names are encountered in forms, reports and queries they can be >> distinguished from other objects such as queries. Thus tblPerson, >> tblCompany, tblVehicle. >> 3. I have used other table prefixes to cause tables to group by type >> and be visually distinguishable from each other. Tbl for main tables, >> tlkp >> for lookup tables, tmm for many to many tables, ttmp for temporary tables >> etc. There is a lot of discussion about whether grouping by type is >> preferable to grouping by functionality, i.e. all accounting tables group >> together, all shipping tables group together etc. That is very much a >> 'preference' kind of thing. I have done both, even within the same db. >> It >> is possible to throw a "type" suffix on the end of the tables separated >> by >> an underscore if you care to group by function but be able to distinguish >> table type. tblPeopleVehicle_MM for a many to many, tblState_LKP for a >> lookup. >> 4. Field naming conventions. Field naming conventions have several >> parts. In general field and table names should only change in the most >> dire >> circumstances. If any object name changes, I have to do a search and >> replace to find and fix them. If there are a bunch of Fes working >> against > >> a >> single BE, it becomes a nightmare. >> a. Data type prefixes are never used in field names because of issues >> with data type changes. There are just too many data types, and they are >> often changed well into a project, for very valid reasons. >> b. A prefix to the field name is created using the first two characters >> the table name where the table name is a single word - PEople, VEhicle, >> COmpany. In cases where the table name is multiple words, the first >> character of each word is used. InvoiceLineItem ILI, PeopleVehicle PV, >> CompanyProperty CP. An underscore is used to distinguish the field name >> prefix from the rest of the field name. PE_ID, PE_FName, PE_SSN. Use of >> the first two characters if each word is acceptable to avoid collisions >> and >> make the field prefix more readable. PEopleVEhicle PEVE_ID. >> >> Obviously as a project gets large a table is required to track field name >> prefixes already used, but for small to medium sized projects this allows >> the developer to rapidly recognize which table a field comes from just >> from >> the field name. If this naming convention is rigorously followed then >> every >> field in the db has a unique name, which allows "search and replace" type >> of >> operations to be performed without manual intervention. >> c. IDs (PK/FKs) are distinguished by the capitalized characters 'ID' >> in the field name. >> d. PKs use the convention of Prefix characters, followed by an >> underscore followed by ID. PE_ID, VE_ID, CO_ID. >> e. FKs use the convention of Prefix characters, followed by an >> underscore, followed by ID followed by the prefix characters of the >> foreign >> table. PV_IDPE, PV_IDVE. CP_IDCO. By placing ID immediately following >> the >> underscore, PKs and FKs can be immediately distinguished from other types >> of >> fields. >> f. PKs and FKs are grouped at the top of the field list in design view. >> This is done so that the PK and all FKs can be seen at a glance without >> having to search through the fields looking for PKs/FKs. >> >> >> Thus field names look like: >> tblVehicle: >> VE_ID >> VE_Color >> VE_Make >> >> tblPeople >> PE_ID >> PE_LName >> PE_FName >> PE_SSN >> >> tblPeopleVehicle >> PV_ID >> PV_IDPE >> PV_IDVE >> PV_DateAssigned >> >> As you can see, by using the _ character it is easy to distinguish the >> prefix from the rest of the name. By using the ID immediately after the >> underscore it is easy to find every PK/FK field. By grouping all the >> PKs/FKs at the top of the table, no searching is required to find the >> PKs/FKs. By using the _IDXXXX construct, it is easy to visually look at >> the >> FK and just "see" what table that is the PK in. >> >> As I said above, to me reasons are the important thing. They define why >> I >> do what I do and allow me to evaluate whether making a change to what I >> do >> is useful to me. Rules without the associated reason are useless since I >> cannot evaluate how it applies to what I am trying to do. >> >> Rules are made to be broken, but I want to know the danger of doing so. >> >> John W. Colby >> www.ColbyConsulting.com >> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From dwaters at usinternet.com Thu Mar 2 16:47:25 2006 From: dwaters at usinternet.com (Dan Waters) Date: Thu, 2 Mar 2006 16:47:25 -0600 Subject: [AccessD] OT: farewell In-Reply-To: <32863745.1141315151137.JavaMail.root@sniper22> Message-ID: <001901c63e4b$475aa530$0200a8c0@danwaters> Roz - Best of Luck! But I don't think you'll need much in the field of Creative Writing. Because, what is programming but Creative Writing? And you've done a lot of that! Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Roz Clarke Sent: Thursday, March 02, 2006 9:53 AM To: Access Developers discussion and problem solving Subject: [AccessD] OT: farewell Hi guys. Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 months. I am no longer working in IT, having given up my job and taken up a Masters in Creative Writing. Whilst I may have the occasional web project to work on, I have no plans to return to development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing all your familiar names in my inbox every day. So I am leaving the list and standing down as a moderator. It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything I know about database development and a lot more besides, but I've had tears and laughter along the way and a fantastic trip to Germany into the bargain. Thank you all for being invaluable 'virtual colleagues', but above all for being friends. Love and hugs Roz PS what's the OT list like these days? ;) ___________________________________________________________ NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Thu Mar 2 17:21:22 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 2 Mar 2006 15:21:22 -0800 Subject: [AccessD] Table naming conventions Message-ID: Yes, I know, but I tried groups and hated them. We do use folders and subfolders in our .Net projects, and multiple projects in a solution. But when you're looking through a long list of objects in the Forms subfolder, all you have to go on is the icon and the suffix at the Loooonnnngg end of the object name to tell you exactly what it is. Unless it's a vb modules, of course. LOL There are 4-1/2 of us doing dot.net development using VSS, so we all have to play by the same rules. The 1/2 is my boss, who doesn't get his hands too dirty in forms, reports, data tier details, and vb code, but who does jump in to stuff occasionally. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Thursday, March 02, 2006 2:34 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions <<< I can't have everything I want. >>> Charlotte, In MS Access database window you can create groups and put links to objects into these groups and rename these links whatever you need/prefer - the source object names will stay unchanged... In VS.NET 2005 projects you can create folders and subforders having source files as well as links to the source files - by thus you can create groups of related source files. Unfortunately you can't give different names to the links as in MS Access groups still it's a useful feature to keep related source files grouped - especialy useful in large projects with many source files.... Shamil ----- Original Message ----- From: "Charlotte Foust" To: "Access Developers discussion and problem solving" Sent: Thursday, March 02, 2006 11:58 PM Subject: Re: [AccessD] Table naming conventions >I do use naming conventions in VB.Net, at least as much as I'm allowed >to. My boss decreed we would use suffixes instead of prefixes to name >forms, reports, etc., so related objects would sort together in the >project. Now you have to read the entire name of the object to find >out what it is! We've never used prefixes on table names, or fields, >so that hasn't been an issue in converting to .Net. I prefer prefixes >on table names and I prefer prefixes because they allow my eye to >skate over the object types I don't want to examine without having to >read the entire name of the object. SIGH! I can't have everything I >want. > > Charlotte > > > From cfoust at infostatsystems.com Thu Mar 2 17:22:13 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 2 Mar 2006 15:22:13 -0800 Subject: [AccessD] OT: farewell Message-ID: LOL Yeah but the plots will be more interesting in the future! ;o} Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Dan Waters Sent: Thursday, March 02, 2006 2:47 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: farewell Roz - Best of Luck! But I don't think you'll need much in the field of Creative Writing. Because, what is programming but Creative Writing? And you've done a lot of that! Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Roz Clarke Sent: Thursday, March 02, 2006 9:53 AM To: Access Developers discussion and problem solving Subject: [AccessD] OT: farewell Hi guys. Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 months. I am no longer working in IT, having given up my job and taken up a Masters in Creative Writing. Whilst I may have the occasional web project to work on, I have no plans to return to development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing all your familiar names in my inbox every day. So I am leaving the list and standing down as a moderator. It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything I know about database development and a lot more besides, but I've had tears and laughter along the way and a fantastic trip to Germany into the bargain. Thank you all for being invaluable 'virtual colleagues', but above all for being friends. Love and hugs Roz PS what's the OT list like these days? ;) ___________________________________________________________ NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Thu Mar 2 17:55:29 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 2 Mar 2006 18:55:29 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: <200603022201.k22M1Zj84564@ultradnt.com> Message-ID: <001f01c63e54$ca92a160$647aa8c0@ColbyM6805> LOL, because it is the wrong syntax and can cause the vba interpreter to get confused and do stupid things. In the early days of Access, me.object was the accepted syntax. Sometime around A97 Microsoft switched to the ! As the "accepted" syntax. Dot is for properties, Bang is for objects. Using Dot to refer to properties is known to cause weirdnesses. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Conklin Sent: Thursday, March 02, 2006 5:02 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions Reason(s)? -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 4:22 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions Me. Should NEVER be used to refer to controls. Dot . Should only refer to properties. Bang ! Should be used to refer to controls and objects. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 02, 2006 1:32 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions On a related note, does everyone use/not use Me. when referring to a control in code? Any advantage other than the auto-fill to using Me.? TIA Rocky Charlotte Foust wrote: > You use suffixes for ease of navigation. I prefer prefixes for > grouping by types of objects. Different strokes. > > Charlotte > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, > Lambert > Sent: Thursday, March 02, 2006 6:16 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Table naming conventions > > > Not read all this, but one point I want to make is "why are people > obsessed with PREFIXES?" > > I use the "_tbl" SUFFIX in my table names. Why? So that when I sort > the list of tables I can use the initial letter of the table name to > quickly jump to it using the keyboard. If they all begin with "tbl" > you cannot do that. Simple. :-) > > Lambert > > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bchacc at san.rr.com Thu Mar 2 18:43:03 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 02 Mar 2006 16:43:03 -0800 Subject: [AccessD] Access and Excel issue Message-ID: <44079117.4010409@san.rr.com> Dear List: According to this: http://winks.office-watch.com/9/templates/feat.aspx?articleid=7&zoneid=2 Some of the functionality between Access and Excel is disabled in 2002 and 2003 SP2. I have a client where I create a rather elaborate worksheet from a template in Access and push data out to the Excel worksheet, then open it up for editing. When the worksheet is saved, I have a lot of code behind the worksheet that pushes the data back into the Access tables. The worksheets are not linked however. I use automation to do the data transfers. Am I in trouble here or did I inadvertently dodge this bullet? The article refers to linked tables and spreadsheets. TIA Rocky -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From jwcolby at ColbyConsulting.com Thu Mar 2 18:47:28 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 2 Mar 2006 19:47:28 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: <001f01c63e54$ca92a160$647aa8c0@ColbyM6805> Message-ID: <002101c63e5c$0f836320$647aa8c0@ColbyM6805> >Using Dot to refer to properties is known to cause weirdnesses. Ooops. Using Dot to refer to Objects can cause weirdnesses. Sorry for the confusion. I can think of at least one exception (kind of) however. To refer to a control on a subform, the syntax is me!SubformControl.Subform!Control. In this case I think that .Subform is a PROPERTY of the subformControl which returns a pointer to an object (the actual loaded subform). So even here Dot is the correct syntax. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 6:55 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions LOL, because it is the wrong syntax and can cause the vba interpreter to get confused and do stupid things. In the early days of Access, me.object was the accepted syntax. Sometime around A97 Microsoft switched to the ! As the "accepted" syntax. Dot is for properties, Bang is for objects. Using Dot to refer to properties is known to cause weirdnesses. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Conklin Sent: Thursday, March 02, 2006 5:02 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions Reason(s)? -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 4:22 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions Me. Should NEVER be used to refer to controls. Dot . Should only refer to properties. Bang ! Should be used to refer to controls and objects. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 02, 2006 1:32 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions On a related note, does everyone use/not use Me. when referring to a control in code? Any advantage other than the auto-fill to using Me.? TIA Rocky Charlotte Foust wrote: > You use suffixes for ease of navigation. I prefer prefixes for > grouping by types of objects. Different strokes. > > Charlotte > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, > Lambert > Sent: Thursday, March 02, 2006 6:16 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Table naming conventions > > > Not read all this, but one point I want to make is "why are people > obsessed with PREFIXES?" > > I use the "_tbl" SUFFIX in my table names. Why? So that when I sort > the list of tables I can use the initial letter of the table name to > quickly jump to it using the keyboard. If they all begin with "tbl" > you cannot do that. Simple. :-) > > Lambert > > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Thu Mar 2 19:29:54 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 2 Mar 2006 17:29:54 -0800 Subject: [AccessD] Table naming conventions Message-ID: But you also use the dot operator to refer to members of a collection, and the controls are members of the parent object's controls collection. ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 4:47 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions >Using Dot to refer to properties is known to cause weirdnesses. Ooops. Using Dot to refer to Objects can cause weirdnesses. Sorry for the confusion. I can think of at least one exception (kind of) however. To refer to a control on a subform, the syntax is me!SubformControl.Subform!Control. In this case I think that .Subform is a PROPERTY of the subformControl which returns a pointer to an object (the actual loaded subform). So even here Dot is the correct syntax. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 6:55 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions LOL, because it is the wrong syntax and can cause the vba interpreter to get confused and do stupid things. In the early days of Access, me.object was the accepted syntax. Sometime around A97 Microsoft switched to the ! As the "accepted" syntax. Dot is for properties, Bang is for objects. Using Dot to refer to properties is known to cause weirdnesses. John W. Colby www.ColbyConsulting.com From stuart at lexacorp.com.pg Thu Mar 2 20:21:56 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Fri, 03 Mar 2006 12:21:56 +1000 Subject: [AccessD] Table naming conventions In-Reply-To: <001f01c63e54$ca92a160$647aa8c0@ColbyM6805> References: <200603022201.k22M1Zj84564@ultradnt.com> Message-ID: <440834E4.22587.A3272B8@stuart.lexacorp.com.pg> On 2 Mar 2006 at 18:55, John Colby wrote: > LOL, because it is the wrong syntax and can cause the vba interpreter to get > confused and do stupid things. In the early days of Access, me.object was > the accepted syntax. Sometime around A97 Microsoft switched to the ! As the > "accepted" syntax. Dot is for properties, Bang is for objects. Using Dot > to refer to properties is known to cause weirdnesses. > I recently had to update a series of A97 applications to XP. The original developer had used "Me." in a number of places to refer to controls and I had to change then to "Me!" before the upgraded app would compile. Unfortunately, I can't rememer the exact error that they were throwing when I tried to compile. -- Stuart From jwcolby at ColbyConsulting.com Thu Mar 2 22:18:31 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 2 Mar 2006 23:18:31 -0500 Subject: [AccessD] Access and Excel issue In-Reply-To: <44079117.4010409@san.rr.com> Message-ID: <000601c63e79$896a2e40$647aa8c0@ColbyM6805> I think the issue is specifically that linking spreadsheets has been disabled. If you use automation then you don't have an issue. IO know that because I am using automation (successfully) myself. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 02, 2006 7:43 PM To: Access Developers discussion and problem solving Subject: [AccessD] Access and Excel issue Dear List: According to this: http://winks.office-watch.com/9/templates/feat.aspx?articleid=7&zoneid=2 Some of the functionality between Access and Excel is disabled in 2002 and 2003 SP2. I have a client where I create a rather elaborate worksheet from a template in Access and push data out to the Excel worksheet, then open it up for editing. When the worksheet is saved, I have a lot of code behind the worksheet that pushes the data back into the Access tables. The worksheets are not linked however. I use automation to do the data transfers. Am I in trouble here or did I inadvertently dodge this bullet? The article refers to linked tables and spreadsheets. TIA Rocky -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Thu Mar 2 22:21:01 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 2 Mar 2006 23:21:01 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: Message-ID: <000701c63e79$e2a29ab0$647aa8c0@ColbyM6805> >But you also use the dot operator to refer to members of a collection, and the controls are members of the parent object's controls collection. I'm not following you on this one. Can you give an example? John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Thursday, March 02, 2006 8:30 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions But you also use the dot operator to refer to members of a collection, and the controls are members of the parent object's controls collection. ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 4:47 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions >Using Dot to refer to properties is known to cause weirdnesses. Ooops. Using Dot to refer to Objects can cause weirdnesses. Sorry for the confusion. I can think of at least one exception (kind of) however. To refer to a control on a subform, the syntax is me!SubformControl.Subform!Control. In this case I think that .Subform is a PROPERTY of the subformControl which returns a pointer to an object (the actual loaded subform). So even here Dot is the correct syntax. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 6:55 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions LOL, because it is the wrong syntax and can cause the vba interpreter to get confused and do stupid things. In the early days of Access, me.object was the accepted syntax. Sometime around A97 Microsoft switched to the ! As the "accepted" syntax. Dot is for properties, Bang is for objects. Using Dot to refer to properties is known to cause weirdnesses. John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Thu Mar 2 22:27:18 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 2 Mar 2006 23:27:18 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: <440834E4.22587.A3272B8@stuart.lexacorp.com.pg> Message-ID: <000801c63e7a$c3fa70a0$647aa8c0@ColbyM6805> >I recently had to update a series of A97 applications to XP. I think that the Dot operator referring to controls was supported in A97 but they were already strongly suggesting switching the syntax. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stuart McLachlan Sent: Thursday, March 02, 2006 9:22 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions On 2 Mar 2006 at 18:55, John Colby wrote: > LOL, because it is the wrong syntax and can cause the vba interpreter > to get confused and do stupid things. In the early days of Access, > me.object was the accepted syntax. Sometime around A97 Microsoft > switched to the ! As the "accepted" syntax. Dot is for properties, > Bang is for objects. Using Dot to refer to properties is known to cause weirdnesses. > I recently had to update a series of A97 applications to XP. The original developer had used "Me." in a number of places to refer to controls and I had to change then to "Me!" before the upgraded app would compile. Unfortunately, I can't rememer the exact error that they were throwing when I tried to compile. -- Stuart -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bchacc at san.rr.com Thu Mar 2 22:27:20 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 02 Mar 2006 20:27:20 -0800 Subject: [AccessD] Access and Excel issue In-Reply-To: <000601c63e79$896a2e40$647aa8c0@ColbyM6805> References: <000601c63e79$896a2e40$647aa8c0@ColbyM6805> Message-ID: <4407C5A8.2060406@san.rr.com> In A2K3 SP2? Rocky John Colby wrote: > I think the issue is specifically that linking spreadsheets has been > disabled. If you use automation then you don't have an issue. IO know that > because I am using automation (successfully) myself. > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - > Beach Access Software > Sent: Thursday, March 02, 2006 7:43 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Access and Excel issue > > Dear List: > > According to this: > > http://winks.office-watch.com/9/templates/feat.aspx?articleid=7&zoneid=2 > > > Some of the functionality between Access and Excel is disabled in 2002 and > 2003 SP2. > > > I have a client where I create a rather elaborate worksheet from a > template in Access and push data out to the Excel worksheet, then open > it up for editing. When the worksheet is saved, I have a lot of code > behind the worksheet that pushes the data back into the Access tables. > The worksheets are not linked however. I use automation to do the data > transfers. Am I in trouble here or did I inadvertently dodge this > bullet? The article refers to linked tables and spreadsheets. > > TIA > > Rocky > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From jwcolby at ColbyConsulting.com Thu Mar 2 23:16:59 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Fri, 3 Mar 2006 00:16:59 -0500 Subject: [AccessD] Access and Excel issue In-Reply-To: <4407C5A8.2060406@san.rr.com> Message-ID: <000f01c63e81$b3bd78c0$647aa8c0@ColbyM6805> No, in AXP (2002) but service packs updated AXP (and maybe even before) and above to prevent links from working. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 02, 2006 11:27 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access and Excel issue In A2K3 SP2? Rocky John Colby wrote: > I think the issue is specifically that linking spreadsheets has been > disabled. If you use automation then you don't have an issue. IO > know that because I am using automation (successfully) myself. > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky > Smolin - Beach Access Software > Sent: Thursday, March 02, 2006 7:43 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Access and Excel issue > > Dear List: > > According to this: > > http://winks.office-watch.com/9/templates/feat.aspx?articleid=7&zoneid > =2 > d=2> > > Some of the functionality between Access and Excel is disabled in 2002 > and > 2003 SP2. > > > I have a client where I create a rather elaborate worksheet from a > template in Access and push data out to the Excel worksheet, then open > it up for editing. When the worksheet is saved, I have a lot of code > behind the worksheet that pushes the data back into the Access tables. > The worksheets are not linked however. I use automation to do the > data transfers. Am I in trouble here or did I inadvertently dodge > this bullet? The article refers to linked tables and spreadsheets. > > TIA > > Rocky > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From martyconnelly at shaw.ca Thu Mar 2 23:44:17 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Thu, 02 Mar 2006 21:44:17 -0800 Subject: [AccessD] OT - Action Pack References: <200603022159.k22Lxtj84166@ultradnt.com> Message-ID: <4407D7B1.3010104@shaw.ca> In Canada you can create a corporation with a 7 digit number ie, 1098886 Co. It saves you the time and price of doing a name search that is unique. I know lawyers who keep a half dozen numbered companies in their drawer and can set one up prearranged in half an hour via a share purchase. You see these done to conceal obvious ownership or for quick real estate deals. Steve Conklin wrote: >Hey Marty, >Uh, what's a numbered corp.? >This is their 2nd year, they renewed in January. Is there any possibility >that MS will ever say "you're not an IT firm" and refuse to let them renew, >is my question. > >Steve > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of MartyConnelly >Sent: Thursday, March 02, 2006 4:14 PM >To: Access Developers discussion and problem solving >Subject: Re: [AccessD] OT - Action Pack > >I have seen Action Packs assigned to numbered corporations. > >But if they don't renew the yearly subscriptions, security fix updates may >not be available from MS update sites.. > > >Steve Conklin wrote: > > > >>It's in the client's corporate name, which includes the word "consulting" >>but not "real estate". >> >>Steve >> >>-----Original Message----- >>From: accessd-bounces at databaseadvisors.com >>[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of William Hindman >>Sent: Thursday, March 02, 2006 2:41 PM >>To: Access Developers discussion and problem solving >>Subject: Re: [AccessD] OT - Action Pack >> >>...is the Action Pak subscription actually in their name or the former >>consultant's? >> >>William >> >>----- Original Message ----- >>From: "Steve Conklin" >>To: "'Access Developers discussion and problem solving'" >> >>Sent: Thursday, March 02, 2006 2:08 PM >>Subject: Re: [AccessD] OT - Action Pack >> >> >> >> >> >> >>>Charlotte, I agree 100%. Their previous consultant sent them on this >>>path. >>>When I asked for their W2k3 CD, that's when I saw Action Pack. I kept >>>quiet >>>(temporarily); I wanted to post here first to try to begin to assess their >>>risk. >>> >>>Steve >>> >>> >>>-----Original Message----- >>>From: accessd-bounces at databaseadvisors.com >>>[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust >>>Sent: Thursday, March 02, 2006 1:44 PM >>>To: Access Developers discussion and problem solving >>>Subject: Re: [AccessD] OT - Action Pack >>> >>>Well, if MS ever decides to close that loophole, the EULA requires that >>>they >>>uninstall the software and any of its supporting files from all their >>>machines. I've heard of people cheating like this, it's like those who >>>buy >>>the Academic edition even though it isn't licensed for commercial use. If >>>we aren't honest about our licenses, how can our >>>clients/customers/employees >>>trust us? >>> >>>Charlotte Foust >>> >>> >>>-----Original Message----- >>>From: accessd-bounces at databaseadvisors.com >>>[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Conklin >>>Sent: Thursday, March 02, 2006 10:20 AM >>>To: 'Access Developers discussion and problem solving' >>>Subject: Re: [AccessD] OT - Action Pack >>> >>> >>>Thanks for the link. But there's no way this real estate office does any >>>influencing over anything computer related. There's no stretching the >>>definition of their business to fit any of that, so that's why I wanted to >>>know if there is any risk of them losing theses licenses. >>>Seems to me that they have found a loophole that any business with <= 10 >>>PC's and 1 Server can exploit. >>> >>> >>>Steve >>> >>> >>>-----Original Message----- >>>From: accessd-bounces at databaseadvisors.com >>>[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gary Kjos >>>Sent: Thursday, March 02, 2006 12:38 PM >>>To: Access Developers discussion and problem solving >>>Subject: Re: [AccessD] OT - Action Pack >>> >>>https://partner.microsoft.com/40009735 >>> >>>has all the info. >>> >>>here's a quote from the FAQ >>>--------------------------------------- >>> >>>Who can subscribe to the Microsoft Action Pack? >>>The Microsoft Action Pack Subscription is available exclusively to >>>consultants, value-added resellers, value-added providers, system >>>integrators, developers, system builders, hosts, and service providers who >>>are enrolled as Registered Members in the Microsoft Partner Program and >>>who >>>distribute or influence the acquisition of Microsoft software and >>>Microsoft-based solutions by end customers. >>> >>>---------------------------------- >>> >>>that describes a pretty broad group. "influence the aquisition of >>>Microsoft >>>software and Microsoft-bases solutions by end customers" can include a >>>whole >>>lot of people and businesses. >>> >>>I think Microsoft is glad to have them paying something every year. >>> >>>GK >>> >>> >>>On 3/2/06, Steve Conklin wrote: >>> >>> >>> >>> >>>>I have picked up a new client, mostly for server work, and when I >>>>asked him if his Windows XP and Server 2003 were properly licensed, he >>>> >>>> >>>>showed me an Action Pack. This is a real estate office, but >>>>apparently because the word "consulting" is in the company name, it >>>>was able to be registered to whatever level necessary to get an Action >>>> >>>> >>>> >>>> >>>Pack. >>> >>> >>> >>> >>>>The question is, is there any long term risk associated with this? >>>>Are these things re-newable an unlimited number of times? Will MS >>>>ever ask to see a list of how many clients you have influenced to buy >>>>their products through your Ac.Pack? Or did this company find a >>>>loophole you could drive a truck through? >>>> >>>>I know there are a few Action Packers out there; I am an MSDN-U >>>>myself, so I don't any details about this thing. >>>> >>>>Thanks for any insight, >>>>Steve >>>> >>>> >>>> >>>> >>>> >>> >>> >>> >>> >> >> >> >> > > > -- Marty Connelly Victoria, B.C. Canada From Gustav at cactus.dk Fri Mar 3 04:21:20 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 03 Mar 2006 11:21:20 +0100 Subject: [AccessD] Access and Excel issue Message-ID: Hi Rocky You can still link and reading is possible but update and append will be disabled. /gustav >>> jwcolby at ColbyConsulting.com 03-03-2006 05:18 >>> I think the issue is specifically that linking spreadsheets has been disabled. If you use automation then you don't have an issue. IO know that because I am using automation (successfully) myself. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 02, 2006 7:43 PM To: Access Developers discussion and problem solving Subject: [AccessD] Access and Excel issue Dear List: According to this: http://winks.office-watch.com/9/templates/feat.aspx?articleid=7&zoneid=2 Some of the functionality between Access and Excel is disabled in 2002 and 2003 SP2. I have a client where I create a rather elaborate worksheet from a template in Access and push data out to the Excel worksheet, then open it up for editing. When the worksheet is saved, I have a lot of code behind the worksheet that pushes the data back into the Access tables. The worksheets are not linked however. I use automation to do the data transfers. Am I in trouble here or did I inadvertently dodge this bullet? The article refers to linked tables and spreadsheets. TIA Rocky From tinanfields at torchlake.com Fri Mar 3 06:46:23 2006 From: tinanfields at torchlake.com (Tina Norris Fields) Date: Fri, 03 Mar 2006 07:46:23 -0500 Subject: [AccessD] OT: farewell References: <20060302155328.19996.qmail@web50115.mail.yahoo.com> Message-ID: <44083A9F.9010402@torchlake.com> Roz, Just read the postings this morning - sorry to see you leave here, but thrilled for your new opportunities. We'll certainly all be waiting and watching for your novels. Enjoy the studies! Godspeed, Tina Roz Clarke wrote: >Hi guys. > >Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. > >Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 >months. I am no longer working in IT, having given up my job and taken up a Masters in Creative >Writing. Whilst I may have the occasional web project to work on, I have no plans to return to >development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing >all your familiar names in my inbox every day. > >So I am leaving the list and standing down as a moderator. > >It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything >I know about database development and a lot more besides, but I've had tears and laughter along >the way and a fantastic trip to Germany into the bargain. > >Thank you all for being invaluable 'virtual colleagues', but above all for being friends. > >Love and hugs > >Roz > >PS what's the OT list like these days? ;) > > > >___________________________________________________________ >NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ > > From cfoust at infostatsystems.com Fri Mar 3 10:06:49 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 3 Mar 2006 08:06:49 -0800 Subject: [AccessD] Table naming conventions Message-ID: For Each ctl in Me.Controls ... Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 8:21 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions >But you also use the dot operator to refer to members of a collection, >and the controls are members of the parent object's controls collection. I'm not following you on this one. Can you give an example? John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Thursday, March 02, 2006 8:30 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions But you also use the dot operator to refer to members of a collection, and the controls are members of the parent object's controls collection. ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 4:47 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions >Using Dot to refer to properties is known to cause weirdnesses. Ooops. Using Dot to refer to Objects can cause weirdnesses. Sorry for the confusion. I can think of at least one exception (kind of) however. To refer to a control on a subform, the syntax is me!SubformControl.Subform!Control. In this case I think that .Subform is a PROPERTY of the subformControl which returns a pointer to an object (the actual loaded subform). So even here Dot is the correct syntax. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 6:55 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions LOL, because it is the wrong syntax and can cause the vba interpreter to get confused and do stupid things. In the early days of Access, me.object was the accepted syntax. Sometime around A97 Microsoft switched to the ! As the "accepted" syntax. Dot is for properties, Bang is for objects. Using Dot to refer to properties is known to cause weirdnesses. John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Lambert.Heenan at AIG.com Fri Mar 3 10:35:41 2006 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Fri, 3 Mar 2006 11:35:41 -0500 Subject: [AccessD] Table naming conventions Message-ID: <1D7828CDB8350747AFE9D69E0E90DA1F1E2EAE7F@xlivmbx21.aig.com> " Me.Controls" is not referring to the members of the Controls collection. It is referring to the Controls collection itself, which is property of a Form object. So Me.Controls is a legitimate use of the dot operator to access a property. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Friday, March 03, 2006 11:07 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions For Each ctl in Me.Controls ... Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 8:21 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions >But you also use the dot operator to refer to members of a collection, >and the controls are members of the parent object's controls collection. I'm not following you on this one. Can you give an example? John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Thursday, March 02, 2006 8:30 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions But you also use the dot operator to refer to members of a collection, and the controls are members of the parent object's controls collection. ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 4:47 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions >Using Dot to refer to properties is known to cause weirdnesses. Ooops. Using Dot to refer to Objects can cause weirdnesses. Sorry for the confusion. I can think of at least one exception (kind of) however. To refer to a control on a subform, the syntax is me!SubformControl.Subform!Control. In this case I think that .Subform is a PROPERTY of the subformControl which returns a pointer to an object (the actual loaded subform). So even here Dot is the correct syntax. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 6:55 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions LOL, because it is the wrong syntax and can cause the vba interpreter to get confused and do stupid things. In the early days of Access, me.object was the accepted syntax. Sometime around A97 Microsoft switched to the ! As the "accepted" syntax. Dot is for properties, Bang is for objects. Using Dot to refer to properties is known to cause weirdnesses. John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jdemarco at hudsonhealthplan.org Fri Mar 3 10:50:32 2006 From: Jdemarco at hudsonhealthplan.org (Jim DeMarco) Date: Fri, 3 Mar 2006 11:50:32 -0500 Subject: [AccessD] A2000: XML Q Message-ID: <08F823FD83787D4BA0B99CA580AD3C7402DE6E78@TTNEXCHCL2.hshhp.com> Darren, We've been using this: But I'm pretty sure you can get by with just: Once you navigate the file below this processing instruction your on your own as far as defining elements etc. May I ask why the concern? HTH Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darren DICK Sent: Wednesday, March 01, 2006 11:19 PM To: AccessD Subject: [AccessD] A2000: XML Q Hello all Cross Posted to dba_SQL List What is the minimum header information i need to include before 'my data' starts to get a 'Well formed' xml doc? Eg the stuff that looks like Thanks again William. Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of William Hindman Sent: Wednesday, March 01, 2006 8:50 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Converting to 2003 ...my mdbs no longer bloat the way they did in AXP ...but I can find no mention of a fix in any SP "problems resolved" list ...they just no longer do the bad thing as badly as they once did ...hth :))) William ----- Original Message ----- From: "Jim DeMarco" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 01, 2006 9:20 AM Subject: Re: [AccessD] Converting to 2003 > While I can certainly understand the how mere mention of Gustav's name > might instill respect in an application I'm not quite sure I have an > answer to my question. > > Was the bloating issue fixed or will I have to insert Gustav into my > conversion process? ;-) > > Thanks, > > Jim D. > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of William > Hindman > Sent: Tuesday, February 28, 2006 9:14 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Converting to 2003 > > ...your blessing or MS actually fixing an Access bug ...both are > miracles in my book :) > > William > > ----- Original Message ----- > From: "Gustav Brock" > To: > Sent: Tuesday, February 28, 2006 4:33 AM > Subject: Re: [AccessD] Converting to 2003 > > >> Hi William >> >> "don't particularly care" ... well, that hurts - after all my efforts! >> >> Actually, we have two clients - both female, wonder why - who claim > that >> more than once they have seen issues vanish just by calling me. I > didn't >> do anything - no advice or problem solving - other than devoting my >> attention. And my middle name isn't Jesus. Maybe your mdbs have been > on my >> mind too! >> >> /gustav >> >>>>> wdhindman at bellsouth.net 28-02-2006 00:39 >>> >> ...either its been fixed or Gustav blessed all my mdbs ...I don't >> particularly care which :) >> >> William >> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > > ************************************************************************ *********** > "This electronic message is intended to be for the use only of the named > recipient, and may contain information from Hudson Health Plan (HHP) that > is confidential or privileged. If you are not the intended recipient, you > are hereby notified that any disclosure, copying, distribution or use of > the contents of this message is strictly prohibited. If you have received > this message in error or are not the named recipient, please notify us > immediately, either by contacting the sender at the electronic mail > address noted above or calling HHP at (914) 631-1611. If you are not the > intended recipient, please do not forward this email to anyone, and delete > and destroy all copies of this message. Thank You". > ************************************************************************ *********** > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************************** "This electronic message is intended to be for the use only of the named recipient, and may contain information from Hudson Health Plan (HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". *********************************************************************************** From john at winhaven.net Fri Mar 3 11:45:37 2006 From: john at winhaven.net (John Bartow) Date: Fri, 3 Mar 2006 11:45:37 -0600 Subject: [AccessD] OT: farewell In-Reply-To: <20060302155328.19996.qmail@web50115.mail.yahoo.com> Message-ID: <02b701c63eea$48312ed0$7201a8c0@ScuzzPaq> Hi Roz, Best wishes in your new endeavors, see you over on OT! John B. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Roz Clarke Sent: Thursday, March 02, 2006 9:53 AM To: Access Developers discussion and problem solving Subject: [AccessD] OT: farewell From cfoust at infostatsystems.com Fri Mar 3 12:30:24 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 3 Mar 2006 10:30:24 -0800 Subject: [AccessD] Table naming conventions Message-ID: Yes, I understand that, Lambert. But when you create a custom collection object and you refer to the members of that collection, you use the dot operator, not the bang. I didn't have a handy example, so I fell back on what I posted to illustrate. Arrays are much easier to work with, but collections have a charm all their own. ;o} Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert Sent: Friday, March 03, 2006 8:36 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions " Me.Controls" is not referring to the members of the Controls collection. It is referring to the Controls collection itself, which is property of a Form object. So Me.Controls is a legitimate use of the dot operator to access a property. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Friday, March 03, 2006 11:07 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions For Each ctl in Me.Controls ... Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 8:21 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions >But you also use the dot operator to refer to members of a collection, >and the controls are members of the parent object's controls collection. I'm not following you on this one. Can you give an example? John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Thursday, March 02, 2006 8:30 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions But you also use the dot operator to refer to members of a collection, and the controls are members of the parent object's controls collection. ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 4:47 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions >Using Dot to refer to properties is known to cause weirdnesses. Ooops. Using Dot to refer to Objects can cause weirdnesses. Sorry for the confusion. I can think of at least one exception (kind of) however. To refer to a control on a subform, the syntax is me!SubformControl.Subform!Control. In this case I think that .Subform is a PROPERTY of the subformControl which returns a pointer to an object (the actual loaded subform). So even here Dot is the correct syntax. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 6:55 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions LOL, because it is the wrong syntax and can cause the vba interpreter to get confused and do stupid things. In the early days of Access, me.object was the accepted syntax. Sometime around A97 Microsoft switched to the ! As the "accepted" syntax. Dot is for properties, Bang is for objects. Using Dot to refer to properties is known to cause weirdnesses. John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Lambert.Heenan at AIG.com Fri Mar 3 13:44:10 2006 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Fri, 3 Mar 2006 14:44:10 -0500 Subject: [AccessD] Table naming conventions Message-ID: <1D7828CDB8350747AFE9D69E0E90DA1F1E2EAF5D@xlivmbx21.aig.com> Perhaps part of the confusion is caused by terminology. In Access land, objects have "Properties" and "Methods". There is no such thing as a "Member", except in the informal sense which means either a Property or a Method. Lambert :-) -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Friday, March 03, 2006 1:30 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions Yes, I understand that, Lambert. But when you create a custom collection object and you refer to the members of that collection, you use the dot operator, not the bang. I didn't have a handy example, so I fell back on what I posted to illustrate. Arrays are much easier to work with, but collections have a charm all their own. ;o} Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert Sent: Friday, March 03, 2006 8:36 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions " Me.Controls" is not referring to the members of the Controls collection. It is referring to the Controls collection itself, which is property of a Form object. So Me.Controls is a legitimate use of the dot operator to access a property. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Friday, March 03, 2006 11:07 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions For Each ctl in Me.Controls ... Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 8:21 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions >But you also use the dot operator to refer to members of a collection, >and the controls are members of the parent object's controls collection. I'm not following you on this one. Can you give an example? John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Thursday, March 02, 2006 8:30 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions But you also use the dot operator to refer to members of a collection, and the controls are members of the parent object's controls collection. ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 4:47 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions >Using Dot to refer to properties is known to cause weirdnesses. Ooops. Using Dot to refer to Objects can cause weirdnesses. Sorry for the confusion. I can think of at least one exception (kind of) however. To refer to a control on a subform, the syntax is me!SubformControl.Subform!Control. In this case I think that .Subform is a PROPERTY of the subformControl which returns a pointer to an object (the actual loaded subform). So even here Dot is the correct syntax. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 6:55 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions LOL, because it is the wrong syntax and can cause the vba interpreter to get confused and do stupid things. In the early days of Access, me.object was the accepted syntax. Sometime around A97 Microsoft switched to the ! As the "accepted" syntax. Dot is for properties, Bang is for objects. Using Dot to refer to properties is known to cause weirdnesses. John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From martyconnelly at shaw.ca Fri Mar 3 13:59:45 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Fri, 03 Mar 2006 11:59:45 -0800 Subject: [AccessD] A2000: XML Q References: <08F823FD83787D4BA0B99CA580AD3C7402DE6E78@TTNEXCHCL2.hshhp.com> Message-ID: <4408A031.30605@shaw.ca> Just some thoughts on this The xml PI ( processing instruction) statement. is not required if the xml file is UTF-8 or UTF-16, ie. file starts with a proper BOM at least for MS XML parsers. I wish MS would spell out, all of it's XML defaults, They assume developers know by osmosis. Watch out for encoding statements, it assumes you know where the file is coming from, if it's not specified then, the parser assumes UTF-8 and or will do a BOM check. If you add an encoding as above you are stating the file is originally created as ANSI "iso-8859-1" western european. Any characters outside this range will be non-valid or may not be interpeted correctly. It used to do funny things to Euro and UK pound symbols. You can however change the PI on the fly with statements like pi = xmlDoc.createProcessingInstruction("xml", "version=\"1.0\""); xmlDoc.insertBefore(pi, xmlDoc.childNodes.item(0)); If you edit an xml file in notepad watch out whether you save as ANSI or UTF-8 (unicode). May cause grief by changing the BOM In most cases US users will get away with this type of encoding iso-8859-1, but if you start bringing in files from international sites or Unix boxes this will give you problems. See info on xml encodings. http://www.topxml.com/code/default.asp?p=3&id=v20010810181946 There are quick and dirty ways to bulk change encodings via ADO stream charset's, I posted some code in the archives. There is a difference between well-formed and valid XML. Well-formed is a syntax check on XML (ie. matching tags) Valid also means that XML data entities and attributes comply with an xml schema or DTD. Here is some validation code that might help you out, the special error code displays the xml character in error I hated trying to count the error line and position number in a file to determine the character in error. There is also a routine to check the files BOM marker. 'ValidXMLCheck "C:\XML\Gil Encodings\encUTF8_noBOM.xml" Sub ValidXMLCheck(strxmlfilepath As String) Dim xmlMessage As MSXML2.DOMDocument40 Dim oXMLError As IXMLDOMParseError Dim lngErrCode As Long Set xmlMessage = New MSXML2.DOMDocument40 xmlMessage.async = False xmlMessage.validateOnParse = True 'true by default xmlMessage.resolveExternals = False 'Set xmlMessage.schemas = xmlSchema 'After loading the XML document, call the Validate method of the 'DOMDocument. If there is an error validating against the schema, there will be a 'parse Error: xmlMessage.Load (strxmlfilepath) lngErrCode = xmlMessage.validate() If xmlMessage.parseError.errorCode <> 0 Then Debug.Print " Reason: " & xmlMessage.parseError.reason Set oXMLError = xmlMessage.parseError reportParseError oXMLError Else Debug.Print strxmlfilepath & " file OK" End If End Sub Public Function reportParseError(err As IXMLDOMParseError) 'this is not setup to count tabs used as whitespace Dim s As String Dim r As String Dim i As Long s = "" For i = 1 To err.linepos - 1 s = s & " " Next r = "XML Error loading " & err.url & " * " & err.reason Debug.Print r 'show character postion of error; tired of counting on screen If (err.Line > 0) Then r = "at line " & err.Line & ", character " & err.linepos & vbCrLf & _ err.srcText & vbCrLf & s & "^" End If Debug.Print r Debug.Print "url=" & err.url & vbCrLf End Function Sub CheckBOM(Optional strFileIn As Variant, Optional strIn As Variant) 'checkbom "C:\XML\Gil Encodings\encUTF8_NoDecl.xml" On Error GoTo Err_handler Dim strInputData As String * 4 Dim lpBuffer() As Byte Dim intFreeFile As Integer If Not IsMissing(strFileIn) Then intFreeFile = FreeFile Open strFileIn For Binary Access Read Lock Read As #intFreeFile Len = 4 ReDim lpBuffer(4) Get #intFreeFile, , lpBuffer Close #intFreeFile ElseIf Not IsMissing(strIn) Then 'Can't makes this work since VBA is always converting the string to UTF-16LE lpBuffer = Left$(strIn, 4) Else MsgBox "Nothing To Do" Exit Sub End If If lpBuffer(0) = 255 And lpBuffer(1) = 254 Then Debug.Print "File is UTF-16 Little Endian" ElseIf lpBuffer(0) = 254 And lpBuffer(1) = 255 Then Debug.Print "File is UTF-16 Big Endian" ElseIf lpBuffer(0) = 239 And lpBuffer(1) = 187 And lpBuffer(2) = 191 Then Debug.Print "File is UTF-8" 'Start trying to figure out by other means this will only work on xml files that start with "Darren, > >We've been using this: > > > >But I'm pretty sure you can get by with just: > > > >Once you navigate the file below this processing instruction your on >your own as far as defining elements etc. > >May I ask why the concern? > >HTH > >Jim > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darren DICK >Sent: Wednesday, March 01, 2006 11:19 PM >To: AccessD >Subject: [AccessD] A2000: XML Q > >Hello all >Cross Posted to dba_SQL List >What is the minimum header information i need to include before 'my >data' starts to get a 'Well formed' xml doc? >Eg the stuff that looks like >xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > > > >etc etc > > > >many thanks > >DD > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com > > >*********************************************************************************** >"This electronic message is intended to be for the use only of the named recipient, and may contain information from Hudson Health Plan (HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". >*********************************************************************************** > > > -- Marty Connelly Victoria, B.C. Canada From rbgajewski at adelphia.net Fri Mar 3 17:07:53 2006 From: rbgajewski at adelphia.net (Bob Gajewski) Date: Fri, 3 Mar 2006 18:07:53 -0500 Subject: [AccessD] OT: farewell In-Reply-To: <44083A9F.9010402@torchlake.com> Message-ID: <008a01c63f17$4d138380$bd00a8c0@DG1P2N21> Roz Thanks for all of the help, witticism and friendship. We may have never communicated directly, but your presence and contributions here will not be forgotten. Best luck in your 'access-less' life! :) Regards, Bob Gajewski Roz Clarke wrote: >Hi guys. > >Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. > >Those who ever noticed me at all, may have noticed that I haven't >posted to Accessd in the last 6 months. I am no longer working in IT, >having given up my job and taken up a Masters in Creative Writing. >Whilst I may have the occasional web project to work on, I have no >plans to return to development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing all your familiar names in my inbox every day. > >So I am leaving the list and standing down as a moderator. > >It's been a good ten years. Not only do I owe a great deal to the list, >which taught me everything I know about database development and a lot >more besides, but I've had tears and laughter along the way and a fantastic trip to Germany into the bargain. > >Thank you all for being invaluable 'virtual colleagues', but above all for being friends. > >Love and hugs > >Roz > >PS what's the OT list like these days? ;) > > > >___________________________________________________________ >NEW Yahoo! Cars - sell your car and browse thousands of new and used >cars online! http://uk.cars.yahoo.com/ > > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From artful at rogers.com Fri Mar 3 22:32:22 2006 From: artful at rogers.com (Arthur Fuller) Date: Fri, 3 Mar 2006 23:32:22 -0500 Subject: [AccessD] Code to Copy a query to Excel and Open said file? In-Reply-To: <008a01c63f17$4d138380$bd00a8c0@DG1P2N21> Message-ID: <051b01c63f44$a3964c60$8e01a8c0@rock> I want to open an Access query and have its contents sent to an Excel file, and have Excel open automatically with said file visible. I have played around a little with TransferSpreadsheet, and if this method works, then I am clearly doing something wrong. I have a sample file resembling the desired result in Excel, so I could use that as a template in the "Word" sense, but I need some guidance as to how to achieve this, because my experiments have all failed. I checked Helen Feddema's site but her Access->Excel heading says "Coming Soon". Have you any suggestions in the interim? TIA, Arthur From stuart at lexacorp.com.pg Sat Mar 4 01:28:48 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Sat, 04 Mar 2006 17:28:48 +1000 Subject: [AccessD] Code to Copy a query to Excel and Open said file? In-Reply-To: <051b01c63f44$a3964c60$8e01a8c0@rock> References: <008a01c63f17$4d138380$bd00a8c0@DG1P2N21> Message-ID: <4409CE50.18872.1071C059@stuart.lexacorp.com.pg> On 3 Mar 2006 at 23:32, Arthur Fuller wrote: > I want to open an Access query and have its contents sent to an Excel file, > and have Excel open automatically with said file visible. DoCmd.OutputTo acOutputQuery, "qryTest", acFormatXLS, "Test.XLS", True-- Stuart From darrend at nimble.com.au Sat Mar 4 05:54:58 2006 From: darrend at nimble.com.au (Darren DICK) Date: Sat, 4 Mar 2006 22:54:58 +1100 Subject: [AccessD] A2000: XML Q In-Reply-To: <08F823FD83787D4BA0B99CA580AD3C7402DE6E78@TTNEXCHCL2.hshhp.com> Message-ID: <20060304115500.PBUG16720.omta01sl.mx.bigpond.com@DENZILLAP> Hi Jim Thanks for the response Just starting to output XML stuff to be read by various sources all from SQL And maybe Access Thanks Darren ------------------------------ T: 0424 696 433 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim DeMarco Sent: Saturday, 4 March 2006 3:51 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] A2000: XML Q Darren, We've been using this: But I'm pretty sure you can get by with just: Once you navigate the file below this processing instruction your on your own as far as defining elements etc. May I ask why the concern? HTH Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darren DICK Sent: Wednesday, March 01, 2006 11:19 PM To: AccessD Subject: [AccessD] A2000: XML Q Hello all Cross Posted to dba_SQL List What is the minimum header information i need to include before 'my data' starts to get a 'Well formed' xml doc? Eg the stuff that looks like Message-ID: <20060304115717.EFSG1358.omta03sl.mx.bigpond.com@DENZILLAP> Hi Marty Thanks for the response Way over my head I have forwarded it to my SQL gurus (Soon to be XML gurus I guess) Many thanks Darren ------------------------------ T: 0424 696 433 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of MartyConnelly Sent: Saturday, 4 March 2006 7:00 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] A2000: XML Q Just some thoughts on this The xml PI ( processing instruction) statement. is not required if the xml file is UTF-8 or UTF-16, ie. file starts with a proper BOM at least for MS XML parsers. I wish MS would spell out, all of it's XML defaults, They assume developers know by osmosis. Watch out for encoding statements, it assumes you know where the file is coming from, if it's not specified then, the parser assumes UTF-8 and or will do a BOM check. If you add an encoding as above you are stating the file is originally created as ANSI "iso-8859-1" western european. Any characters outside this range will be non-valid or may not be interpeted correctly. It used to do funny things to Euro and UK pound symbols. You can however change the PI on the fly with statements like pi = xmlDoc.createProcessingInstruction("xml", "version=\"1.0\""); xmlDoc.insertBefore(pi, xmlDoc.childNodes.item(0)); If you edit an xml file in notepad watch out whether you save as ANSI or UTF-8 (unicode). May cause grief by changing the BOM In most cases US users will get away with this type of encoding iso-8859-1, but if you start bringing in files from international sites or Unix boxes this will give you problems. See info on xml encodings. http://www.topxml.com/code/default.asp?p=3&id=v20010810181946 There are quick and dirty ways to bulk change encodings via ADO stream charset's, I posted some code in the archives. There is a difference between well-formed and valid XML. Well-formed is a syntax check on XML (ie. matching tags) Valid also means that XML data entities and attributes comply with an xml schema or DTD. Here is some validation code that might help you out, the special error code displays the xml character in error I hated trying to count the error line and position number in a file to determine the character in error. There is also a routine to check the files BOM marker. 'ValidXMLCheck "C:\XML\Gil Encodings\encUTF8_noBOM.xml" Sub ValidXMLCheck(strxmlfilepath As String) Dim xmlMessage As MSXML2.DOMDocument40 Dim oXMLError As IXMLDOMParseError Dim lngErrCode As Long Set xmlMessage = New MSXML2.DOMDocument40 xmlMessage.async = False xmlMessage.validateOnParse = True 'true by default xmlMessage.resolveExternals = False 'Set xmlMessage.schemas = xmlSchema 'After loading the XML document, call the Validate method of the 'DOMDocument. If there is an error validating against the schema, there will be a 'parse Error: xmlMessage.Load (strxmlfilepath) lngErrCode = xmlMessage.validate() If xmlMessage.parseError.errorCode <> 0 Then Debug.Print " Reason: " & xmlMessage.parseError.reason Set oXMLError = xmlMessage.parseError reportParseError oXMLError Else Debug.Print strxmlfilepath & " file OK" End If End Sub Public Function reportParseError(err As IXMLDOMParseError) 'this is not setup to count tabs used as whitespace Dim s As String Dim r As String Dim i As Long s = "" For i = 1 To err.linepos - 1 s = s & " " Next r = "XML Error loading " & err.url & " * " & err.reason Debug.Print r 'show character postion of error; tired of counting on screen If (err.Line > 0) Then r = "at line " & err.Line & ", character " & err.linepos & vbCrLf & _ err.srcText & vbCrLf & s & "^" End If Debug.Print r Debug.Print "url=" & err.url & vbCrLf End Function Sub CheckBOM(Optional strFileIn As Variant, Optional strIn As Variant) 'checkbom "C:\XML\Gil Encodings\encUTF8_NoDecl.xml" On Error GoTo Err_handler Dim strInputData As String * 4 Dim lpBuffer() As Byte Dim intFreeFile As Integer If Not IsMissing(strFileIn) Then intFreeFile = FreeFile Open strFileIn For Binary Access Read Lock Read As #intFreeFile Len = 4 ReDim lpBuffer(4) Get #intFreeFile, , lpBuffer Close #intFreeFile ElseIf Not IsMissing(strIn) Then 'Can't makes this work since VBA is always converting the string to UTF-16LE lpBuffer = Left$(strIn, 4) Else MsgBox "Nothing To Do" Exit Sub End If If lpBuffer(0) = 255 And lpBuffer(1) = 254 Then Debug.Print "File is UTF-16 Little Endian" ElseIf lpBuffer(0) = 254 And lpBuffer(1) = 255 Then Debug.Print "File is UTF-16 Big Endian" ElseIf lpBuffer(0) = 239 And lpBuffer(1) = 187 And lpBuffer(2) = 191 Then Debug.Print "File is UTF-8" 'Start trying to figure out by other means this will only work on xml files that start with "Darren, > >We've been using this: > > > >But I'm pretty sure you can get by with just: > > > >Once you navigate the file below this processing instruction your on >your own as far as defining elements etc. > >May I ask why the concern? > >HTH > >Jim > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darren DICK >Sent: Wednesday, March 01, 2006 11:19 PM >To: AccessD >Subject: [AccessD] A2000: XML Q > >Hello all >Cross Posted to dba_SQL List >What is the minimum header information i need to include before 'my >data' starts to get a 'Well formed' xml doc? >Eg the stuff that looks like >xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > > > >etc etc > > > >many thanks > >DD > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com > > >*********************************************************************** >************ "This electronic message is intended to be for the use >only of the named recipient, and may contain information from Hudson Health Plan (HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". >*********************************************************************** >************ > > > -- Marty Connelly Victoria, B.C. Canada -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bill_Patten at earthlink.net Sat Mar 4 11:42:55 2006 From: bill_Patten at earthlink.net (Bill Patten) Date: Sat, 4 Mar 2006 09:42:55 -0800 Subject: [AccessD] Code to Copy a query to Excel and Open said file? References: <008a01c63f17$4d138380$bd00a8c0@DG1P2N21> <4409CE50.18872.1071C059@stuart.lexacorp.com.pg> Message-ID: <000601c63fb3$13373980$6501a8c0@BPCS> Stuart, Sometimes the answer to one question creates a solution for another, for example I need to export a simple Excel report once a month or so and have been using functions or stored procedures to do this, this worked and is very simple, no error protection yet just an idea that may help others. Public Function test() Dim rs As New ADODB.Recordset Dim cn As New ADODB.Connection Dim strSQl As String Set cn = CurrentProject.AccessConnection strSQl = "Select * from vUnits where UnitID between 19445 and 19448" rs.Open strSQl, cn, adOpenKeyset, adLockOptimistic DoCmd.OutputTo acOutputServerView, strSQl, acFormatXLS, "C:\test.xls", True End Function I tried to use a recordset in and MDB but that didn't work. Thanks Bill ----- Original Message ----- From: "Stuart McLachlan" To: "Access Developers discussion and problem solving" Sent: Friday, March 03, 2006 11:28 PM Subject: Re: [AccessD] Code to Copy a query to Excel and Open said file? On 3 Mar 2006 at 23:32, Arthur Fuller wrote: > I want to open an Access query and have its contents sent to an Excel > file, > and have Excel open automatically with said file visible. DoCmd.OutputTo acOutputQuery, "qryTest", acFormatXLS, "Test.XLS", True-- Stuart -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From martyconnelly at shaw.ca Sat Mar 4 12:55:48 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Sat, 04 Mar 2006 10:55:48 -0800 Subject: [AccessD] Table naming conventions References: Message-ID: <4409E2B4.7020605@shaw.ca> Long explanation and history of Dot vs Bang from Peter Walker http://www.papwalker.com/ref101/me.html Charlotte Foust wrote: >Yes, I understand that, Lambert. But when you create a custom >collection object and you refer to the members of that collection, you >use the dot operator, not the bang. I didn't have a handy example, so I >fell back on what I posted to illustrate. Arrays are much easier to >work with, but collections have a charm all their own. ;o} > >Charlotte Foust > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, >Lambert >Sent: Friday, March 03, 2006 8:36 AM >To: 'Access Developers discussion and problem solving' >Subject: Re: [AccessD] Table naming conventions > > >" Me.Controls" is not referring to the members of the Controls >collection. It is referring to the Controls collection itself, which is >property of a Form object. > >So Me.Controls is a legitimate use of the dot operator to access a >property. > > >Lambert > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte >Foust >Sent: Friday, March 03, 2006 11:07 AM >To: Access Developers discussion and problem solving >Subject: Re: [AccessD] Table naming conventions > > >For Each ctl in Me.Controls ... > > >Charlotte > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby >Sent: Thursday, March 02, 2006 8:21 PM >To: 'Access Developers discussion and problem solving' >Subject: Re: [AccessD] Table naming conventions > > > > >>But you also use the dot operator to refer to members of a collection, >>and >> >> >the controls are members of the parent object's controls collection. > >I'm not following you on this one. Can you give an example? > >John W. Colby >www.ColbyConsulting.com > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte >Foust >Sent: Thursday, March 02, 2006 8:30 PM >To: Access Developers discussion and problem solving >Subject: Re: [AccessD] Table naming conventions > >But you also use the dot operator to refer to members of a collection, >and the controls are members of the parent object's controls collection. >;o> > >Charlotte Foust > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby >Sent: Thursday, March 02, 2006 4:47 PM >To: 'Access Developers discussion and problem solving' >Subject: Re: [AccessD] Table naming conventions > > > > >>Using Dot to refer to properties is known to cause weirdnesses. >> >> > >Ooops. Using Dot to refer to Objects can cause weirdnesses. > >Sorry for the confusion. > >I can think of at least one exception (kind of) however. To refer to a >control on a subform, the syntax is me!SubformControl.Subform!Control. >In this case I think that .Subform is a PROPERTY of the subformControl >which returns a pointer to an object (the actual loaded subform). So >even here Dot is the correct syntax. > >John W. Colby >www.ColbyConsulting.com > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby >Sent: Thursday, March 02, 2006 6:55 PM >To: 'Access Developers discussion and problem solving' >Subject: Re: [AccessD] Table naming conventions > >LOL, because it is the wrong syntax and can cause the vba interpreter to >get confused and do stupid things. In the early days of Access, >me.object was the accepted syntax. Sometime around A97 Microsoft >switched to the ! As the "accepted" syntax. Dot is for properties, Bang >is for objects. Using Dot to refer to properties is known to cause >weirdnesses. > >John W. Colby >www.ColbyConsulting.com > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com > > > -- Marty Connelly Victoria, B.C. Canada From colin.spence at centrelink.gov.au Sun Mar 5 08:02:32 2006 From: colin.spence at centrelink.gov.au (colin.spence at centrelink.gov.au) Date: Mon, 6 Mar 2006 01:02:32 +1100 Subject: [AccessD] Colin Spence/NSO/CSDA is out of the office. Message-ID: I will be out of the office starting 03/03/2006 and will not return until 20/03/2006. I am on leave for 2 weeks. Please contact Ray Paquola (383146), John Slokan (383292). Also Terry Bissell (383208) ********************************************************************** IMPORTANT: This e-mail is intended for the use of the addressee and may contain information that is confidential, commercially valuable or subject to legal or parliamentary privilege. If you are not the intended recipient you are notified that any review, re-transmission, disclosure, use or dissemination of this communication is strictly prohibited by several Commonwealth Acts of Parliament. If you have received this communication in error please notify the sender immediately and delete all copies of this transmission together with any attachments. ********************************************************************** From viner at EUnet.yu Mon Mar 6 01:27:02 2006 From: viner at EUnet.yu (Ervin Brindza) Date: Mon, 6 Mar 2006 08:27:02 +0100 Subject: [AccessD] Code to Copy a query to Excel and Open said file? References: <051b01c63f44$a3964c60$8e01a8c0@rock> Message-ID: <018001c640ef$60046520$0100a8c0@RazvojErvin> Athur, look at Garry Robinson's 512robinson_SA05l.zip there are a lot of interesting features... E. ----- Original Message ----- From: "Arthur Fuller" To: "'Access Developers discussion and problem solving'" Sent: Saturday, March 04, 2006 5:32 AM Subject: [AccessD] Code to Copy a query to Excel and Open said file? >I want to open an Access query and have its contents sent to an Excel file, > and have Excel open automatically with said file visible. I have played > around a little with TransferSpreadsheet, and if this method works, then I > am clearly doing something wrong. I have a sample file resembling the > desired result in Excel, so I could use that as a template in the "Word" > sense, but I need some guidance as to how to achieve this, because my > experiments have all failed. I checked Helen Feddema's site but her > Access->Excel heading says "Coming Soon". > Have you any suggestions in the interim? > TIA, > Arthur > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From Jim.Hale at FleetPride.com Mon Mar 6 09:03:36 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Mon, 6 Mar 2006 09:03:36 -0600 Subject: [AccessD] Code to Copy a query to Excel and Open said file? Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDA82@corp-es01.fleetpride.com> I am sending you an example database Jim Hale -----Original Message----- From: Arthur Fuller [mailto:artful at rogers.com] Sent: Friday, March 03, 2006 10:32 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Code to Copy a query to Excel and Open said file? I want to open an Access query and have its contents sent to an Excel file, and have Excel open automatically with said file visible. I have played around a little with TransferSpreadsheet, and if this method works, then I am clearly doing something wrong. I have a sample file resembling the desired result in Excel, so I could use that as a template in the "Word" sense, but I need some guidance as to how to achieve this, because my experiments have all failed. I checked Helen Feddema's site but her Access->Excel heading says "Coming Soon". Have you any suggestions in the interim? TIA, Arthur -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From oost at e-business2start.com Mon Mar 6 10:13:52 2006 From: oost at e-business2start.com (E-business2start.com - Marcel Vreuls) Date: Mon, 6 Mar 2006 08:13:52 -0800 Subject: [AccessD] Code to Copy a query to Excel and Open said file? Message-ID: <5c3a9a1fb7331a53a7547b118e11841d@e-business2start.com> Hi Ervin, Do not now if your already solved the problem. I use the function underneed. The clsprogress class is my progress bar but you can delete it or use a own one. If you do not have the sql string you can use the name propertie of the query to get the sql statement .name Regards marcel ? Public Function fncExportNaarExcel(strSQL As String) On Error Resume Next 'ivm het eventueel niet aanwezig zijn van de exporteren query If strSQL = "" Or IsNull(strSQL) Then MsgBox "Er kunnen geen gegevens gevonden worden", vbInformation, pMsgboxHeader Exit Function Else Dim objProgress As New clsProgress Dim daodatabase As DAO.database Set daodatabase = CurrentDb() objProgress.ShowProgress objProgress.TextMsg = "Verzamelen van de gegevens..." daodatabase.QueryDefs.Delete ("Exporteren") objProgress.TextMsg= "Exporteren van de gegevens..." daodatabase.CreateQueryDef "Exporteren", strSQL objProgress.TextMsg = "Starten van Microsoft Excel..." DoCmd.OutputTo acOutputQuery, "Exporteren", acFormatXLS, "c:\export.xls", True objProgress.HideProgress Set objProgress = Nothing End If Exit Function ? Exit_Ooperror: Exit Function Ooperror: Call lci_ErrMsgStd(Name, Err.Number, Err.Description, True) Resume Exit_Ooperror End Function From adtp at airtelbroadband.in Mon Mar 6 11:21:45 2006 From: adtp at airtelbroadband.in (A.D.TEJPAL) Date: Mon, 6 Mar 2006 22:51:45 +0530 Subject: [AccessD] Sub Report not going into Two Columns References: <7.0.1.0.0.20060227175809.01acbe68@dalyn.co.nz><001f01c63b6d$fae e19a0$6101a8c0@50NM721><7.0.1.0.0.20060228110128.01a53410@dalyn.co.nz><0085 01c63c1e$63147b90$5540f63d@pcadt> <7.0.1.0.0.20060301113023.01a446c0@dalyn.co.nz> Message-ID: <005501c64142$7fb3bad0$e00765cb@pcadt> David, It transpires that your report does not deal with a set of records. Instead you are having text boxes (with CanGrow set to "Yes"), having large text content. This situation is not amenable to multicolumn layout. (Granularity for spreading the display across columns is a record). Best wishes, A.D.Tejpal --------------- ----- Original Message ----- From: David Emerson To: Access Developers discussion and problem solving Sent: Wednesday, March 01, 2006 04:14 Subject: Re: [AccessD] Sub Report not going into Two Columns The report is a column of text boxes with the control source being set to a string (eg ="This is a sample string"). Because of the varying size of the strings, and different printers format report text slightly differently, I have set the text boxes to a height of 1, and set the Can Grow property to Yes. When the report is viewed itself the text boxes snake down the first column of the first page, then the second column of the first page, then to the first column of the second page. This is what I want. However, when I use the report as a sub report to another report (along with a number of other sub reports) it stays at one column. The main report page settings (Column Tab) is set to one column (because other reports are full width), column size width 19.5. The sub report page settings (Column tab) is set to 2 columns, row spacing 0, column spacing 0.3, column size width 9, column layout down then across. Changing to across then down has the effect of the sub report not snaking over two columns when run on its own, nor in the main report. David. At 28/02/2006, you wrote: >David, > > It has been stated in your post that there are no records. Yet > it is mentioned that when run as independent report, the two > columns display nicely, filling up two pages. Could you please > clarify this apparent contradiction? > > Various values as actually existing on Columns tab of page set > up dialog box of the report may also please be furnished. If you > are getting two column output in independent report mode, it can be > ensured that you get similar display in subreport mode. > > With Across, then Down (A&D) layout, it is straightforward. > However, in this case, there can be awkward white spaces if the > contents of records across columns do not always measure up to same > number of lines. Down, then Across (D&A) layout overcomes such > drawback but routine adoption of this layout in a subreport puts > everything into one column (even though the original report is > designed for two columns). There is a solution for that too. > >Best wishes, >A.D.Tejpal >--------------- > > ----- Original Message ----- > From: David Emerson > To: Access Developers discussion and problem solving > Sent: Tuesday, February 28, 2006 03:33 > Subject: Re: [AccessD] Sub Report not going into Two Columns > > > Thanks for the reply William. I tried all that with no joy. I might > just have to go to fixed formatting. > > David > > At 27/02/2006, you wrote: > >...best guess is that the width of your design subreport area on > the report is narrower than the width of the two columns in the > subreport when the "can grow" is fully expanded at runtime ...try > decreasing the font size of the columns to verify this is the > problem ...or disable the "can grow" ...hth. > > > >William > > > >----- Original Message ----- > >From: "David Emerson" > >To: ; > >Sent: Monday, February 27, 2006 12:07 AM > >Subject: [AccessD] Sub Report not going into Two Columns> > > > > > Cross Posted Access D, Access L > > > > > > Access XP. > > > > > > I have a report which is a long column of text boxes with the text > > > entered into the control source. Because different printers format > > > reports slightly differently I have made the boxes shorter than the > > > text warrants and have set the can grow property on for all the text > > > boxes. There are no records associated with this report. > > > > > > I have set the Page Setup .. Number of columns to 2 and when > I view the report the text boxes flow over two columns. The full > report is two pages long. > > > > > > However, when I use the report as a subreport for another > main report then the text boxes remain in one column. I have > checked help and it suggests changing the column order to across > then down. I have tried this but it doesn't make any difference (I > guess because there are no records). > > > > > > Apart from physically placing the text boxes in two columns, does > > > anyone know how I can get them to flow properly? > > > > > > Regards > > > > > > David Emerson > > > Dalyn Software Ltd From newsgrps at dalyn.co.nz Mon Mar 6 12:12:54 2006 From: newsgrps at dalyn.co.nz (David Emerson) Date: Tue, 07 Mar 2006 07:12:54 +1300 Subject: [AccessD] Sub Report not going into Two Columns In-Reply-To: <005501c64142$7fb3bad0$e00765cb@pcadt> References: <7.0.1.0.0.20060227175809.01acbe68@dalyn.co.nz> <001f01c63b6d$fae e19a0$6101a8c0@50NM721> <7.0.1.0.0.20060228110128.01a53410@dalyn.co.nz> <0085 01c63c1e$63147b90$5540f63d@pcadt> <7.0.1.0.0.20060301113023.01a446c0@dalyn.co.nz> <005501c64142$7fb3bad0$e00765cb@pcadt> Message-ID: <7.0.1.0.0.20060307070959.01a91848@dalyn.co.nz> Thanks AD. I managed to get around it by positioning the text boxes in two columns and setting their height to what was required to show all the text. CanGrow was turned off because the text was different lengths which meant some boxes in the opposite column would be pushed down and leave gaps. David At 7/03/2006, you wrote: >David, > > It transpires that your report does not deal with a set of > records. Instead you are having text boxes (with CanGrow set to > "Yes"), having large text content. > > This situation is not amenable to multicolumn layout. > (Granularity for spreading the display across columns is a record). > >Best wishes, >A.D.Tejpal >--------------- > > ----- Original Message ----- > From: David Emerson > To: Access Developers discussion and problem solving > Sent: Wednesday, March 01, 2006 04:14 > Subject: Re: [AccessD] Sub Report not going into Two Columns > > > The report is a column of text boxes with the control source being > set to a string (eg ="This is a sample string"). Because of the > varying size of the strings, and different printers format report > text slightly differently, I have set the text boxes to a height of > 1, and set the Can Grow property to Yes. > > When the report is viewed itself the text boxes snake down the first > column of the first page, then the second column of the first page, > then to the first column of the second page. This is what I want. > > However, when I use the report as a sub report to another report > (along with a number of other sub reports) it stays at one column. > > The main report page settings (Column Tab) is set to one column > (because other reports are full width), column size width 19.5. > > The sub report page settings (Column tab) is set to 2 columns, row > spacing 0, column spacing 0.3, column size width 9, column layout > down then across. Changing to across then down has the effect of the > sub report not snaking over two columns when run on its own, nor in > the main report. > > David. > > At 28/02/2006, you wrote: > >David, > > > > It has been stated in your post that there are no records. Yet > > it is mentioned that when run as independent report, the two > > columns display nicely, filling up two pages. Could you please > > clarify this apparent contradiction? > > > > Various values as actually existing on Columns tab of page set > > up dialog box of the report may also please be furnished. If you > > are getting two column output in independent report mode, it can be > > ensured that you get similar display in subreport mode. > > > > With Across, then Down (A&D) layout, it is straightforward. > > However, in this case, there can be awkward white spaces if the > > contents of records across columns do not always measure up to same > > number of lines. Down, then Across (D&A) layout overcomes such > > drawback but routine adoption of this layout in a subreport puts > > everything into one column (even though the original report is > > designed for two columns). There is a solution for that too. > > > >Best wishes, > >A.D.Tejpal > >--------------- > > > > ----- Original Message ----- > > From: David Emerson > > To: Access Developers discussion and problem solving > > Sent: Tuesday, February 28, 2006 03:33 > > Subject: Re: [AccessD] Sub Report not going into Two Columns > > > > > > Thanks for the reply William. I tried all that with no joy. I might > > just have to go to fixed formatting. > > > > David > > > > At 27/02/2006, you wrote: > > >...best guess is that the width of your design subreport area on > > the report is narrower than the width of the two columns in the > > subreport when the "can grow" is fully expanded at runtime ...try > > decreasing the font size of the columns to verify this is the > > problem ...or disable the "can grow" ...hth. > > > > > >William > > > > > >----- Original Message ----- > > >From: "David Emerson" > > >To: ; > > >Sent: Monday, February 27, 2006 12:07 AM > > >Subject: [AccessD] Sub Report not going into Two Columns> > > > > > > > Cross Posted Access D, Access L > > > > > > > > Access XP. > > > > > > > > I have a report which is a long column of text boxes with the text > > > > entered into the control source. Because different printers format > > > > reports slightly differently I have made the boxes shorter than the > > > > text warrants and have set the can grow property on for > all the text > > > > boxes. There are no records associated with this report. > > > > > > > > I have set the Page Setup .. Number of columns to 2 and when > > I view the report the text boxes flow over two columns. The full > > report is two pages long. > > > > > > > > However, when I use the report as a subreport for another > > main report then the text boxes remain in one column. I have > > checked help and it suggests changing the column order to across > > then down. I have tried this but it doesn't make any difference (I > > guess because there are no records). > > > > > > > > Apart from physically placing the text boxes in two columns, does > > > > anyone know how I can get them to flow properly? > > > > > > > > Regards > > > > > > > > David Emerson > > > > Dalyn Software Ltd >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From martyconnelly at shaw.ca Mon Mar 6 13:22:51 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Mon, 06 Mar 2006 11:22:51 -0800 Subject: [AccessD] Code to Copy a query to Excel and Open said file? References: <051b01c63f44$a3964c60$8e01a8c0@rock> Message-ID: <440C8C0B.7030306@shaw.ca> Looking in wrong section these are the examples from Access Newswatch letter Try here http://www.helenfeddema.com/access.htm 127. Creating Excel Time Sheets from Access Data accarch127.zip Opens an Excel Spreadsheet inside a Word document from Access query You may have to muck about with references if keeping late binding especially if you are using different versions of excel and word , changing type definitions like Excel.Range to Variant and removing references, change file paths and add a couple of Constants. Const wdUserTemplatesPath = 2 Const xlNormal = -4143 '(&HFFFFEFD1) Arthur Fuller wrote: >I want to open an Access query and have its contents sent to an Excel file, >and have Excel open automatically with said file visible. I have played >around a little with TransferSpreadsheet, and if this method works, then I >am clearly doing something wrong. I have a sample file resembling the >desired result in Excel, so I could use that as a template in the "Word" >sense, but I need some guidance as to how to achieve this, because my >experiments have all failed. I checked Helen Feddema's site but her >Access->Excel heading says "Coming Soon". >Have you any suggestions in the interim? >TIA, >Arthur > > > -- Marty Connelly Victoria, B.C. Canada From Donald.A.McGillivray at sprint.com Mon Mar 6 16:42:16 2006 From: Donald.A.McGillivray at sprint.com (Mcgillivray, Don [IT]) Date: Mon, 6 Mar 2006 16:42:16 -0600 Subject: [AccessD] Preventing childless parent records Message-ID: Hello, All I have a data entry form for entering transactions where the main form holds the transaction header and a subform holds the header's details. Works as advertised, except that I have a user who has a habit of creating headers without adding line items. She sets up the header, tabs into the line item section, gets distracted (I guess), returns to the form (after dealing with the distraction) and starts over for some reason. Now, by virtue of having tabbed into the line item section, the header was saved, but because no line items were ever entered, the header is an orphan, or, more accurately, a childless parent. Every week, I scan the data and find several of these records that need to be removed. My first approach was to educate the user about how to do data entry. My second approach was to educate the user about how NOT to do data entry. Both approaches netted me that vacant nodding smile that says "I don't know what you're talking about, but if I keep nodding like this, maybe you'll go away and leave me alone." I'm sure you're all familiar with that look. This must be a common problem - the childless parent record, not the vacant nodding smile - but I'm struggling with how to detect the condition and disallow it. Can anybody point me in the right direction? Thanks! Don From hadyn at dataconcepts.co.nz Mon Mar 6 17:28:22 2006 From: hadyn at dataconcepts.co.nz (Hadyn Morgan) Date: Tue, 7 Mar 2006 12:28:22 +1300 Subject: [AccessD] Preventing childless parent records In-Reply-To: Message-ID: Hi Don You could always run a query on the closing of the form that deletes the records without children. Kind regards Hadyn -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Mcgillivray, Don [IT] Sent: Tuesday, 7 March 2006 11:42 To: AccessD Subject: [AccessD] Preventing childless parent records Hello, All I have a data entry form for entering transactions where the main form holds the transaction header and a subform holds the header's details. Works as advertised, except that I have a user who has a habit of creating headers without adding line items. She sets up the header, tabs into the line item section, gets distracted (I guess), returns to the form (after dealing with the distraction) and starts over for some reason. Now, by virtue of having tabbed into the line item section, the header was saved, but because no line items were ever entered, the header is an orphan, or, more accurately, a childless parent. Every week, I scan the data and find several of these records that need to be removed. My first approach was to educate the user about how to do data entry. My second approach was to educate the user about how NOT to do data entry. Both approaches netted me that vacant nodding smile that says "I don't know what you're talking about, but if I keep nodding like this, maybe you'll go away and leave me alone." I'm sure you're all familiar with that look. This must be a common problem - the childless parent record, not the vacant nodding smile - but I'm struggling with how to detect the condition and disallow it. Can anybody point me in the right direction? Thanks! Don -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- No virus found in this incoming message. Checked by AVG Free Edition. Version: 7.1.375 / Virus Database: 268.2.0/275 - Release Date: 6/03/2006 -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.1.375 / Virus Database: 268.2.0/275 - Release Date: 6/03/2006 From ldoering at symphonyinfo.com Mon Mar 6 17:46:41 2006 From: ldoering at symphonyinfo.com (Liz Doering) Date: Mon, 6 Mar 2006 17:46:41 -0600 Subject: [AccessD] Preventing childless parent records Message-ID: <855499653F55AD4190B242717DF132BC10C43F@dewey.Symphony.local> Don, Both are a common problem. :) Can you make a default child record, which is saved along with the parent record? Or not let her close the form until she's added child records? (On the OnClose event of the form, open a recordset (Select ParentID from ChildTable where ParentID = lngMyNewRecord) and test for EOF. If EOF = true, then Cancel = True.) I usually handle this with a little unbound pop-up form that collects the must-have data for both records, has an OK button with the code to create both records, then displays both partially filled records for the user to make changes. HTH, Liz -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mcgillivray, Don [IT] Sent: Monday, March 06, 2006 4:46 PM To: AccessD Subject: [AccessD] Preventing childless parent records Hello, All I have a data entry form for entering transactions where the main form holds the transaction header and a subform holds the header's details. Works as advertised, except that I have a user who has a habit of creating headers without adding line items. She sets up the header, tabs into the line item section, gets distracted (I guess), returns to the form (after dealing with the distraction) and starts over for some reason. Now, by virtue of having tabbed into the line item section, the header was saved, but because no line items were ever entered, the header is an orphan, or, more accurately, a childless parent. Every week, I scan the data and find several of these records that need to be removed. My first approach was to educate the user about how to do data entry. My second approach was to educate the user about how NOT to do data entry. Both approaches netted me that vacant nodding smile that says "I don't know what you're talking about, but if I keep nodding like this, maybe you'll go away and leave me alone." I'm sure you're all familiar with that look. This must be a common problem - the childless parent record, not the vacant nodding smile - but I'm struggling with how to detect the condition and disallow it. Can anybody point me in the right direction? Thanks! Don -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From dwaters at usinternet.com Mon Mar 6 18:08:45 2006 From: dwaters at usinternet.com (Dan Waters) Date: Mon, 6 Mar 2006 18:08:45 -0600 Subject: [AccessD] Preventing childless parent records In-Reply-To: <27170416.1141688043997.JavaMail.root@sniper19> Message-ID: <000001c6417b$4d19d800$0200a8c0@danwaters> Hi Don, I would add that prior to deleting those records, you should send an email to each person whose record is being deleted, along with enough information from the parent record for them to re-create the parent and child records. A good time to go through this sequence is whenever the first person is logging on in the morning. You'll need to record the name of each person entering a parent record, but that's probably already there, and you'll need another table to look up everyone's email address. I bet people will start paying more attention if they know that the computer telling them they screwed up will NOT go away when they smile vacantly at the monitor! ;-) Best of Luck! Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hadyn Morgan Sent: Monday, March 06, 2006 5:28 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Preventing childless parent records Hi Don You could always run a query on the closing of the form that deletes the records without children. Kind regards Hadyn -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Mcgillivray, Don [IT] Sent: Tuesday, 7 March 2006 11:42 To: AccessD Subject: [AccessD] Preventing childless parent records Hello, All I have a data entry form for entering transactions where the main form holds the transaction header and a subform holds the header's details. Works as advertised, except that I have a user who has a habit of creating headers without adding line items. She sets up the header, tabs into the line item section, gets distracted (I guess), returns to the form (after dealing with the distraction) and starts over for some reason. Now, by virtue of having tabbed into the line item section, the header was saved, but because no line items were ever entered, the header is an orphan, or, more accurately, a childless parent. Every week, I scan the data and find several of these records that need to be removed. My first approach was to educate the user about how to do data entry. My second approach was to educate the user about how NOT to do data entry. Both approaches netted me that vacant nodding smile that says "I don't know what you're talking about, but if I keep nodding like this, maybe you'll go away and leave me alone." I'm sure you're all familiar with that look. This must be a common problem - the childless parent record, not the vacant nodding smile - but I'm struggling with how to detect the condition and disallow it. Can anybody point me in the right direction? Thanks! Don -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- No virus found in this incoming message. Checked by AVG Free Edition. Version: 7.1.375 / Virus Database: 268.2.0/275 - Release Date: 6/03/2006 -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.1.375 / Virus Database: 268.2.0/275 - Release Date: 6/03/2006 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Donald.A.McGillivray at sprint.com Mon Mar 6 18:28:39 2006 From: Donald.A.McGillivray at sprint.com (Mcgillivray, Don [IT]) Date: Mon, 6 Mar 2006 18:28:39 -0600 Subject: [AccessD] Preventing childless parent records Message-ID: Thanks to all for your replies. I think I'll end up using some bits of each of them in my solution to this problem. My aim is to catch and eliminate the error before the user moves off the record, rather than upon close of the form. I should be able to adapt your ideas to that end. Now if I could just penetrate that vacant smile . . . Regards, Don From jwcolby at ColbyConsulting.com Mon Mar 6 18:36:08 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Mon, 6 Mar 2006 19:36:08 -0500 Subject: [AccessD] Preventing childless parent records In-Reply-To: Message-ID: <00dd01c6417f$20fef670$647aa8c0@ColbyM6805> Vacant nodding smiles is a very common problem. As for how to detect childless records, I do not believe there is any solution without code. The basic concept is: In the parent form, do not allow a close of the form, or a move off of the record without knowing that there are children. This can be done two ways. One, you can "ask" the subform how many records are in its recordset. Every (bound) form has a DAO recordset behind the form, called Recordset. Thus me.Recordset.recordcount will return the number of records in the recordset. Thus (from the parent) me!MyFormControl.form.recordset.count will return the number of records that the form in MyFormControl contains. If me!MyFormControl.form.recordset.count > 0 then cancel a form close, and warn the user they need to enter child records or delete the parent record. For moving off the record, it is a bit more complex since the only event that fires when you move to a different record is the Current event and there is no Cancel for that. Click the new record and you will move. For this reason the only thing that comes to mind is to set a bookmark, allow the move to happen, but in OnCurrent go lookup the children of the record with that bookmark. This is a very interesting discussion and the solution begs for a framework solution (which I do NOT have, but will once we figure out how to do this). John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mcgillivray, Don [IT] Sent: Monday, March 06, 2006 5:42 PM To: AccessD Subject: [AccessD] Preventing childless parent records Hello, All I have a data entry form for entering transactions where the main form holds the transaction header and a subform holds the header's details. Works as advertised, except that I have a user who has a habit of creating headers without adding line items. She sets up the header, tabs into the line item section, gets distracted (I guess), returns to the form (after dealing with the distraction) and starts over for some reason. Now, by virtue of having tabbed into the line item section, the header was saved, but because no line items were ever entered, the header is an orphan, or, more accurately, a childless parent. Every week, I scan the data and find several of these records that need to be removed. My first approach was to educate the user about how to do data entry. My second approach was to educate the user about how NOT to do data entry. Both approaches netted me that vacant nodding smile that says "I don't know what you're talking about, but if I keep nodding like this, maybe you'll go away and leave me alone." I'm sure you're all familiar with that look. This must be a common problem - the childless parent record, not the vacant nodding smile - but I'm struggling with how to detect the condition and disallow it. Can anybody point me in the right direction? Thanks! Don -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From stuart at lexacorp.com.pg Mon Mar 6 18:47:29 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Tue, 07 Mar 2006 10:47:29 +1000 Subject: [AccessD] Preventing childless parent records In-Reply-To: Message-ID: <440D64C1.24468.575F513@stuart.lexacorp.com.pg> On 6 Mar 2006 at 18:28, Mcgillivray, Don [IT] wrote: > Thanks to all for your replies. I think I'll end up using some bits of each > of them in my solution to this problem. My aim is to catch and eliminate > the error before the user moves off the record, rather than upon close of > the form. I should be able to adapt your ideas to that end. > > Now if I could just penetrate that vacant smile . . . > I've always found that using a LART end-on tends to penetrate quite well :-) -- Stuart From wdhindman at bellsouth.net Mon Mar 6 21:00:55 2006 From: wdhindman at bellsouth.net (William Hindman) Date: Mon, 6 Mar 2006 22:00:55 -0500 Subject: [AccessD] Preventing childless parent records References: <000001c6417b$4d19d800$0200a8c0@danwaters> Message-ID: <006201c64193$5a854840$6101a8c0@50NM721> ...evil genius at work! :)))))) William ----- Original Message ----- From: "Dan Waters" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 06, 2006 7:08 PM Subject: Re: [AccessD] Preventing childless parent records > Hi Don, > > I would add that prior to deleting those records, you should send an email > to each person whose record is being deleted, along with enough > information > from the parent record for them to re-create the parent and child records. > > A good time to go through this sequence is whenever the first person is > logging on in the morning. > > You'll need to record the name of each person entering a parent record, > but > that's probably already there, and you'll need another table to look up > everyone's email address. > > I bet people will start paying more attention if they know that the > computer > telling them they screwed up will NOT go away when they smile vacantly at > the monitor! ;-) > > Best of Luck! > > Dan > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hadyn Morgan > Sent: Monday, March 06, 2006 5:28 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Preventing childless parent records > > Hi Don > > You could always run a query on the closing of the form that deletes the > records without children. > > Kind regards > Hadyn > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Mcgillivray, Don > [IT] > Sent: Tuesday, 7 March 2006 11:42 > To: AccessD > Subject: [AccessD] Preventing childless parent records > > > Hello, All > > I have a data entry form for entering transactions where the main form > holds the transaction header and a subform holds the header's details. > Works as advertised, except that I have a user who has a habit of > creating headers without adding line items. She sets up the header, > tabs into the line item section, gets distracted (I guess), returns to > the form (after dealing with the distraction) and starts over for some > reason. Now, by virtue of having tabbed into the line item section, the > header was saved, but because no line items were ever entered, the > header is an orphan, or, more accurately, a childless parent. Every > week, I scan the data and find several of these records that need to be > removed. > > My first approach was to educate the user about how to do data entry. > My second approach was to educate the user about how NOT to do data > entry. > > Both approaches netted me that vacant nodding smile that says "I don't > know what you're talking about, but if I keep nodding like this, maybe > you'll go away and leave me alone." I'm sure you're all familiar with > that look. > > This must be a common problem - the childless parent record, not the > vacant nodding smile - but I'm struggling with how to detect the > condition and disallow it. Can anybody point me in the right direction? > > Thanks! > > Don > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- > No virus found in this incoming message. > Checked by AVG Free Edition. > Version: 7.1.375 / Virus Database: 268.2.0/275 - Release Date: 6/03/2006 > > -- > No virus found in this outgoing message. > Checked by AVG Free Edition. > Version: 7.1.375 / Virus Database: 268.2.0/275 - Release Date: 6/03/2006 > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From ecritt1 at alltel.net Tue Mar 7 04:29:17 2006 From: ecritt1 at alltel.net (Penn White) Date: Tue, 7 Mar 2006 05:29:17 -0500 Subject: [AccessD] Using Multidimensional Arrays Message-ID: <010501c641d1$fd330f30$0302a8c0@pennp4> ACC03 - I'm sending out emails from Access to a list of recipients selected from a listbox. Since I don't have Exchange Server, I can't be sure that the entries in the 'workstations' Outlook Contact list is up-to-date. Consequently, I have to verity first that the Contact is in that workstation's Outlook Contact list and second that the email address hasn't changed. It's a bit messy and may be time consuming since every single email will have to check all the recipients before being sent but there would rarely be more than 10 recipients for an email and more usually only 2-3 and I can't think of any other way to do it. I was thinking of creating a multi-dimensional array to hold the FirstName, LastName and Email address for each selected recipient but I can't figure out how to do it. The number of entries in the array will vary depending on how many recipients are selected. There may not necessarily be a first name and the 'last name' may actually be a string of several words, like "Belton Manufacturing" for example. Once the array is created, I'll need to concatenate the first and last names and check them against the existing entries in Outlook Contacts, updating or adding as necessary. If I can get the entries out of the array, that won't be hard, I've already done if before and have developed functions for the various pieces. I've also seen some comparisons between using structures and arrays and maybe I should be using a structure here. I'm a bit befuddled. Penn From Jdemarco at hudsonhealthplan.org Tue Mar 7 06:57:58 2006 From: Jdemarco at hudsonhealthplan.org (Jim DeMarco) Date: Tue, 7 Mar 2006 07:57:58 -0500 Subject: [AccessD] Using Multidimensional Arrays Message-ID: <08F823FD83787D4BA0B99CA580AD3C7402DE6FA2@TTNEXCHCL2.hshhp.com> Here's a case where I'd use a custom collection class rather than an array. You can refer to my article in the March O5 list newsletter for details but I think you'll find it easier to navigate than an array. As I see it you'll create a cMailInfo class containing Name (do your concatenation on the way in if possible otherwise add FName, LName properties instead) and EmailAddress properties, then a custom collection class, cMailInfoColl, to hold cMailInfo items. You can grab the cContacts collection class from the article and make a few simple mods to accommodate this scenario. Glad to answer any questions on it. HTH Jim DeMarco -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Penn White Sent: Tuesday, March 07, 2006 5:29 AM To: Access Developers discussion and problem solving Subject: [AccessD] Using Multidimensional Arrays ACC03 - I'm sending out emails from Access to a list of recipients selected from a listbox. Since I don't have Exchange Server, I can't be sure that the entries in the 'workstations' Outlook Contact list is up-to-date. Consequently, I have to verity first that the Contact is in that workstation's Outlook Contact list and second that the email address hasn't changed. It's a bit messy and may be time consuming since every single email will have to check all the recipients before being sent but there would rarely be more than 10 recipients for an email and more usually only 2-3 and I can't think of any other way to do it. I was thinking of creating a multi-dimensional array to hold the FirstName, LastName and Email address for each selected recipient but I can't figure out how to do it. The number of entries in the array will vary depending on how many recipients are selected. There may not necessarily be a first name and the 'last name' may actually be a string of several words, like "Belton Manufacturing" for example. Once the array is created, I'll need to concatenate the first and last names and check them against the existing entries in Outlook Contacts, updating or adding as necessary. If I can get the entries out of the array, that won't be hard, I've already done if before and have developed functions for the various pieces. I've also seen some comparisons between using structures and arrays and maybe I should be using a structure here. I'm a bit befuddled. Penn -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************************** "This electronic message is intended to be for the use only of the named recipient, and may contain information from Hudson Health Plan (HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". *********************************************************************************** From jwcolby at ColbyConsulting.com Tue Mar 7 07:55:40 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Tue, 7 Mar 2006 08:55:40 -0500 Subject: [AccessD] Using Multidimensional Arrays In-Reply-To: <08F823FD83787D4BA0B99CA580AD3C7402DE6FA2@TTNEXCHCL2.hshhp.com> Message-ID: <00ee01c641ee$d2b42100$647aa8c0@ColbyM6805> I agree with Jim. One of the programming structures available for us to use in Access is called a class. A class is a place to store information, along with the code required to manipulate that information. So for example, you could create an email info class that holds all of the information about one "record" - First name, Last name, Email Address. 1) You then instantiate the email info class and load one person's info in it. 2) You save the pointer to the email info class in a collection. The nice thing about collections is that you can "key" them if you want to. So you might save it keyed on the email address, or the first name and last name concatenated - assuming you need this. 3) You then build a second class - what I call a controller or supervisor class - that reads the data and instantiates all of these records and saves them in a collection in the controller class. The controller then has all of the code that you will use to do the checking. It can iterate through the collection of email classes performing the checks that you mention. Place code close to the data used. For example, if you are going to concatenate the name fields, place the code to do that in the email info class, just build a method called WholeName which concatenates the two name variables and returns the result. Doing this makes the concatenation identical everywhere that you need the data concatenated and it is a function of the email info class to return the data formatted as it is needed. The code to do the Outlook lookup and manipulation may be in the controller class, or you might have a dedicated Outlook class that "knows about" the Email Info Controller class and asks it for data. Classes are very powerful and used with collections to store the class instances, makes the "array" thing obsolete. Classes and collections will not be as fast as direct array manipulation, but it will be fast and it will allow much better documentation and so forth as you break the task down into logical pieces. BTW, one thing that people often get confused about is how much overhead is created by having the code in classes. Is the code reloaded for each instance of the class? The answer is that the code is loaded once when the first class instance is loaded. The DATA storage in memory is created for each class instance as it is loaded. So the code is literally shared, whereas the data (variables) is only created as it is needed - as an instance is loaded. There is no "additional overhead" for loading the code over and over again. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim DeMarco Sent: Tuesday, March 07, 2006 7:58 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Using Multidimensional Arrays Here's a case where I'd use a custom collection class rather than an array. You can refer to my article in the March O5 list newsletter for details but I think you'll find it easier to navigate than an array. As I see it you'll create a cMailInfo class containing Name (do your concatenation on the way in if possible otherwise add FName, LName properties instead) and EmailAddress properties, then a custom collection class, cMailInfoColl, to hold cMailInfo items. You can grab the cContacts collection class from the article and make a few simple mods to accommodate this scenario. Glad to answer any questions on it. HTH Jim DeMarco -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Penn White Sent: Tuesday, March 07, 2006 5:29 AM To: Access Developers discussion and problem solving Subject: [AccessD] Using Multidimensional Arrays ACC03 - I'm sending out emails from Access to a list of recipients selected from a listbox. Since I don't have Exchange Server, I can't be sure that the entries in the 'workstations' Outlook Contact list is up-to-date. Consequently, I have to verity first that the Contact is in that workstation's Outlook Contact list and second that the email address hasn't changed. It's a bit messy and may be time consuming since every single email will have to check all the recipients before being sent but there would rarely be more than 10 recipients for an email and more usually only 2-3 and I can't think of any other way to do it. I was thinking of creating a multi-dimensional array to hold the FirstName, LastName and Email address for each selected recipient but I can't figure out how to do it. The number of entries in the array will vary depending on how many recipients are selected. There may not necessarily be a first name and the 'last name' may actually be a string of several words, like "Belton Manufacturing" for example. Once the array is created, I'll need to concatenate the first and last names and check them against the existing entries in Outlook Contacts, updating or adding as necessary. If I can get the entries out of the array, that won't be hard, I've already done if before and have developed functions for the various pieces. I've also seen some comparisons between using structures and arrays and maybe I should be using a structure here. I'm a bit befuddled. Penn -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com **************************************************************************** ******* "This electronic message is intended to be for the use only of the named recipient, and may contain information from Hudson Health Plan (HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". **************************************************************************** ******* -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From reuben at gfconsultants.com Tue Mar 7 08:00:38 2006 From: reuben at gfconsultants.com (Reuben Cummings) Date: Tue, 7 Mar 2006 09:00:38 -0500 Subject: [AccessD] Preventing childless parent records In-Reply-To: <00dd01c6417f$20fef670$647aa8c0@ColbyM6805> Message-ID: > > For moving off the record, it is a bit more complex since the only event > that fires when you move to a different record is the Current event and > there is no Cancel for that. Actually, to handle something like moving off the record I turn off the Access record navigation and make my own. You can make one to look very similar to the Access navigation. Anyhow, in it you can write any code you want and you can then fire any record checking code you want before allowing the user to change records. The only option then to change records I guess you couldn't catch would be Page Up or Page Down. But maybe you could catch them using the Keystroke. Reuben Cummings GFC, LLC 812.523.1017 From shamil at users.mns.ru Tue Mar 7 08:51:54 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Tue, 7 Mar 2006 17:51:54 +0300 Subject: [AccessD] Using Multidimensional Arrays References: <010501c641d1$fd330f30$0302a8c0@pennp4> Message-ID: <001a01c641f6$b43a55c0$6401a8c0@Nant> Penn, yes, why not use user defined types/structures? Public Type myType FirstName As String LastName As String EmailAddress As String End Type Public Function a_Test() Dim avar(0 To 99) As myType Dim i As Integer For i = 0 To 99 With avar(i) .FirstName = "FN" & i .LastName = "LN" & i .EmailAddress = "EA" & i & "@gmail.com" End With Next i End Function Custom classes could be an overkill here but if you will have several public methods (like First and Last name concatenation) then custom class os looking as the best candidate: ' class module myClass Public FirstName As String Public LastName As String Public EmailAddress As String Public Property Get FullName() As String FullName = FirstName & " " & LastName End Property ' test Public Function a_test1() Dim avar(0 To 99) As myClass Dim i As Integer For i = 0 To 99 Set avar(i) = New myClass With avar(i) .FirstName = "FN" & i .LastName = "LN" & i .EmailAddress = "EA" & i & "@gmail.com" End With Next i End Function Classes can be also/should be better(?) used with collections - then additionally you cah have mnemonic access to collection memebers by symbolic key like fullname assuming it's unique (or you can define a surrogate key unique value property): Public Function a_test2() Dim avar As myClass Dim col As New Collection Dim i As Integer For i = 0 To 99 Set avar = New myClass With avar .FirstName = "FN" & i .LastName = "LN" & i .EmailAddress = "EA" & i & "@gmail.com" col.Add avar, .FullName End With Next i End Function Shamil ----- Original Message ----- From: "Penn White" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 07, 2006 1:29 PM Subject: [AccessD] Using Multidimensional Arrays > ACC03 - I'm sending out emails from Access to a list of recipients > selected > from a listbox. Since I don't have Exchange Server, I can't be sure that > the entries in the 'workstations' Outlook Contact list is up-to-date. > Consequently, I have to verity first that the Contact is in that > workstation's Outlook Contact list and second that the email address > hasn't > changed. It's a bit messy and may be time consuming since every single > email will have to check all the recipients before being sent but there > would rarely be more than 10 recipients for an email and more usually only > 2-3 and I can't think of any other way to do it. > > I was thinking of creating a multi-dimensional array to hold the > FirstName, > LastName and Email address for each selected recipient but I can't figure > out how to do it. The number of entries in the array will vary depending > on > how many recipients are selected. There may not necessarily be a first > name > and the 'last name' may actually be a string of several words, like > "Belton > Manufacturing" for example. > > Once the array is created, I'll need to concatenate the first and last > names > and check them against the existing entries in Outlook Contacts, updating > or > adding as necessary. If I can get the entries out of the array, that > won't > be hard, I've already done if before and have developed functions for the > various pieces. > > I've also seen some comparisons between using structures and arrays and > maybe I should be using a structure here. > > I'm a bit befuddled. > > Penn > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From oost at e-business2start.com Tue Mar 7 09:27:19 2006 From: oost at e-business2start.com (E-business2start.com - Marcel Vreuls) Date: Tue, 7 Mar 2006 07:27:19 -0800 Subject: [AccessD] Access or not as platform Message-ID: <693e53087305546f4d8111c681af44f9@e-business2start.com> Hi Group, I am wondering on which platform to develop a new application. This app should handle archiving and searching for documents, scans and emails (like hummingbird but the lite version :-). I would like to store document information and a link to the psychical document on the server. I can do this rapidly in Access with my framework and knowledge (about 4 weeks) I can do this rapid in vb6 (about (5 weeks) i can do this in c# (about 6 weeks) Any suggestions which platform to choose. Because of integration i like access but deployment is not that good because of the large runtime? c#, .net is the future platform. Any suggestions, help, tips to help me solve this issue would be welcome. tnxs, marcel From DWUTKA at marlow.com Tue Mar 7 09:50:55 2006 From: DWUTKA at marlow.com (DWUTKA at marlow.com) Date: Tue, 7 Mar 2006 09:50:55 -0600 Subject: [AccessD] Using Multidimensional Arrays Message-ID: <17724746D360394AA3BFE5B8D40A9C1BD890@main2.marlow.com> Sounds like a Class and Collection would be easier to use here. Unless you are going for supreme processing speed, that is the way I would go. Drew -----Original Message----- From: Penn White [mailto:ecritt1 at alltel.net] Sent: Tuesday, March 07, 2006 4:29 AM To: Access Developers discussion and problem solving Subject: [AccessD] Using Multidimensional Arrays ACC03 - I'm sending out emails from Access to a list of recipients selected from a listbox. Since I don't have Exchange Server, I can't be sure that the entries in the 'workstations' Outlook Contact list is up-to-date. Consequently, I have to verity first that the Contact is in that workstation's Outlook Contact list and second that the email address hasn't changed. It's a bit messy and may be time consuming since every single email will have to check all the recipients before being sent but there would rarely be more than 10 recipients for an email and more usually only 2-3 and I can't think of any other way to do it. I was thinking of creating a multi-dimensional array to hold the FirstName, LastName and Email address for each selected recipient but I can't figure out how to do it. The number of entries in the array will vary depending on how many recipients are selected. There may not necessarily be a first name and the 'last name' may actually be a string of several words, like "Belton Manufacturing" for example. Once the array is created, I'll need to concatenate the first and last names and check them against the existing entries in Outlook Contacts, updating or adding as necessary. If I can get the entries out of the array, that won't be hard, I've already done if before and have developed functions for the various pieces. I've also seen some comparisons between using structures and arrays and maybe I should be using a structure here. I'm a bit befuddled. Penn -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From hoopesg at hotmail.com Tue Mar 7 11:12:48 2006 From: hoopesg at hotmail.com (Gina Hoopes) Date: Tue, 07 Mar 2006 11:12:48 -0600 Subject: [AccessD] Difficult calculations Message-ID: A co-worker has asked for my help and I'm stumped. Perhaps one or more of you can help me figure out how he can accomplish what he needs. The way his table is laid out is the main problem, but it serves him in all of the other ways he reports on the data. He's got the following fields: StmtType, Category, and 36 fields with numbers (JanYTD, JanLYB, JanCYB for all 12 months). The StmtType field has the primary designation (VUH, PHV, VCH) and the Category field has the secondary designation (Admissions, Discharges, Patient Days, Inpatient Revenue, Outpatient Revenue). So for each primary designation he has each of the secondary designations. So, a table row looks like VUH/Admissions/JanYTD/JanLYB/JanCYB/... then VUH/Discharges/JanYTD/JanLYB/JanCYB ... I hope that makes sense since I don't know how to represent it graphically with plain text. Now here's what he needs: (VUH Inpatient Revenue JanYTD + VUH Outpatient Revenue JAN YTD) divided by VUH Inpatient Revenue Jan YTD = X - (X is his ratio) X times VUH Patient Days Jan YTD X times VUH Admissions Jan YTD X times VUH Discharges Jan YTD The calculations have to take place for each of the 36 values. I would be fairly simple for him to accomplish with queries if there were only a couple of values but with 36 columns for each primary/secondary combination it's way too cumbersome to accomplish that way. Can anyone help me figure out if he can get from here to there? Thanks so much, Gina From bheid at appdevgrp.com Tue Mar 7 13:47:59 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Tue, 7 Mar 2006 14:47:59 -0500 Subject: [AccessD] Difficult calculations In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D6A6EF@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D3509C@ADGSERVER> I would recommend the use of one or more temporary tables to process the data. It looks like from your description that he needs to use data from fields in different records in one calculation. Maybe something that would first put all of the VUH Inpatient Revenue JanYTD data into the work table. The another query that would add the VUH Outpatient Revenue JAN YTD data to the corresponding work record, etc. Then he would have one or more final queries that would take all of the data in the one record needed for a given calculation and calculate it. Is that clear as mud now? LOL. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gina Hoopes Sent: Tuesday, March 07, 2006 12:13 PM To: AccessD at databaseadvisors.com Subject: [AccessD] Difficult calculations A co-worker has asked for my help and I'm stumped. Perhaps one or more of you can help me figure out how he can accomplish what he needs. The way his table is laid out is the main problem, but it serves him in all of the other ways he reports on the data. He's got the following fields: StmtType, Category, and 36 fields with numbers (JanYTD, JanLYB, JanCYB for all 12 months). The StmtType field has the primary designation (VUH, PHV, VCH) and the Category field has the secondary designation (Admissions, Discharges, Patient Days, Inpatient Revenue, Outpatient Revenue). So for each primary designation he has each of the secondary designations. So, a table row looks like VUH/Admissions/JanYTD/JanLYB/JanCYB/... then VUH/Discharges/JanYTD/JanLYB/JanCYB ... I hope that makes sense since I don't know how to represent it graphically with plain text. Now here's what he needs: (VUH Inpatient Revenue JanYTD + VUH Outpatient Revenue JAN YTD) divided by VUH Inpatient Revenue Jan YTD = X - (X is his ratio) X times VUH Patient Days Jan YTD X times VUH Admissions Jan YTD X times VUH Discharges Jan YTD The calculations have to take place for each of the 36 values. I would be fairly simple for him to accomplish with queries if there were only a couple of values but with 36 columns for each primary/secondary combination it's way too cumbersome to accomplish that way. Can anyone help me figure out if he can get from here to there? Thanks so much, Gina From bheid at appdevgrp.com Tue Mar 7 13:52:34 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Tue, 7 Mar 2006 14:52:34 -0500 Subject: [AccessD] [SPAM SUSPECT] Access or not as platform In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D5BCA2@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D3509D@ADGSERVER> Marcel, If I had the choice, I'd probably do it in .Net with a SQL back-end (or Access if SQL is not an option). Remember, you can get SQL 2005 Express for free. With .Net, you have access to the latest technologies and there is some really nice stuff in .Net that would be difficult in Access or VB 6. You also have a choice of language(s) to use. As for the large run time, you would have a large runtime in .Net or in VB 6 also. SO I would not worry about the runtime aspect of it, unless they are using ancient PCs. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of E-business2start.com - Marcel Vreuls Sent: Tuesday, March 07, 2006 10:27 AM To: Access Developers discussion and problem solving Subject: [SPAM SUSPECT] [AccessD] Access or not as platform Importance: Low Hi Group, I am wondering on which platform to develop a new application. This app should handle archiving and searching for documents, scans and emails (like hummingbird but the lite version :-). I would like to store document information and a link to the psychical document on the server. I can do this rapidly in Access with my framework and knowledge (about 4 weeks) I can do this rapid in vb6 (about (5 weeks) i can do this in c# (about 6 weeks) Any suggestions which platform to choose. Because of integration i like access but deployment is not that good because of the large runtime? c#, .net is the future platform. Any suggestions, help, tips to help me solve this issue would be welcome. tnxs, marcel From markamatte at hotmail.com Tue Mar 7 13:55:29 2006 From: markamatte at hotmail.com (Mark A Matte) Date: Tue, 07 Mar 2006 19:55:29 +0000 Subject: [AccessD] Import Image Message In-Reply-To: Message-ID: Hello All, In A2K I'm building a form with a large number of images...the location, type, and image settings are loaded 'On Open' from a table. There is a brief moment during the load that I can see the import image message box, which has a cancel button...if I hit enter...this halts my code. I've tried setting warnings to false...but this doesn't help. I need this to go away...any ideas? Thanks, Mark A. Matte From Donald.A.McGillivray at sprint.com Tue Mar 7 14:12:29 2006 From: Donald.A.McGillivray at sprint.com (Mcgillivray, Don [IT]) Date: Tue, 7 Mar 2006 14:12:29 -0600 Subject: [AccessD] Import Image Message Message-ID: Mark, Can you convert your images to another format? I think this happens because your images are in a format that Access can use, but needs to import first. Access can work with some image types directly without the importing step. I know bitmaps work without importing, and there may be others. Don From Gustav at cactus.dk Tue Mar 7 14:14:06 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Tue, 07 Mar 2006 21:14:06 +0100 Subject: [AccessD] Import Image Message Message-ID: Hi Mark Are you talking about the Show Progress Dialog box: http://databaseadvisors.com/pipermail/accessd/2004-August/026513.html /gustav >>> markamatte at hotmail.com 07-03-2006 20:55:29 >>> Hello All, In A2K I'm building a form with a large number of images...the location, type, and image settings are loaded 'On Open' from a table. There is a brief moment during the load that I can see the import image message box, which has a cancel button...if I hit enter...this halts my code. I've tried setting warnings to false...but this doesn't help. I need this to go away...any ideas? Thanks, Mark A. Matte From markamatte at hotmail.com Tue Mar 7 14:21:47 2006 From: markamatte at hotmail.com (Mark A Matte) Date: Tue, 07 Mar 2006 20:21:47 +0000 Subject: [AccessD] Import Image Message In-Reply-To: Message-ID: I am using .gif images...When the user configures the screen...depending on what the user selects...the control has to change what .gif file it uses. I found that once I convert the mdb to an mde...hitting enter just cancels the load. This is better but not optimum. I'll play with the file format if necessary. Thanks, Mark A. Matte >From: "Mcgillivray, Don [IT]" >Reply-To: Access Developers discussion and problem >solving >To: "Access Developers discussion and problem >solving" >Subject: Re: [AccessD] Import Image Message >Date: Tue, 7 Mar 2006 14:12:29 -0600 > >Mark, > >Can you convert your images to another format? > >I think this happens because your images are in a format that Access can >use, but needs to import first. Access can work with some image types >directly without the importing step. I know bitmaps work without >importing, and there may be others. > >Don > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From hoopesg at hotmail.com Tue Mar 7 14:42:57 2006 From: hoopesg at hotmail.com (Gina Hoopes) Date: Tue, 07 Mar 2006 14:42:57 -0600 Subject: [AccessD] Difficult calculations Message-ID: Yes, he does need to use data from different records but the same field in his calculation. I was actually thinking along the lines you propose - but I don't know how to automate the process so that he doesn't have to create 144 (or more) queries. It seems like there should be a way to loop through the table and reproduce this activity over and over again for each value in each StmtType. Any suggestions? Thanks! Gina -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Tuesday, March 07, 2006 1:48 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Difficult calculations I would recommend the use of one or more temporary tables to process the data. It looks like from your description that he needs to use data from fields in different records in one calculation. Maybe something that would first put all of the VUH Inpatient Revenue JanYTD data into the work table. The another query that would add the VUH Outpatient Revenue JAN YTD data to the corresponding work record, etc. Then he would have one or more final queries that would take all of the data in the one record needed for a given calculation and calculate it. Is that clear as mud now? LOL. Bobby From martyconnelly at shaw.ca Tue Mar 7 14:59:30 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Tue, 07 Mar 2006 12:59:30 -0800 Subject: [AccessD] Access or not as platform References: <693e53087305546f4d8111c681af44f9@e-business2start.com> Message-ID: <440DF432.2030100@shaw.ca> If you have Windows 2003 Server have you considered Windows SharePoint Services that comes free with it. This will handle your document archiving and searching. WSS stores info in lists, Access can link to these as tables or you can use ADO or ADO.Net. You may not need the more advanced WSS Portal Server that roughly cost $5000, whereas rough prices for 25 users on Documentum is $30,000 and Hummingbird $15,000. There are products that allow integration of all three. Getting Email into your system really depends on your mail client, I know there are quick ways to save Outlook email into Documentum. WSS works easily with Exchange. Sending email to WSS is supposed to work with any SMTP system - it doesn't have to be Exchange. You just send email to a WSS folder. Also since WSS sits on top of SQL Server you can create your own special SQL SP search procedures. WSS FAQ site http://wss.collutions.com/default.aspx If you do write a lite Access version to do all this, there might be a few Records Manager's from the ARMA group that would be interested. E-business2start.com - Marcel Vreuls wrote: >Hi Group, >I am wondering on which platform to develop a new application. This app should handle archiving and searching for documents, scans and emails (like hummingbird but the lite version :-). I would like to store document information and a link to the psychical document on the server. > >I can do this rapidly in Access with my framework and knowledge (about 4 weeks) >I can do this rapid in vb6 (about (5 weeks) >i can do this in c# (about 6 weeks) >Any suggestions which platform to choose. Because of integration i like access but deployment is not that good because of the large runtime? >c#, .net is the future platform. > >Any suggestions, help, tips to help me solve this issue would be welcome. > >tnxs, marcel > > -- Marty Connelly Victoria, B.C. Canada From Jim.Hale at FleetPride.com Tue Mar 7 15:52:38 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Tue, 7 Mar 2006 15:52:38 -0600 Subject: [AccessD] SQL count distinct problem Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDA91@corp-es01.fleetpride.com> Assume a table with vendor, inv amt and check number. There may be multiple records for the vendor with the same check number. If I want to determine the total amt paid to a vendor and the number of checks written to him a simple groupby query will not do since the count function will count the number of occurrences not number of distinct checks. COUNT(DISTINCT(CHKNO) works in a pass through query on the AS400 but not in Jet SQL. What is the equivalent Jet SQL to determine the number of distinct checks written per vendor? TIA Jim Hale *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From Lambert.Heenan at aig.com Tue Mar 7 16:11:31 2006 From: Lambert.Heenan at aig.com (Heenan, Lambert) Date: Tue, 7 Mar 2006 16:11:31 -0600 Subject: [AccessD] SQL count distinct problem Message-ID: <1D7828CDB8350747AFE9D69E0E90DA1F1E2EB6A3@xlivmbx21.aig.com> You'll need a query that looks like this... SELECT DISTINCT Table1.Vendor, Table1.CHKNO FROM Table1; Then you can use that query as the source of your other query to do the grouping and counting. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Tuesday, March 07, 2006 4:53 PM To: 'Accessd (E-mail) Subject: [AccessD] SQL count distinct problem Assume a table with vendor, inv amt and check number. There may be multiple records for the vendor with the same check number. If I want to determine the total amt paid to a vendor and the number of checks written to him a simple groupby query will not do since the count function will count the number of occurrences not number of distinct checks. COUNT(DISTINCT(CHKNO) works in a pass through query on the AS400 but not in Jet SQL. What is the equivalent Jet SQL to determine the number of distinct checks written per vendor? TIA Jim Hale *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jim.Hale at FleetPride.com Tue Mar 7 16:26:29 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Tue, 7 Mar 2006 16:26:29 -0600 Subject: [AccessD] SQL count distinct problem Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDA92@corp-es01.fleetpride.com> That will certainly work but I was kind of hoping I was missing something simple (Like the distinct keyword) that would allow me to do it in one query. Jim Hale -----Original Message----- From: Heenan, Lambert [mailto:Lambert.Heenan at aig.com] Sent: Tuesday, March 07, 2006 4:12 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] SQL count distinct problem You'll need a query that looks like this... SELECT DISTINCT Table1.Vendor, Table1.CHKNO FROM Table1; Then you can use that query as the source of your other query to do the grouping and counting. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Tuesday, March 07, 2006 4:53 PM To: 'Accessd (E-mail) Subject: [AccessD] SQL count distinct problem Assume a table with vendor, inv amt and check number. There may be multiple records for the vendor with the same check number. If I want to determine the total amt paid to a vendor and the number of checks written to him a simple groupby query will not do since the count function will count the number of occurrences not number of distinct checks. COUNT(DISTINCT(CHKNO) works in a pass through query on the AS400 but not in Jet SQL. What is the equivalent Jet SQL to determine the number of distinct checks written per vendor? TIA Jim Hale *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From pjewett at bayplace.com Tue Mar 7 18:03:05 2006 From: pjewett at bayplace.com (Phil Jewett) Date: Tue, 7 Mar 2006 16:03:05 -0800 Subject: [AccessD] Code to Copy a query to Excel and Open said file Message-ID: I haven't been following the replies to this, but to open a query in Excel, I use: Private Sub QueryToExcel(ByVal theQuery As String) DoCmd.Echo False DoCmd.OpenQuery theQuery, acViewPreview, acReadOnly DoCmd.RunCommand acCmdOutputToExcel DoCmd.Close acQuery, theQuery DoCmd.Echo True End Sub Turning off echo avoids the 'flash' when the query opens. Another handy option is acCmdOutputToRTF, which sends the query to Word nicely formatted as a Word table. Phil Jewett Phil Jewett Consulting pjewett at bayplace.com (619) 318-4899 Arthur Fuller wrote: >I want to open an Access query and have its contents sent to an Excel >file, and have Excel open automatically with said file visible. I have >played around a little with TransferSpreadsheet, and if this method >works, then I am clearly doing something wrong. I have a sample file >resembling the desired result in Excel, so I could use that as a >template in the "Word" sense, but I need some guidance as to how to >achieve this, because my experiments have all failed. I checked Helen >Feddema's site but her >Access->Excel heading says "Coming Soon". >Have you any suggestions in the interim? >TIA, >Arthur From darrend at nimble.com.au Tue Mar 7 19:06:31 2006 From: darrend at nimble.com.au (Darren DICK) Date: Wed, 8 Mar 2006 12:06:31 +1100 Subject: [AccessD] Import Image Message In-Reply-To: Message-ID: <20060308010739.VQKH19070.omta01ps.mx.bigpond.com@DENZILLAP> Have a look at Gustav's post Recommending http://databaseadvisors.com/pipermail/accessd/2004-August/026513.html I think this is what you want It's about turning on/off a flag in the Registry to show/hide this little import dialogue box Darren ------------------------------ T: 0424 696 433 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mark A Matte Sent: Wednesday, 8 March 2006 7:22 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Import Image Message I am using .gif images...When the user configures the screen...depending on what the user selects...the control has to change what .gif file it uses. I found that once I convert the mdb to an mde...hitting enter just cancels the load. This is better but not optimum. I'll play with the file format if necessary. Thanks, Mark A. Matte >From: "Mcgillivray, Don [IT]" >Reply-To: Access Developers discussion and problem >solving >To: "Access Developers discussion and problem >solving" >Subject: Re: [AccessD] Import Image Message >Date: Tue, 7 Mar 2006 14:12:29 -0600 > >Mark, > >Can you convert your images to another format? > >I think this happens because your images are in a format that Access >can use, but needs to import first. Access can work with some image >types directly without the importing step. I know bitmaps work without >importing, and there may be others. > >Don > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Wed Mar 8 02:57:27 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 08 Mar 2006 09:57:27 +0100 Subject: [AccessD] SQL count distinct problem Message-ID: Hi Jim Simple? Normally you are not that scared? Just use Lambert's SQL as a subquery: SELECT Vendor, Count(CHKNO) As CountChecks FROM (SELECT DISTINCT Table1.Vendor, Table1.CHKNO FROM Table1) GROUP BY Vendor; But checks? I can't believe this. We are writing 2006 and you are still mailing checks around by surface mail at extensive costs? Here checks are only used for very special occasions. Every normal kind of B2B payment is electronic. Imagine what level of potential cost savings you are facing ... /gustav >>> Jim.Hale at FleetPride.com 07-03-2006 23:26 >>> That will certainly work but I was kind of hoping I was missing something simple (Like the distinct keyword) that would allow me to do it in one query. Jim Hale -----Original Message----- From: Heenan, Lambert [mailto:Lambert.Heenan at aig.com] Sent: Tuesday, March 07, 2006 4:12 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] SQL count distinct problem You'll need a query that looks like this... SELECT DISTINCT Table1.Vendor, Table1.CHKNO FROM Table1; Then you can use that query as the source of your other query to do the grouping and counting. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Tuesday, March 07, 2006 4:53 PM To: 'Accessd (E-mail) Subject: [AccessD] SQL count distinct problem Assume a table with vendor, inv amt and check number. There may be multiple records for the vendor with the same check number. If I want to determine the total amt paid to a vendor and the number of checks written to him a simple groupby query will not do since the count function will count the number of occurrences not number of distinct checks. COUNT(DISTINCT(CHKNO) works in a pass through query on the AS400 but not in Jet SQL. What is the equivalent Jet SQL to determine the number of distinct checks written per vendor? TIA Jim Hale From marcus at tsstech.com Wed Mar 8 07:08:03 2006 From: marcus at tsstech.com (Scott Marcus) Date: Wed, 8 Mar 2006 08:08:03 -0500 Subject: [AccessD] SQL count distinct problem Message-ID: SELECT W.vendor, (SELECT count(C) As Checks FROM (SELECT V.vendor, V.checkno AS C FROM VendorChecks V GROUP BY V.vendor, V.checkno) WHERE V.vendor=W.vendor) AS NumOfChecks, Sum(W.amt) AS SumOfamt FROM VendorChecks AS W GROUP BY W.vendor; Slightly more complicated, but another way of doing the query. Scott Marcus -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Tuesday, March 07, 2006 5:26 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] SQL count distinct problem That will certainly work but I was kind of hoping I was missing something simple (Like the distinct keyword) that would allow me to do it in one query. Jim Hale -----Original Message----- From: Heenan, Lambert [mailto:Lambert.Heenan at aig.com] Sent: Tuesday, March 07, 2006 4:12 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] SQL count distinct problem You'll need a query that looks like this... SELECT DISTINCT Table1.Vendor, Table1.CHKNO FROM Table1; Then you can use that query as the source of your other query to do the grouping and counting. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Tuesday, March 07, 2006 4:53 PM To: 'Accessd (E-mail) Subject: [AccessD] SQL count distinct problem Assume a table with vendor, inv amt and check number. There may be multiple records for the vendor with the same check number. If I want to determine the total amt paid to a vendor and the number of checks written to him a simple groupby query will not do since the count function will count the number of occurrences not number of distinct checks. COUNT(DISTINCT(CHKNO) works in a pass through query on the AS400 but not in Jet SQL. What is the equivalent Jet SQL to determine the number of distinct checks written per vendor? TIA Jim Hale *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com NOTICE: This electronic mail transmission is for the use of the named individual or entity to which it is directed and may contain information that is privileged or confidential. If you are not the intended recipient, any disclosure, copying, distribution or use of the contents of any information contained herein is prohibited. If you have received this electronic mail transmission in error, delete it from your system without copying or forwarding it, and notify the sender of the error by replying via email or calling TSS Technologies at (513) 772-7000, so that our address record can be corrected. Any information included in this email is provided on an ?as is? and ?where as? basis, and TSS Technologies makes no representations or warranties of any kind with respect to the completeness or accuracy of the information contained in this email. From Jdemarco at hudsonhealthplan.org Wed Mar 8 07:19:37 2006 From: Jdemarco at hudsonhealthplan.org (Jim DeMarco) Date: Wed, 8 Mar 2006 08:19:37 -0500 Subject: [AccessD] Access or not as platform Message-ID: <08F823FD83787D4BA0B99CA580AD3C74030C5C78@TTNEXCHCL2.hshhp.com> I'd have to agree. Your development time is only a couple of weeks longer but you'll end up on a platform you can feel more confident will be around in a few years. We've been an Access house probably since this company was very young (it's over 20 years old now) but given some recent threads about the future of Access as a developer tool I've been rethinking that (other reasons as well but this is certainly a driver). We've been developing some .NET stuff for web and winforms and a move for my team to .NET is not out of the question. Access will still be around as BE tool here but SQL has been the db of choice for the past couple of years. Jim DeMarco -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Tuesday, March 07, 2006 2:53 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] [SPAM SUSPECT] Access or not as platform Marcel, If I had the choice, I'd probably do it in .Net with a SQL back-end (or Access if SQL is not an option). Remember, you can get SQL 2005 Express for free. With .Net, you have access to the latest technologies and there is some really nice stuff in .Net that would be difficult in Access or VB 6. You also have a choice of language(s) to use. As for the large run time, you would have a large runtime in .Net or in VB 6 also. SO I would not worry about the runtime aspect of it, unless they are using ancient PCs. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of E-business2start.com - Marcel Vreuls Sent: Tuesday, March 07, 2006 10:27 AM To: Access Developers discussion and problem solving Subject: [SPAM SUSPECT] [AccessD] Access or not as platform Importance: Low Hi Group, I am wondering on which platform to develop a new application. This app should handle archiving and searching for documents, scans and emails (like hummingbird but the lite version :-). I would like to store document information and a link to the psychical document on the server. I can do this rapidly in Access with my framework and knowledge (about 4 weeks) I can do this rapid in vb6 (about (5 weeks) i can do this in c# (about 6 weeks) Any suggestions which platform to choose. Because of integration i like access but deployment is not that good because of the large runtime? c#, .net is the future platform. Any suggestions, help, tips to help me solve this issue would be welcome. tnxs, marcel -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************************** "This electronic message is intended to be for the use only of the named recipient, and may contain information from Hudson Health Plan (HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". *********************************************************************************** From Gustav at cactus.dk Wed Mar 8 09:13:06 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 08 Mar 2006 16:13:06 +0100 Subject: [AccessD] Problem inserting and resizing MS Web Browser Control in MS Acces97 Message-ID: Hi David et al Oh my, gems are in the archive! Who could have figured this totally weird Access97 tip out? Thanks! You may need to choose Insert, ActiveX Control from the menu and then in the listbox select the control Microsoft Webbrowser. /gustav >>> SDC 11-10-2002 11:35:05 >>> Hi I solved this problem some years ago and gave it to Ken Getz who included it in Access Adviser magazine. The trick is to add the browser object to your form, then drag it to the required size. Having sized it right, now copy it to the clipboard (control X) and then paste it back to your form (Control V). It will now keep its size. You can only do this once. To set to a different size, start from scratch by pasting a new control. I discovered this approach by accident, but think it is to do with getting two independent programs (Access and Active X) to agree on a setting at the same time. It works with other active X objects also. Good luck David -----Original Message----- From: AccessD-owner at databaseadvisors.com [mailto:AccessD-owner at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Friday, 11 October 2002 7:15 PM To: AccessD Subject: [AccessD] Problem inserting and resizing MS Web Browser Control in MS Acces97 Hi All, Have anybody solved the trouble I've here with MS Web Browser Control in Acc97? From Jim.Hale at FleetPride.com Wed Mar 8 10:18:44 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Wed, 8 Mar 2006 10:18:44 -0600 Subject: [AccessD] SQL count distinct problem Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDA95@corp-es01.fleetpride.com> Thank you. That was the sub query I was looking for. Jim Hale -----Original Message----- From: Scott Marcus [mailto:marcus at tsstech.com] Sent: Wednesday, March 08, 2006 7:08 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] SQL count distinct problem SELECT W.vendor, (SELECT count(C) As Checks FROM (SELECT V.vendor, V.checkno AS C FROM VendorChecks V GROUP BY V.vendor, V.checkno) WHERE V.vendor=W.vendor) AS NumOfChecks, Sum(W.amt) AS SumOfamt FROM VendorChecks AS W GROUP BY W.vendor; Slightly more complicated, but another way of doing the query. Scott Marcus *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From sgeller at cce.umn.edu Wed Mar 8 11:36:58 2006 From: sgeller at cce.umn.edu (Susan Geller) Date: Wed, 8 Mar 2006 11:36:58 -0600 Subject: [AccessD] Utility to help replace primary key Message-ID: <89934FC7BFD7AC40AC64F2A29B0C2D63A9DE4A@mail.cce.local> I am working with a customer that has a database where the main person table uses SSN as the primary key. Yikes, yuck, ugly etc. I'm inheriting this mess from someone else. I want to create a new autonumber field in that table to use as a primary key instead, but once I do that I'm going to need to go in and fix all the queries and reports that reference the SSN field and especially those that link to it. My question is: Is there some kind of utility that could help with this chore? Even if there was something that could find all places the SSN field was referenced, that would be good. Thanks. --Susan Susan B. Geller Office of Information Systems College of Continuing Education University of Minnesota 306 Wesbrook Hall 77 Pleasant Street SE Minneapolis, MN 55455 Phone: 612-626-4785 Fax: 612-625-2568 From dwaters at usinternet.com Wed Mar 8 12:32:28 2006 From: dwaters at usinternet.com (Dan Waters) Date: Wed, 8 Mar 2006 12:32:28 -0600 Subject: [AccessD] Utility to help replace primary key In-Reply-To: <8800883.1141839635345.JavaMail.root@sniper13> Message-ID: <000501c642de$a79683f0$0200a8c0@danwaters> Susan, I use Rick Fisher's Find & Replace for doing this kind of thing. Don't worry about buying it and having it not turn out to be helpful just for this task. You should have a find and replace tool in any case. Another possibility is SpeedFerret, which I haven't used. I believe Find & Replace is about $40, and SpeedFerret is about $150. Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Geller Sent: Wednesday, March 08, 2006 11:37 AM To: accessD at databaseadvisors.com Subject: [AccessD] Utility to help replace primary key I am working with a customer that has a database where the main person table uses SSN as the primary key. Yikes, yuck, ugly etc. I'm inheriting this mess from someone else. I want to create a new autonumber field in that table to use as a primary key instead, but once I do that I'm going to need to go in and fix all the queries and reports that reference the SSN field and especially those that link to it. My question is: Is there some kind of utility that could help with this chore? Even if there was something that could find all places the SSN field was referenced, that would be good. Thanks. --Susan Susan B. Geller Office of Information Systems College of Continuing Education University of Minnesota 306 Wesbrook Hall 77 Pleasant Street SE Minneapolis, MN 55455 Phone: 612-626-4785 Fax: 612-625-2568 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jeffrey.demulling at usbank.com Wed Mar 8 12:23:56 2006 From: jeffrey.demulling at usbank.com (jeffrey.demulling at usbank.com) Date: Wed, 8 Mar 2006 12:23:56 -0600 Subject: [AccessD] Utility to help replace primary key In-Reply-To: <89934FC7BFD7AC40AC64F2A29B0C2D63A9DE4A@mail.cce.local> Message-ID: At least for the code part you could try using MZ-Tools. Jeffrey F. Demulling Project Manager U.S. Bank Corporate Trust Services 60 Livingston Avenue EP-MN-WS3C St. Paul, MN 55107-2292 Ph: 651-495-3925 Fax: 651-495-8103 Pager: 888-732-3909 Text Messaging: 8887323909 at my2way.com email: jeffrey.demulling at usbank.com "Susan Geller" To Sent by: accessD at databaseadvisors.com accessd-bounces at d cc atabaseadvisors.c om Subject [AccessD] Utility to help replace primary key 03/08/2006 11:36 AM Please respond to "Access Developers discussion and problem solving" I am working with a customer that has a database where the main person table uses SSN as the primary key. Yikes, yuck, ugly etc. I'm inheriting this mess from someone else. I want to create a new autonumber field in that table to use as a primary key instead, but once I do that I'm going to need to go in and fix all the queries and reports that reference the SSN field and especially those that link to it. My question is: Is there some kind of utility that could help with this chore? Even if there was something that could find all places the SSN field was referenced, that would be good. Thanks. --Susan Susan B. Geller Office of Information Systems College of Continuing Education University of Minnesota 306 Wesbrook Hall 77 Pleasant Street SE Minneapolis, MN 55455 Phone: 612-626-4785 Fax: 612-625-2568 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com ------------------------------------------------------------------------------ Electronic Privacy Notice. This e-mail, and any attachments, contains information that is, or may be, covered by electronic communications privacy laws, and is also confidential and proprietary in nature. If you are not the intended recipient, please be advised that you are legally prohibited from retaining, using, copying, distributing, or otherwise disclosing this information in any manner. Instead, please reply to the sender that you have received this communication in error, and then immediately delete it. Thank you in advance for your cooperation. ============================================================================== From carlo at xsit.nl Wed Mar 8 13:21:03 2006 From: carlo at xsit.nl (Carlo van der Zon (Access IT Training)) Date: Wed, 8 Mar 2006 20:21:03 +0100 Subject: [AccessD] Start Excel Automation Message-ID: <2E4C3CCA2B12EC40B396A1A63CFC1ABA08F95F@headitdc.headit.nl> Hi I start Excel from code, fill a list, and Works fine. I recorded a macro to create a pivottable, paste it in the Access code and it Works fine. But just only the first time!! Is there any way to make sure just only 1 Excel instance is running?? Thanks Carlo From Erwin.Craps at ithelps.be Wed Mar 8 14:07:32 2006 From: Erwin.Craps at ithelps.be (Erwin Craps - IT Helps) Date: Wed, 8 Mar 2006 21:07:32 +0100 Subject: [AccessD] Start Excel Automation Message-ID: <46B976F2B698FF46A4FE7636509B22DF3CB62C@stekelbes.ithelps.local> You probably don't set your object(s) to Nothing after executing your code. Like set objExcel = Nothing -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Carlo van der Zon (Access IT Training) Sent: Wednesday, March 08, 2006 8:21 PM To: Access Developers discussion and problem solving Subject: [AccessD] Start Excel Automation Hi I start Excel from code, fill a list, and Works fine. I recorded a macro to create a pivottable, paste it in the Access code and it Works fine. But just only the first time!! Is there any way to make sure just only 1 Excel instance is running?? Thanks Carlo -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From sgoodhall at comcast.net Wed Mar 8 14:42:23 2006 From: sgoodhall at comcast.net (sgoodhall at comcast.net) Date: Wed, 08 Mar 2006 20:42:23 +0000 Subject: [AccessD] Start Excel Automation Message-ID: <030820062042.16272.440F41AF000182F700003F90220700164104040E080B0101099C@comcast.net> I have found that the safest thing to do is at the end of the execution, quit Excel and then set it to nothing. objExcel.quit set objExcel = nothing If you crash during testing, the Excel instance may get left open. If you have not set it to be visible, it can be a mess to get rid of it. To do this: set objExcel = new Excel.Application objExcel.visible = true Somewhere I have code that will run around and find all running instances of Excel (or Word) and terminate them. If I can find it readily, I will post it. Regards, Steve Goodhall, PMP -------------- Original message -------------- From: "Erwin Craps - IT Helps" > You probably don't set your object(s) to Nothing after executing your > code. > > Like > set objExcel = Nothing > > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Carlo van der > Zon (Access IT Training) > Sent: Wednesday, March 08, 2006 8:21 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Start Excel Automation > > Hi > > I start Excel from code, fill a list, and Works fine. > I recorded a macro to create a pivottable, paste it in the Access code > and it Works fine. > > But just only the first time!! Is there any way to make sure just only 1 > Excel instance is running?? > > Thanks > Carlo > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From sgoodhall at comcast.net Wed Mar 8 14:46:17 2006 From: sgoodhall at comcast.net (sgoodhall at comcast.net) Date: Wed, 08 Mar 2006 20:46:17 +0000 Subject: [AccessD] Utility to help replace primary key Message-ID: <030820062046.6582.440F4299000331A0000019B6220076369204040E080B0101099C@comcast.net> Incidentally, you don't need to rush to replace your queries. So long as SSN remains indexed, you should be able to use it for JOINing without a performance penalty. Steve Goodhall, PMP -------------- Original message -------------- From: jeffrey.demulling at usbank.com > At least for the code part you could try using MZ-Tools. > > Jeffrey F. Demulling > Project Manager > U.S. Bank Corporate Trust Services > 60 Livingston Avenue > EP-MN-WS3C > St. Paul, MN 55107-2292 > Ph: 651-495-3925 > Fax: 651-495-8103 > Pager: 888-732-3909 > Text Messaging: 8887323909 at my2way.com > email: jeffrey.demulling at usbank.com > > > > "Susan Geller" > > edu> To > Sent by: accessD at databaseadvisors.com > accessd-bounces at d cc > atabaseadvisors.c > om Subject > [AccessD] Utility to help replace > primary key > 03/08/2006 11:36 > AM > > > Please respond to > "Access > Developers > discussion and > problem solving" > > advisors.com> > > > > > > > I am working with a customer that has a database where the main person > table uses SSN as the primary key. Yikes, yuck, ugly etc. I'm > inheriting this mess from someone else. > > I want to create a new autonumber field in that table to use as a > primary key instead, but once I do that I'm going to need to go in and > fix all the queries and reports that reference the SSN field and > especially those that link to it. > > My question is: Is there some kind of utility that could help with this > chore? Even if there was something that could find all places the SSN > field was referenced, that would be good. > > Thanks. > > --Susan > > > Susan B. Geller > Office of Information Systems > College of Continuing Education > University of Minnesota > 306 Wesbrook Hall > 77 Pleasant Street SE > Minneapolis, MN 55455 > Phone: 612-626-4785 > Fax: 612-625-2568 > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > > > > ------------------------------------------------------------------------------ > Electronic Privacy Notice. This e-mail, and any attachments, contains > information that is, or may be, covered by electronic communications privacy > laws, and is also confidential and proprietary in nature. If you are not the > intended recipient, please be advised that you are legally prohibited from > retaining, using, copying, distributing, or otherwise disclosing this > information in any manner. Instead, please reply to the sender that you have > received this communication in error, and then immediately delete it. Thank you > in advance for your cooperation. > ============================================================================== > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Thu Mar 9 11:16:42 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 9 Mar 2006 12:16:42 -0500 Subject: [AccessD] MSSQL conversion Message-ID: <01dc01c6439d$3f14ebe0$647aa8c0@ColbyM6805> Are there any list members with experience converting a FE from using an MDB BE to using a SQL Server BE, who have time available to take on a project? In need someone with significant experience in this area. The FE uses bound forms but nothing much too fancy going on. However there are references to controls on forms for filtering in the form query as well as references to custom functions, likewise for data sets for combos. My client would prefer to have a "ballpark" for the cost, IOW, given X forms, with Y lists and combos, it would cost ~Z to make this happen. He is not looking for a "written in stone" estimate. Anyone with good experience doing this who has time available please contact me offline at jwcolby at colbyconsulting.com. Thanks, John W. Colby www.ColbyConsulting.com From jwcolby at ColbyConsulting.com Thu Mar 9 12:54:30 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 9 Mar 2006 13:54:30 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets Message-ID: <000e01c643aa$e82b2200$647aa8c0@ColbyM6805> Can someone give me an overview of what this involves? Is the recordset then "disconnected"? How do you handle form/subforms? I have a specific application where the users have a bound form which pulls a set of records (people) that they will be making calls to. There is a bound subform where they enter the results of the call - about 5 or 6 fields, the user's ID, date/time, call status, note etc. They get a TON of locking issues with this. The user is almost exclusively ADDING new records into the call status table, though they do occasionally "correct" info in the person's record - address / phone etc. The issue though is that as soon as they try to create a NEW record in the call status subform, they get the infamous "another person has locked this record" which is particularly puzzling since they are not editing an existing record but rather adding a new record. I changed the note from Memo to String(255) to avoid "page locking" issues, deleted all of the indexes on the fields in the call status records etc but the issues still occur. My understanding is that Index data is also stored in pages so that there might be an issue with the page that an index is attempting to store it's data in as the record is created is locked by another user creating an index using that same page. Of course there is a relationship between the person and the call status so there is at least one index that simply cannot be even seen, never mind deleted, at least without removing the relationship. So I am trying to resolve this continuous nagging locking issue. I am even willing to go unbound, but they really want to be able to see the previous calls in the subform so that they can tell what went on in previous calls. I thought that if I could bind the main people form and the child call status forms to ADO recordsets, then the update (and subsequent locking issues) would be very momentary and the probability of a lock issue occurring would decrease dramatically. However I have never done the "ADO recordset binding" before. Does anyone have any knowledge of this? John W. Colby www.ColbyConsulting.com From Jim.Hale at FleetPride.com Thu Mar 9 13:04:13 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Thu, 9 Mar 2006 13:04:13 -0600 Subject: [AccessD] Access XP forms bound to ADO recordsets Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDA9D@corp-es01.fleetpride.com> Check out p61-68 of the ADH v2. It has a good ADO locking discussion including ADO retry code. Jim Hale -----Original Message----- From: John Colby [mailto:jwcolby at colbyconsulting.com] Sent: Thursday, March 09, 2006 12:54 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Access XP forms bound to ADO recordsets Can someone give me an overview of what this involves? Is the recordset then "disconnected"? How do you handle form/subforms? I have a specific application where the users have a bound form which pulls a set of records (people) that they will be making calls to. There is a bound subform where they enter the results of the call - about 5 or 6 fields, the user's ID, date/time, call status, note etc. They get a TON of locking issues with this. The user is almost exclusively ADDING new records into the call status table, though they do occasionally "correct" info in the person's record - address / phone etc. The issue though is that as soon as they try to create a NEW record in the call status subform, they get the infamous "another person has locked this record" which is particularly puzzling since they are not editing an existing record but rather adding a new record. I changed the note from Memo to String(255) to avoid "page locking" issues, deleted all of the indexes on the fields in the call status records etc but the issues still occur. My understanding is that Index data is also stored in pages so that there might be an issue with the page that an index is attempting to store it's data in as the record is created is locked by another user creating an index using that same page. Of course there is a relationship between the person and the call status so there is at least one index that simply cannot be even seen, never mind deleted, at least without removing the relationship. So I am trying to resolve this continuous nagging locking issue. I am even willing to go unbound, but they really want to be able to see the previous calls in the subform so that they can tell what went on in previous calls. I thought that if I could bind the main people form and the child call status forms to ADO recordsets, then the update (and subsequent locking issues) would be very momentary and the probability of a lock issue occurring would decrease dramatically. However I have never done the "ADO recordset binding" before. Does anyone have any knowledge of this? John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From cfoust at infostatsystems.com Thu Mar 9 13:12:19 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 9 Mar 2006 11:12:19 -0800 Subject: [AccessD] MSSQL conversion Message-ID: John, You might want to specify *how* you want the conversion done. Are you planning to use stored procedures or keep going with Access queries? That makes a big difference on how long this kind of thing takes and will help people decide whether they can commit to it. BTW, I'm not in the market, just thought I'd add the suggestion. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 09, 2006 9:17 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] MSSQL conversion Are there any list members with experience converting a FE from using an MDB BE to using a SQL Server BE, who have time available to take on a project? In need someone with significant experience in this area. The FE uses bound forms but nothing much too fancy going on. However there are references to controls on forms for filtering in the form query as well as references to custom functions, likewise for data sets for combos. My client would prefer to have a "ballpark" for the cost, IOW, given X forms, with Y lists and combos, it would cost ~Z to make this happen. He is not looking for a "written in stone" estimate. Anyone with good experience doing this who has time available please contact me offline at jwcolby at colbyconsulting.com. Thanks, John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jeffrey.demulling at usbank.com Thu Mar 9 13:29:03 2006 From: jeffrey.demulling at usbank.com (jeffrey.demulling at usbank.com) Date: Thu, 9 Mar 2006 13:29:03 -0600 Subject: [AccessD] Return new id number In-Reply-To: Message-ID: Basics: FE = A2K BE = SQL2K I am trying to use the code below with the accompanying stored procedure when inserting a new record into the employee table. Once the employee is entered into the table I want to know the record number for this employee. The access code for inserting the employee and returning the new id number is: Public Function lngAddEmployee(strEmployeeName As String, strEmployeeEmail As String, varEmployeePhone As Variant, lngEmployeeManager As Long) As Long Dim con As New ADODB.Connection Dim cmd As New ADODB.Command Dim rs As New ADODB.Recordset cmd.CommandText = "sproc_APPEND_New_Employee" cmd.CommandType = adCmdStoredProc con = setSQLServerConnectionApplication(2, 2) con.Open cmd.ActiveConnection = con cmd.Parameters.Refresh cmd(1) = strEmployeeName cmd(2) = strEmployeeEmail cmd(3) = varEmployeePhone cmd(4) = lngEmployeeManager Set rs = cmd.Execute lngAddEmployee = rs.Fields(0).Value con.Close Set rs = Nothing Set con = Nothing Set cmd = Nothing End Function I have been trying to test it using: Sub Test() MsgBox lngAddEmployee("Test", "TestEmail", "TestPhone", 7) MsgBox "Finished" End Sub In the function it hangs on the line lngAddEmployee = rs.Fields(0).Value The stored procedure is the following and if I use Query Analyzer it works just fine and returns the id of the new record. CREATE PROCEDURE dbo.sproc_APPEND_New_Employee ----------------------------------------------------------------------------------------- -- Procedure: APPEND_New_Employee -- Author: Jeffrey F. Demulling -- Create Date: 2006-03-09 -- Database Name: DebtMaster -- Table Names: tblEmployee -- Purpose: Upload a new Employee -- -- -- Maintenance log- Most recent changes first -- Updated By Updated Date Description of Change ------------------------------------------------------------------------------------------ -- -- ------------------------------------------------------------------------------------------ @strEmployeeName nvarchar(255), @strEmployeeEmail nvarchar(255), @strEmployeePhone nvarchar(50), @intEmployeeManager int AS INSERT INTO tblEmployee ( EmployeeName, EmployeeEmail, EmployeePhone, EmployeeManager) VALUES ( @strEmployeeName, @strEmployeeEmail, @strEmployeePhone, @intEmployeeManager) SELECT SCOPE_IDENTITY() AS 'InternalEmployeeNumber' GO Can anyone see what I am doing wrong? TIA Jeffrey F. Demulling Project Manager U.S. Bank Corporate Trust Services 60 Livingston Avenue EP-MN-WS3C St. Paul, MN 55107-2292 Ph: 651-495-3925 Fax: 651-495-8103 Pager: 888-732-3909 Text Messaging: 8887323909 at my2way.com email: jeffrey.demulling at usbank.com ------------------------------------------------------------------------------ Electronic Privacy Notice. This e-mail, and any attachments, contains information that is, or may be, covered by electronic communications privacy laws, and is also confidential and proprietary in nature. If you are not the intended recipient, please be advised that you are legally prohibited from retaining, using, copying, distributing, or otherwise disclosing this information in any manner. Instead, please reply to the sender that you have received this communication in error, and then immediately delete it. Thank you in advance for your cooperation. ============================================================================== From dwaters at usinternet.com Thu Mar 9 13:34:09 2006 From: dwaters at usinternet.com (Dan Waters) Date: Thu, 9 Mar 2006 13:34:09 -0600 Subject: [AccessD] MSSQL conversion In-Reply-To: <23291174.1141931739162.JavaMail.root@sniper21> Message-ID: <000001c643b0$708e31f0$0200a8c0@danwaters> The next conversion: John Colby Consulting ---> Colby Systems, Inc. ;-) Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Thursday, March 09, 2006 1:12 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] MSSQL conversion John, You might want to specify *how* you want the conversion done. Are you planning to use stored procedures or keep going with Access queries? That makes a big difference on how long this kind of thing takes and will help people decide whether they can commit to it. BTW, I'm not in the market, just thought I'd add the suggestion. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 09, 2006 9:17 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] MSSQL conversion Are there any list members with experience converting a FE from using an MDB BE to using a SQL Server BE, who have time available to take on a project? In need someone with significant experience in this area. The FE uses bound forms but nothing much too fancy going on. However there are references to controls on forms for filtering in the form query as well as references to custom functions, likewise for data sets for combos. My client would prefer to have a "ballpark" for the cost, IOW, given X forms, with Y lists and combos, it would cost ~Z to make this happen. He is not looking for a "written in stone" estimate. Anyone with good experience doing this who has time available please contact me offline at jwcolby at colbyconsulting.com. Thanks, John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From tewald at wowway.com Thu Mar 9 13:35:57 2006 From: tewald at wowway.com (tewald at wowway.com) Date: Thu, 9 Mar 2006 13:35:57 -0600 Subject: [AccessD] Excel to Access Help Needed In-Reply-To: References: Message-ID: <20060309193404.M50407@wowway.com> I am converting an Excel-based system to Access; in other words, flat-file to relational. The main data entry Excel worksheet has data unique to the work order on the top, followed by a list of several systems that could possibly be affected by the work order; each system is listed on the form, and the user determines which ones are needed. Each system, in turn, has several ways (all have the same ways) in which it could be affected. Think of the lower portion as like this (in this example, Name = system): Name: Mary John Alex Theresa Gender: F M M F Age: 55 35 34 26 Needed: N Y N Y And then more categories. Now, I have a main table for the information at the top of the form. I have another table that includes the individual systems (names) and all of the categories (in the example above, that would be gender, age and needed), as well as a foreign key to the main table, so I can keep track of which work order contained which information. Not the best example above, I suppose, because logically gender and age would stay the same (well, gender, anyway); in the real table, that data changes with each work order, and not all of the systems (names) will be needed each time. I would like to present the users with a form similar to the Excel spreadsheet they?re used to, so I?d like to have it look like the example above. I?m drawing a blank. I hope I?ve explained this well enough. I?d appreciate any help. I?d also appreciate your not telling my wife that I told you her age. ;-) TIA, Tom Ewald From RRANTHON at sentara.com Thu Mar 9 14:07:26 2006 From: RRANTHON at sentara.com (Randall R Anthony) Date: Thu, 09 Mar 2006 15:07:26 -0500 Subject: [AccessD] Return new id number In-Reply-To: References: Message-ID: <200603092007.k29K7iH13103@databaseadvisors.com> Jeff, Not sure on where the value would be returned in the access calling procedure, but I'm using VB with SQL2K on BE. In the SP, use the following: @RetValue Int Output --after your last declaration ----return Artificial key -- in place of your select scope_identity statement Select @RetValue = @@Identity >From my VB module, what returns the value to be used further on in my code is: cmd.Parameters("@RetValue").Value Hope this helps a little bit... >>> jeffrey.demulling at usbank.com 03/09/06 2:29 PM >>> Basics: FE = A2K BE = SQL2K I am trying to use the code below with the accompanying stored procedure when inserting a new record into the employee table. Once the employee is entered into the table I want to know the record number for this employee. The access code for inserting the employee and returning the new id number is: Public Function lngAddEmployee(strEmployeeName As String, strEmployeeEmail As String, varEmployeePhone As Variant, lngEmployeeManager As Long) As Long Dim con As New ADODB.Connection Dim cmd As New ADODB.Command Dim rs As New ADODB.Recordset cmd.CommandText = "sproc_APPEND_New_Employee" cmd.CommandType = adCmdStoredProc con = setSQLServerConnectionApplication(2, 2) con.Open cmd.ActiveConnection = con cmd.Parameters.Refresh cmd(1) = strEmployeeName cmd(2) = strEmployeeEmail cmd(3) = varEmployeePhone cmd(4) = lngEmployeeManager Set rs = cmd.Execute lngAddEmployee = rs.Fields(0).Value con.Close Set rs = Nothing Set con = Nothing Set cmd = Nothing End Function I have been trying to test it using: Sub Test() MsgBox lngAddEmployee("Test", "TestEmail", "TestPhone", 7) MsgBox "Finished" End Sub In the function it hangs on the line lngAddEmployee = rs.Fields(0).Value The stored procedure is the following and if I use Query Analyzer it works just fine and returns the id of the new record. CREATE PROCEDURE dbo.sproc_APPEND_New_Employee ----------------------------------------------------------------------------------------- -- Procedure: APPEND_New_Employee -- Author: Jeffrey F. Demulling -- Create Date: 2006-03-09 -- Database Name: DebtMaster -- Table Names: tblEmployee -- Purpose: Upload a new Employee -- -- -- Maintenance log- Most recent changes first -- Updated By Updated Date Description of Change ------------------------------------------------------------------------------------------ -- -- ------------------------------------------------------------------------------------------ @strEmployeeName nvarchar(255), @strEmployeeEmail nvarchar(255), @strEmployeePhone nvarchar(50), @intEmployeeManager int AS INSERT INTO tblEmployee ( EmployeeName, EmployeeEmail, EmployeePhone, EmployeeManager) VALUES ( @strEmployeeName, @strEmployeeEmail, @strEmployeePhone, @intEmployeeManager) SELECT SCOPE_IDENTITY() AS 'InternalEmployeeNumber' GO Can anyone see what I am doing wrong? TIA Jeffrey F. Demulling Project Manager U.S. Bank Corporate Trust Services 60 Livingston Avenue EP-MN-WS3C St. Paul, MN 55107-2292 Ph: 651-495-3925 Fax: 651-495-8103 Pager: 888-732-3909 Text Messaging: 8887323909 at my2way.com email: jeffrey.demulling at usbank.com ------------------------------------------------------------------------------ Electronic Privacy Notice. This e-mail, and any attachments, contains information that is, or may be, covered by electronic communications privacy laws, and is also confidential and proprietary in nature. If you are not the intended recipient, please be advised that you are legally prohibited from retaining, using, copying, distributing, or otherwise disclosing this information in any manner. Instead, please reply to the sender that you have received this communication in error, and then immediately delete it. Thank you in advance for your cooperation. ============================================================================== -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Patricia.O'Connor at otda.state.ny.us Thu Mar 9 14:21:28 2006 From: Patricia.O'Connor at otda.state.ny.us (O'Connor, Patricia (OTDA)) Date: Thu, 9 Mar 2006 15:21:28 -0500 Subject: [AccessD] Access 2K to Excel changes field format Message-ID: <01DBAB52E30A9A4AB3D94EF8029EDBE8016B245E@EXCNYSM0A1AI.nysemail.nyenet> Hi all I have an ID field which is TEXT 14 characters In the Access report it is being displayed correctly 66007573735D01 When this report is put to EXCEL through the "Analyze it through EXCEL" it is dropping the D so the ID changes to 6.60076E+11 I have changed the excel format to TEXT. If I then go to that cell highlight and leave it will look like this 660075737350 I have the field formatted in the query and access report as text @@@@@@@@@@@@@@. Is there something in excel or access that I have to change in the options. This does not make sense and it is causing problems sending the results to others. Thanks ************************************************** * Patricia O'Connor * Associate Computer Programmer Analyst * OTDA - BDMA * (W) mailto:Patricia.O'Connor at otda.state.ny.us * (w) mailto:aa1160 at otda.state.ny.us ************************************************** -------------------------------------------------------- This e-mail, including any attachments, may be confidential, privileged or otherwise legally protected. It is intended only for the addressee. If you received this e-mail in error or from someone who was not authorized to send it to you, do not disseminate, copy or otherwise use this e-mail or its attachments. Please notify the sender immediately by reply e-mail and delete the e-mail from your system. From cfoust at infostatsystems.com Thu Mar 9 14:47:26 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 9 Mar 2006 12:47:26 -0800 Subject: [AccessD] Access 2K to Excel changes field format Message-ID: In the query, concatenate a single quote to the front of the value. Excel will see that as text and leave it alone. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of O'Connor, Patricia (OTDA) Sent: Thursday, March 09, 2006 12:21 PM To: Access Developers discussion and problem solving Subject: [AccessD] Access 2K to Excel changes field format Hi all I have an ID field which is TEXT 14 characters In the Access report it is being displayed correctly 66007573735D01 When this report is put to EXCEL through the "Analyze it through EXCEL" it is dropping the D so the ID changes to 6.60076E+11 I have changed the excel format to TEXT. If I then go to that cell highlight and leave it will look like this 660075737350 I have the field formatted in the query and access report as text @@@@@@@@@@@@@@. Is there something in excel or access that I have to change in the options. This does not make sense and it is causing problems sending the results to others. Thanks ************************************************** * Patricia O'Connor * Associate Computer Programmer Analyst * OTDA - BDMA * (W) mailto:Patricia.O'Connor at otda.state.ny.us * (w) mailto:aa1160 at otda.state.ny.us ************************************************** -------------------------------------------------------- This e-mail, including any attachments, may be confidential, privileged or otherwise legally protected. It is intended only for the addressee. If you received this e-mail in error or from someone who was not authorized to send it to you, do not disseminate, copy or otherwise use this e-mail or its attachments. Please notify the sender immediately by reply e-mail and delete the e-mail from your system. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jim.Hale at FleetPride.com Thu Mar 9 15:36:16 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Thu, 9 Mar 2006 15:36:16 -0600 Subject: [AccessD] Quotient join Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDA9E@corp-es01.fleetpride.com> Access Database Design and Programming discusses a quotient join in an appendix but fails to show the SQL. It looks useful. Does anyone know the syntax? Something like "SELECT Supplier.Sname FROM Supplier QUOTIENT JOIN Type ON Supplier.Type / Type.ID;"? Jim Hale *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From cfoust at infostatsystems.com Thu Mar 9 16:17:55 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 9 Mar 2006 14:17:55 -0800 Subject: [AccessD] Quotient join Message-ID: Look in Appendix B - The Quotient: An Additional Operation of the Relational Algebra. Then you can explain it to me! LOL Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Thursday, March 09, 2006 1:36 PM To: 'Accessd (E-mail) Subject: [AccessD] Quotient join Access Database Design and Programming discusses a quotient join in an appendix but fails to show the SQL. It looks useful. Does anyone know the syntax? Something like "SELECT Supplier.Sname FROM Supplier QUOTIENT JOIN Type ON Supplier.Type / Type.ID;"? Jim Hale *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Patricia.O'Connor at otda.state.ny.us Thu Mar 9 16:35:34 2006 From: Patricia.O'Connor at otda.state.ny.us (O'Connor, Patricia (OTDA)) Date: Thu, 9 Mar 2006 17:35:34 -0500 Subject: [AccessD] Access 2K to Excel changes field format Message-ID: <01DBAB52E30A9A4AB3D94EF8029EDBE8016B2460@EXCNYSM0A1AI.nysemail.nyenet> The query is used to put data into an Access report. The single quote shows up both in the Access report and the excel cell. That does not look good nor does it make sense to user seeing this. If I try to get rid of the single quote in the Access report then it gets reformatted in excel when using the Analyze in Excel. The field is specified and stored as text in both access and oracle and specified text in Excel. Here are some examples. When I use the original query in Access that creates the report directly in excel it did not mess up the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 66007974120D01 66001215257F01 If while looking at the access report and I click Analyze with Excel it does change the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 6.6008E+11 66001215257F01 Why would it mess up only certain id's and why when creating from Access report? Is there a way to tell if whether the wrong version of the analyze option is being used. I do have Access 97 and 2K on this machine. Thanks ************************************************** * Patricia O'Connor * Associate Computer Programmer Analyst * OTDA - BDMA * (W) mailto:Patricia.O'Connor at otda.state.ny.us * (w) mailto:aa1160 at otda.state.ny.us ************************************************** > -------------------------------------------------------- This e-mail, including any attachments, may be confidential, privileged or otherwise legally protected. It is intended only for the addressee. If you received this e-mail in error or from someone who was not authorized to send it to you, do not disseminate, copy or otherwise use this e-mail or its attachments. Please notify the sender immediately by reply e-mail and delete the e-mail from your system. -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of > Charlotte Foust > Sent: Thursday, March 09, 2006 03:47 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access 2K to Excel changes field format > > In the query, concatenate a single quote to the front of the value. > Excel will see that as text and leave it alone. > > Charlotte Foust > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of > O'Connor, Patricia (OTDA) > Sent: Thursday, March 09, 2006 12:21 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Access 2K to Excel changes field format > > > Hi all > > I have an ID field which is TEXT 14 characters > > In the Access report it is being displayed correctly 66007573735D01 > > When this report is put to EXCEL through the "Analyze it > through EXCEL" > it is dropping the D so the ID changes to 6.60076E+11 I have > changed the excel format to TEXT. If I then go to that cell > highlight and leave it will look like this 660075737350 > > I have the field formatted in the query and access report as > text @@@@@@@@@@@@@@. Is there something in excel or access > that I have to change in the options. This does not make > sense and it is causing problems sending the results to others. > > Thanks > > ************************************************** > * Patricia O'Connor > * Associate Computer Programmer Analyst > * OTDA - BDMA > * (W) mailto:Patricia.O'Connor at otda.state.ny.us > * (w) mailto:aa1160 at otda.state.ny.us > ************************************************** > -------------------------------------------------------- From rusty.hammond at cpiqpc.com Thu Mar 9 16:42:29 2006 From: rusty.hammond at cpiqpc.com (rusty.hammond at cpiqpc.com) Date: Thu, 9 Mar 2006 16:42:29 -0600 Subject: [AccessD] Access 2K to Excel changes field format Message-ID: <8301C8A868251E4C8ECD3D4FFEA40F8A154F856C@cpixchng-1.cpiqpc.net> I've discovered once the query is exported to Excel with the single quotes, if I do a find and replace and enter the single quote in both the find and replace fields, the single quote disappears from the excel cells. -----Original Message----- From: O'Connor, Patricia (OTDA) [mailto:Patricia.O'Connor at otda.state.ny.us] Sent: Thursday, March 09, 2006 4:36 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access 2K to Excel changes field format The query is used to put data into an Access report. The single quote shows up both in the Access report and the excel cell. That does not look good nor does it make sense to user seeing this. If I try to get rid of the single quote in the Access report then it gets reformatted in excel when using the Analyze in Excel. The field is specified and stored as text in both access and oracle and specified text in Excel. Here are some examples. When I use the original query in Access that creates the report directly in excel it did not mess up the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 66007974120D01 66001215257F01 If while looking at the access report and I click Analyze with Excel it does change the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 6.6008E+11 66001215257F01 Why would it mess up only certain id's and why when creating from Access report? Is there a way to tell if whether the wrong version of the analyze option is being used. I do have Access 97 and 2K on this machine. Thanks ************************************************** * Patricia O'Connor * Associate Computer Programmer Analyst * OTDA - BDMA * (W) mailto:Patricia.O'Connor at otda.state.ny.us * (w) mailto:aa1160 at otda.state.ny.us ************************************************** > -------------------------------------------------------- This e-mail, including any attachments, may be confidential, privileged or otherwise legally protected. It is intended only for the addressee. If you received this e-mail in error or from someone who was not authorized to send it to you, do not disseminate, copy or otherwise use this e-mail or its attachments. Please notify the sender immediately by reply e-mail and delete the e-mail from your system. -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of > Charlotte Foust > Sent: Thursday, March 09, 2006 03:47 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access 2K to Excel changes field format > > In the query, concatenate a single quote to the front of the value. > Excel will see that as text and leave it alone. > > Charlotte Foust > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of > O'Connor, Patricia (OTDA) > Sent: Thursday, March 09, 2006 12:21 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Access 2K to Excel changes field format > > > Hi all > > I have an ID field which is TEXT 14 characters > > In the Access report it is being displayed correctly 66007573735D01 > > When this report is put to EXCEL through the "Analyze it > through EXCEL" > it is dropping the D so the ID changes to 6.60076E+11 I have > changed the excel format to TEXT. If I then go to that cell > highlight and leave it will look like this 660075737350 > > I have the field formatted in the query and access report as > text @@@@@@@@@@@@@@. Is there something in excel or access > that I have to change in the options. This does not make > sense and it is causing problems sending the results to others. > > Thanks > > ************************************************** > * Patricia O'Connor > * Associate Computer Programmer Analyst > * OTDA - BDMA > * (W) mailto:Patricia.O'Connor at otda.state.ny.us > * (w) mailto:aa1160 at otda.state.ny.us > ************************************************** > -------------------------------------------------------- -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com ********************************************************************** WARNING: All e-mail sent to and from this address will be received, scanned or otherwise recorded by the CPI Qualified Plan Consultants, Inc. corporate e-mail system and is subject to archival, monitoring or review by, and/or disclosure to, someone other than the recipient. ********************************************************************** From Jim.Hale at FleetPride.com Thu Mar 9 16:44:09 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Thu, 9 Mar 2006 16:44:09 -0600 Subject: [AccessD] Quotient join Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDA9F@corp-es01.fleetpride.com> That's where I found the definition but not the SQL (Edition 1- maybe it is described in a later edition?). It says this table (SUPPLIER): Sname Jones Wood Supply Orange Coast Jones Wood Supply Austin Hardwoods Orange Coast West Lumber Jones Wood Supply Orange Coast West Lumber Jones Wood Supply Austin Hardwoods Orange Coast Fred's Woods divided by this table (TYPE) Type Mahogany Red Oak Poplar Walnut equals Jones Wood Supply Orange Coast ie all suppliers who supply all types. Kinda neat IMHO Jim Hale -----Original Message----- From: Charlotte Foust [mailto:cfoust at infostatsystems.com] Sent: Thursday, March 09, 2006 4:18 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Quotient join Look in Appendix B - The Quotient: An Additional Operation of the Relational Algebra. Then you can explain it to me! LOL Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Thursday, March 09, 2006 1:36 PM To: 'Accessd (E-mail) Subject: [AccessD] Quotient join Access Database Design and Programming discusses a quotient join in an appendix but fails to show the SQL. It looks useful. Does anyone know the syntax? Something like "SELECT Supplier.Sname FROM Supplier QUOTIENT JOIN Type ON Supplier.Type / Type.ID;"? Jim Hale *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From Jim.Hale at FleetPride.com Thu Mar 9 16:57:42 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Thu, 9 Mar 2006 16:57:42 -0600 Subject: [AccessD] Access 2K to Excel changes field format Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDAA0@corp-es01.fleetpride.com> I'm going to guess that D0 makes Excel think it is "0 decimals" . Try adding a space in front of the string- that may help although it is not very elegant Jim Hale. -----Original Message----- From: O'Connor, Patricia (OTDA) [mailto:Patricia.O'Connor at otda.state.ny.us] Sent: Thursday, March 09, 2006 4:36 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access 2K to Excel changes field format The query is used to put data into an Access report. The single quote shows up both in the Access report and the excel cell. That does not look good nor does it make sense to user seeing this. If I try to get rid of the single quote in the Access report then it gets reformatted in excel when using the Analyze in Excel. The field is specified and stored as text in both access and oracle and specified text in Excel. Here are some examples. When I use the original query in Access that creates the report directly in excel it did not mess up the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 66007974120D01 66001215257F01 If while looking at the access report and I click Analyze with Excel it does change the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 6.6008E+11 66001215257F01 Why would it mess up only certain id's and why when creating from Access report? Is there a way to tell if whether the wrong version of the analyze option is being used. I do have Access 97 and 2K on this machine. Thanks ************************************************** * Patricia O'Connor * Associate Computer Programmer Analyst * OTDA - BDMA * (W) mailto:Patricia.O'Connor at otda.state.ny.us * (w) mailto:aa1160 at otda.state.ny.us ************************************************** > -------------------------------------------------------- This e-mail, including any attachments, may be confidential, privileged or otherwise legally protected. It is intended only for the addressee. If you received this e-mail in error or from someone who was not authorized to send it to you, do not disseminate, copy or otherwise use this e-mail or its attachments. Please notify the sender immediately by reply e-mail and delete the e-mail from your system. -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of > Charlotte Foust > Sent: Thursday, March 09, 2006 03:47 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access 2K to Excel changes field format > > In the query, concatenate a single quote to the front of the value. > Excel will see that as text and leave it alone. > > Charlotte Foust > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of > O'Connor, Patricia (OTDA) > Sent: Thursday, March 09, 2006 12:21 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Access 2K to Excel changes field format > > > Hi all > > I have an ID field which is TEXT 14 characters > > In the Access report it is being displayed correctly 66007573735D01 > > When this report is put to EXCEL through the "Analyze it > through EXCEL" > it is dropping the D so the ID changes to 6.60076E+11 I have > changed the excel format to TEXT. If I then go to that cell > highlight and leave it will look like this 660075737350 > > I have the field formatted in the query and access report as > text @@@@@@@@@@@@@@. Is there something in excel or access > that I have to change in the options. This does not make > sense and it is causing problems sending the results to others. > > Thanks > > ************************************************** > * Patricia O'Connor > * Associate Computer Programmer Analyst > * OTDA - BDMA > * (W) mailto:Patricia.O'Connor at otda.state.ny.us > * (w) mailto:aa1160 at otda.state.ny.us > ************************************************** > -------------------------------------------------------- -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From Jim.Hale at FleetPride.com Thu Mar 9 17:11:54 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Thu, 9 Mar 2006 17:11:54 -0600 Subject: [AccessD] Access 2K to Excel changes field format Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDAA2@corp-es01.fleetpride.com> If you export the query directly (not the report) it does it properly. Why? The Microsoft giveth and the Microsoft taketh away. Blessed be the Microsoft. ;-( Jim Hale -----Original Message----- From: Hale, Jim [mailto:Jim.Hale at fleetpride.com] Sent: Thursday, March 09, 2006 4:58 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access 2K to Excel changes field format I'm going to guess that D0 makes Excel think it is "0 decimals" . Try adding a space in front of the string- that may help although it is not very elegant Jim Hale. -----Original Message----- From: O'Connor, Patricia (OTDA) [mailto:Patricia.O'Connor at otda.state.ny.us] Sent: Thursday, March 09, 2006 4:36 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access 2K to Excel changes field format The query is used to put data into an Access report. The single quote shows up both in the Access report and the excel cell. That does not look good nor does it make sense to user seeing this. If I try to get rid of the single quote in the Access report then it gets reformatted in excel when using the Analyze in Excel. The field is specified and stored as text in both access and oracle and specified text in Excel. Here are some examples. When I use the original query in Access that creates the report directly in excel it did not mess up the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 66007974120D01 66001215257F01 If while looking at the access report and I click Analyze with Excel it does change the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 6.6008E+11 66001215257F01 Why would it mess up only certain id's and why when creating from Access report? Is there a way to tell if whether the wrong version of the analyze option is being used. I do have Access 97 and 2K on this machine. Thanks *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From erbachs at gmail.com Thu Mar 9 17:24:45 2006 From: erbachs at gmail.com (Steve Erbach) Date: Thu, 9 Mar 2006 17:24:45 -0600 Subject: [AccessD] Quotient join In-Reply-To: <6A6AA9DF57E4F046BDA1E273BDDB67727DDA9F@corp-es01.fleetpride.com> References: <6A6AA9DF57E4F046BDA1E273BDDB67727DDA9F@corp-es01.fleetpride.com> Message-ID: <39cb22f30603091524r4bec9d1at50174f0d494c9f67@mail.gmail.com> Jim, Sounds like the same kind of question Jurgen had in early February. Relational Division is the beast. Look for the thread "Basic Query Design: Results" and the "Basic Query Design" threads between Feb. 5th and 10th in the archives. Steve Erbach http://TheTownCrank.blogspot.com On 3/9/06, Hale, Jim wrote: > That's where I found the definition but not the SQL (Edition 1- maybe it is > described in a later edition?). > It says this table (SUPPLIER): > Sname > Jones Wood Supply > Orange Coast > Jones Wood Supply > Austin Hardwoods > Orange Coast > West Lumber > Jones Wood Supply > Orange Coast > West Lumber > Jones Wood Supply > Austin Hardwoods > Orange Coast > Fred's Woods > > divided by this table (TYPE) > Type > Mahogany > Red Oak > Poplar > Walnut > > equals > Jones Wood Supply > Orange Coast > > ie all suppliers who supply all types. Kinda neat IMHO > Jim Hale From adtp at airtelbroadband.in Thu Mar 9 23:43:02 2006 From: adtp at airtelbroadband.in (A.D.TEJPAL) Date: Fri, 10 Mar 2006 11:13:02 +0530 Subject: [AccessD] Access 2K to Excel changes field format References: <01DBAB52E30A9A4AB3D94EF8029EDBE8016B2460@EXCNYSM0A1AI.nysemail. nyenet> Message-ID: <00c501c64405$92ea4630$850b65cb@pcadt> Patricia, It is observed that if all characters preceding the letter D in a text string are numeric digits, Excel interprets D as a mathematical qualifier, leading to the problem faced by you. Placing a space as first character in this string does not work. On the other hand, single quote at start of the string does reproduce the contents faithfully, but the single quote remains visible in Access report as well as in Excel, a situation you find not quite ideal. It is found that if the stream of numeric digits preceding D is interrupted by placing a space, hyphen or underscore just before D, the string gets reproduced faithfully in Excel. Typical samples: (a) 66007974120 D01 (b) 66007974120-D01 (c) 66007974120_D01 If your situation permits adoption of any of the revised patterns (a to c) above, it would give you proper match between the Access report and Excel output. Best wishes, A.D.Tejpal --------------- ----- Original Message ----- From: O'Connor, Patricia (OTDA) To: Access Developers discussion and problem solving Sent: Friday, March 10, 2006 04:05 Subject: Re: [AccessD] Access 2K to Excel changes field format The query is used to put data into an Access report. The single quote shows up both in the Access report and the excel cell. That does not look good nor does it make sense to user seeing this. If I try to get rid of the single quote in the Access report then it gets reformatted in excel when using the Analyze in Excel. The field is specified and stored as text in both access and oracle and specified text in Excel. Here are some examples. When I use the original query in Access that creates the report directly in excel it did not mess up the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 66007974120D01 66001215257F01 If while looking at the access report and I click Analyze with Excel it does change the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 6.6008E+11 66001215257F01 Why would it mess up only certain id's and why when creating from Access report? Is there a way to tell if whether the wrong version of the analyze option is being used. I do have Access 97 and 2K on this machine. Thanks ************************************************** * Patricia O'Connor * Associate Computer Programmer Analyst * OTDA - BDMA * (W) mailto:Patricia.O'Connor at otda.state.ny.us * (w) mailto:aa1160 at otda.state.ny.us ************************************************** -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of > Charlotte Foust > Sent: Thursday, March 09, 2006 03:47 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access 2K to Excel changes field format > > In the query, concatenate a single quote to the front of the value. > Excel will see that as text and leave it alone. > > Charlotte Foust > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of > O'Connor, Patricia (OTDA) > Sent: Thursday, March 09, 2006 12:21 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Access 2K to Excel changes field format > > Hi all > > I have an ID field which is TEXT 14 characters > > In the Access report it is being displayed correctly 66007573735D01 > > When this report is put to EXCEL through the "Analyze it > through EXCEL" it is dropping the D so the ID changes to 6.60076E+11 I have changed the excel format to TEXT. If I then go to that cell highlight and leave it will look like this 660075737350 > > I have the field formatted in the query and access report as > text @@@@@@@@@@@@@@. Is there something in excel or access that I have to change in the options. This does not make > sense and it is causing problems sending the results to others. > > Thanks > > ************************************************** > * Patricia O'Connor > * Associate Computer Programmer Analyst > * OTDA - BDMA > * (W) mailto:Patricia.O'Connor at otda.state.ny.us > * (w) mailto:aa1160 at otda.state.ny.us > ************************************************** From oost at e-business2start.com Fri Mar 10 02:23:32 2006 From: oost at e-business2start.com (E-business2start.com - Marcel Vreuls) Date: Fri, 10 Mar 2006 00:23:32 -0800 Subject: [AccessD] Performance Listview Message-ID: Hi, In order to make my A2k more attractive and user friendly i have replaced the standard Listview with the comm.contr. Listview from MS. I populate the listview by selecting a DAO.recordset and than use the? .ADD listitems functions to add the records to the listview. After that i call a function which colors the rows accordnig to a certain value in the subitems. It works fine but I notice that this goes very slow particularly the coloring of the rows. When i fill the listview with 500 records the filling takes about 5 seconds but the coloring 30 seconds. Any tips, ideas how ik can make it faster. I have a database with about 20.000 orders in it. Customers would like to have a listview which shows ALL orders so they can sort, filter etc. This i can not support performance wise with this solution. The standard listview of access is much and much faster. Thanx, marcel From Gustav at cactus.dk Fri Mar 10 05:06:31 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 10 Mar 2006 12:06:31 +0100 Subject: [AccessD] Access 2K to Excel changes field format Message-ID: Hi Patricia It's not Excel, it's much more Basic(!) than that, and Access will behave similarly. D in a number (string) is equivalent to E as used for scientific notation: ? 456E123 4.56E+125 ? 456D123 4.56E+125 This may present a well known trap if you don't know what you are doing when using IsNumeric() for testing for numerics only: ? IsNumeric("456E123") True ? IsNumeric("456D123") True ? IsNumeric("456H123") False You could try importing them to Excel this way: Left("66005769905A01", 11) & Right("66005769905A01", 3) That should cause Excel to interpret this as a compound string. /gustav >>> Patricia.O'Connor at otda.state.ny.us 09-03-2006 23:35 >>> The query is used to put data into an Access report. The single quote shows up both in the Access report and the excel cell. That does not look good nor does it make sense to user seeing this. If I try to get rid of the single quote in the Access report then it gets reformatted in excel when using the Analyze in Excel. The field is specified and stored as text in both access and oracle and specified text in Excel. Here are some examples. When I use the original query in Access that creates the report directly in excel it did not mess up the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 66007974120D01 66001215257F01 If while looking at the access report and I click Analyze with Excel it does change the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 6.6008E+11 66001215257F01 Why would it mess up only certain id's and why when creating from Access report? Is there a way to tell if whether the wrong version of the analyze option is being used. I do have Access 97 and 2K on this machine. From Gustav at cactus.dk Fri Mar 10 05:45:00 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 10 Mar 2006 12:45:00 +0100 Subject: [AccessD] Access XP forms bound to ADO recordsets Message-ID: Hi John Isn't this (request) exactly what Shamil (and Charlotte?) is working on? http://www.smsconsulting.spb.ru/shamil_s/articles/ddo.htm Thread from August 2005: Disconnected MS Access cient applications.. /gustav >>> jwcolby at ColbyConsulting.com 09-03-2006 19:54 >>> Can someone give me an overview of what this involves? Is the recordset then "disconnected"? How do you handle form/subforms? I have a specific application where the users have a bound form which pulls a set of records (people) that they will be making calls to. There is a bound subform where they enter the results of the call - about 5 or 6 fields, the user's ID, date/time, call status, note etc. They get a TON of locking issues with this. The user is almost exclusively ADDING new records into the call status table, though they do occasionally "correct" info in the person's record - address / phone etc. The issue though is that as soon as they try to create a NEW record in the call status subform, they get the infamous "another person has locked this record" which is particularly puzzling since they are not editing an existing record but rather adding a new record. I changed the note from Memo to String(255) to avoid "page locking" issues, deleted all of the indexes on the fields in the call status records etc but the issues still occur. My understanding is that Index data is also stored in pages so that there might be an issue with the page that an index is attempting to store it's data in as the record is created is locked by another user creating an index using that same page. Of course there is a relationship between the person and the call status so there is at least one index that simply cannot be even seen, never mind deleted, at least without removing the relationship. So I am trying to resolve this continuous nagging locking issue. I am even willing to go unbound, but they really want to be able to see the previous calls in the subform so that they can tell what went on in previous calls. I thought that if I could bind the main people form and the child call status forms to ADO recordsets, then the update (and subsequent locking issues) would be very momentary and the probability of a lock issue occurring would decrease dramatically. However I have never done the "ADO recordset binding" before. Does anyone have any knowledge of this? John W. Colby www.ColbyConsulting.com From Gustav at cactus.dk Fri Mar 10 06:20:15 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 10 Mar 2006 13:20:15 +0100 Subject: [AccessD] PDF printer driver and SDK Message-ID: Hi William and John et all Just noted, that Leban's PDF printing tool has had a major upgrade: http://www.lebans.com/reporttopdf.htm Looks very interesting. Uses no printer driver but a dll ...! /gustav From Gustav at cactus.dk Fri Mar 10 07:09:23 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 10 Mar 2006 14:09:23 +0100 Subject: [AccessD] PDF printer driver and SDK Message-ID: - but a Snapshot driver must be installed. Leban's routine converts a Snapshot file to pdf. /gustav >>> Gustav at cactus.dk 10-03-2006 13:20 >>> Hi William and John et all Just noted, that Leban's PDF printing tool has had a major upgrade: http://www.lebans.com/reporttopdf.htm Looks very interesting. Uses no printer driver but a dll ...! /gustav From bchacc at san.rr.com Fri Mar 10 08:24:20 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Fri, 10 Mar 2006 06:24:20 -0800 Subject: [AccessD] PDF printer driver and SDK In-Reply-To: References: Message-ID: <44118C14.2000206@san.rr.com> Gustav: Is it transparent to the user? IOW, I could put a 'Send PDF' button on the form and have the report end up as an attachment to an email? (Have a client with this very problem at the moment.) TIA Rocky Gustav Brock wrote: > - but a Snapshot driver must be installed. > > Leban's routine converts a Snapshot file to pdf. > > /gustav > > >>>> Gustav at cactus.dk 10-03-2006 13:20 >>> >>>> > Hi William and John et all > > Just noted, that Leban's PDF printing tool has had a major upgrade: > > http://www.lebans.com/reporttopdf.htm > > Looks very interesting. Uses no printer driver but a dll ...! > > /gustav > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From bgoss711 at ameritech.net Fri Mar 10 08:58:29 2006 From: bgoss711 at ameritech.net (Bud Goss) Date: Fri, 10 Mar 2006 06:58:29 -0800 (PST) Subject: [AccessD] ADO recordsets and connection objects Message-ID: <20060310145829.60837.qmail@web81304.mail.mud.yahoo.com> I am trying to learn the basics of ADO recordsets and connections. So far, I have been unable to get to first base. The two methods listed below give me the following error: Run-time error'-2147467259(80004005) [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified First attempt with udl file: Public Sub MyADOTest01() Dim rec As ADODB.Recordset Set rec = New ADODB.Recordset rec.Open "Select * from [Orders] ", "File Name = C:\B\A\x.udl" rec.CursorLocation = adUseClient rec.LockType = adlockBatchOptimistic MsgBox "OPEN HAS OCCURED " & rec!Customer End Sub Second attempt without udl file? Public Sub MyADOTest02() Dim rec As ADODB.Recordset Set rec = New ADODB.Recordset rec.Open "Select * from [Orders]", "File Name = C:\B\A\Northwind.mdb" rec.CursorLocation = adUseClient rec.LockType = adlockBatchOptimistic MsgBox "OPEN HAS OCCURED " & rec!Customer rec.activeconnection.Close End Sub C:\B\A\ . Contains x.udl and Northwind.mdb x.udl points to C:\B\A\Northwind.mdb and has MicrosoftJet 4.0 OLE Provider specified Subs are contained in another Access 2003 database that is located in C:\B\A_Access_Tr This database does have the reference Microsoft ActiveX data Objects 2.1 Llibrary Any help would be appreciated. From markamatte at hotmail.com Fri Mar 10 10:00:20 2006 From: markamatte at hotmail.com (Mark A Matte) Date: Fri, 10 Mar 2006 16:00:20 +0000 Subject: [AccessD] OT Kinda...Send email In-Reply-To: <20060310145829.60837.qmail@web81304.mail.mud.yahoo.com> Message-ID: Hello All, A friend recently moved his website to a new service and his old host is not being very cooperative...the last page of his site generated an email...in looking at the html...it used Form Method="Post" to get the info input...then Action=""...this is the piece missing...I think this was a script or .asp Any ideas/directions? A plug in or script to buy/use? Thanks, Mark A. Matte P.S... Happy Friday!!! From mikedorism at verizon.net Fri Mar 10 10:22:56 2006 From: mikedorism at verizon.net (Mike & Doris Manning) Date: Fri, 10 Mar 2006 11:22:56 -0500 Subject: [AccessD] ADO recordsets and connection objects In-Reply-To: <20060310145829.60837.qmail@web81304.mail.mud.yahoo.com> Message-ID: <000201c6445e$e5abe460$2f01a8c0@dorismanning> Here are my favorite website for sharing with ADO newbies... http://authors.aspalliance.com/aspxtreme/ado/index.aspx http://www.connectionstrings.com Doris Manning mikedorism at verizon.net -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bud Goss Sent: Friday, March 10, 2006 9:58 AM To: Access Group Subject: [AccessD] ADO recordsets and connection objects I am trying to learn the basics of ADO recordsets and connections. So far, I have been unable to get to first base. The two methods listed below give me the following error: Run-time error'-2147467259(80004005) [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified First attempt with udl file: Public Sub MyADOTest01() Dim rec As ADODB.Recordset Set rec = New ADODB.Recordset rec.Open "Select * from [Orders] ", "File Name = C:\B\A\x.udl" rec.CursorLocation = adUseClient rec.LockType = adlockBatchOptimistic MsgBox "OPEN HAS OCCURED " & rec!Customer End Sub Second attempt without udl file" Public Sub MyADOTest02() Dim rec As ADODB.Recordset Set rec = New ADODB.Recordset rec.Open "Select * from [Orders]", "File Name = C:\B\A\Northwind.mdb" rec.CursorLocation = adUseClient rec.LockType = adlockBatchOptimistic MsgBox "OPEN HAS OCCURED " & rec!Customer rec.activeconnection.Close End Sub C:\B\A\ .. Contains x.udl and Northwind.mdb x.udl points to C:\B\A\Northwind.mdb and has MicrosoftJet 4.0 OLE Provider specified Subs are contained in another Access 2003 database that is located in C:\B\A_Access_Tr This database does have the reference Microsoft ActiveX data Objects 2.1 Llibrary Any help would be appreciated. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Fri Mar 10 10:25:29 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 10 Mar 2006 08:25:29 -0800 Subject: [AccessD] ADO recordsets and connection objects Message-ID: You aren't creating a connection object or specifying a provider, so you aren't going to get to first base the way you're going. That's why you're getting the error message, you haven't told ADO what provider/driver to use so it can look at the data source. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bud Goss Sent: Friday, March 10, 2006 6:58 AM To: Access Group Subject: [AccessD] ADO recordsets and connection objects I am trying to learn the basics of ADO recordsets and connections. So far, I have been unable to get to first base. The two methods listed below give me the following error: Run-time error'-2147467259(80004005) [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified First attempt with udl file: Public Sub MyADOTest01() Dim rec As ADODB.Recordset Set rec = New ADODB.Recordset rec.Open "Select * from [Orders] ", "File Name = C:\B\A\x.udl" rec.CursorLocation = adUseClient rec.LockType = adlockBatchOptimistic MsgBox "OPEN HAS OCCURED " & rec!Customer End Sub Second attempt without udl file" Public Sub MyADOTest02() Dim rec As ADODB.Recordset Set rec = New ADODB.Recordset rec.Open "Select * from [Orders]", "File Name = C:\B\A\Northwind.mdb" rec.CursorLocation = adUseClient rec.LockType = adlockBatchOptimistic MsgBox "OPEN HAS OCCURED " & rec!Customer rec.activeconnection.Close End Sub C:\B\A\ .... Contains x.udl and Northwind.mdb x.udl points to C:\B\A\Northwind.mdb and has MicrosoftJet 4.0 OLE Provider specified Subs are contained in another Access 2003 database that is located in C:\B\A_Access_Tr This database does have the reference Microsoft ActiveX data Objects 2.1 Llibrary Any help would be appreciated. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jdemarco at hudsonhealthplan.org Fri Mar 10 10:28:44 2006 From: Jdemarco at hudsonhealthplan.org (Jim DeMarco) Date: Fri, 10 Mar 2006 11:28:44 -0500 Subject: [AccessD] ADO recordsets and connection objects Message-ID: <08F823FD83787D4BA0B99CA580AD3C74030C5F50@TTNEXCHCL2.hshhp.com> Bud, Here's a couple of things to try. Your reference to the File Name argument might need to be typed in like this: rec.Open "Select * from [Orders] ", "File Name = 'C:\B\A\x.udl';" Or you can explictly create your connection like this: Dim oCnn As ADODB.Connection Dim sFileNamePath As String Dim rs As ADODB.Recordset sFileNamePath = "C:\B\A\x.udl" strProvider = "Microsoft.Jet.OLEDB.4.0;Data Source=" & sFileNamePath _ & ";Persist Security Info=False" oCnn.Provider = strProvider oCnn.Open rs.Open "Select * from [Orders] ", oCnn HTH, Jim DeMarco -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bud Goss Sent: Friday, March 10, 2006 9:58 AM To: Access Group Subject: [AccessD] ADO recordsets and connection objects I am trying to learn the basics of ADO recordsets and connections. So far, I have been unable to get to first base. The two methods listed below give me the following error: Run-time error'-2147467259(80004005) [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified First attempt with udl file: Public Sub MyADOTest01() Dim rec As ADODB.Recordset Set rec = New ADODB.Recordset rec.Open "Select * from [Orders] ", "File Name = C:\B\A\x.udl" rec.CursorLocation = adUseClient rec.LockType = adlockBatchOptimistic MsgBox "OPEN HAS OCCURED " & rec!Customer End Sub Second attempt without udl file" Public Sub MyADOTest02() Dim rec As ADODB.Recordset Set rec = New ADODB.Recordset rec.Open "Select * from [Orders]", "File Name = C:\B\A\Northwind.mdb" rec.CursorLocation = adUseClient rec.LockType = adlockBatchOptimistic MsgBox "OPEN HAS OCCURED " & rec!Customer rec.activeconnection.Close End Sub C:\B\A\ .... Contains x.udl and Northwind.mdb x.udl points to C:\B\A\Northwind.mdb and has MicrosoftJet 4.0 OLE Provider specified Subs are contained in another Access 2003 database that is located in C:\B\A_Access_Tr This database does have the reference Microsoft ActiveX data Objects 2.1 Llibrary Any help would be appreciated. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************************** "This electronic message is intended to be for the use only of the named recipient, and may contain information from Hudson Health Plan (HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". *********************************************************************************** From bill_Patten at earthlink.net Fri Mar 10 11:04:12 2006 From: bill_Patten at earthlink.net (Bill Patten) Date: Fri, 10 Mar 2006 09:04:12 -0800 Subject: [AccessD] PDF printer driver and SDK References: <44118C14.2000206@san.rr.com> Message-ID: <001601c64464$a888bdf0$6501a8c0@BPCS> Rocky, I'm not Gustav, but do use the Lebans PDF routine to send emails. It is great in that it will take the name of the report and rename it in one move (To make emailing and storage easier.). There is a small screen that pops up counting the pages, but you only see it for a short while, unless it is a 25 or more page document. It kind of works like a progress bar so my clients don't mind. Also I couldn't figure out how to pass the parameters through it, so have the report call a function that has the correct parameters. Since my clients, pick Preview, Printer or PDF options buttons, I wanted to be consistent so just send the strCriteria to the function instead of to the report. Works great and my clients love it. Bill ----- Original Message ----- From: "Rocky Smolin - Beach Access Software" To: "Access Developers discussion and problem solving" Sent: Friday, March 10, 2006 6:24 AM Subject: Re: [AccessD] PDF printer driver and SDK Gustav: Is it transparent to the user? IOW, I could put a 'Send PDF' button on the form and have the report end up as an attachment to an email? (Have a client with this very problem at the moment.) TIA Rocky Gustav Brock wrote: > - but a Snapshot driver must be installed. > > Leban's routine converts a Snapshot file to pdf. > > /gustav > > >>>> Gustav at cactus.dk 10-03-2006 13:20 >>> >>>> > Hi William and John et all > > Just noted, that Leban's PDF printing tool has had a major upgrade: > > http://www.lebans.com/reporttopdf.htm > > Looks very interesting. Uses no printer driver but a dll ...! > > /gustav > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bchacc at san.rr.com Fri Mar 10 11:22:59 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Fri, 10 Mar 2006 09:22:59 -0800 Subject: [AccessD] PDF printer driver and SDK In-Reply-To: <001601c64464$a888bdf0$6501a8c0@BPCS> References: <44118C14.2000206@san.rr.com> <001601c64464$a888bdf0$6501a8c0@BPCS> Message-ID: <4411B5F3.6070509@san.rr.com> Bill: Thanks. That might work out real well for this client. Rocky Bill Patten wrote: > Rocky, > > I'm not Gustav, but do use the Lebans PDF routine to send emails. It is > great in that it will take the name of the report and rename it in one move > (To make emailing and storage easier.). There is a small screen that pops up > counting the pages, but you only see it for a short while, unless it is a 25 > or more page document. It kind of works like a progress bar so my clients > don't mind. Also I couldn't figure out how to pass the parameters through > it, so have the report call a function that has the correct parameters. > Since my clients, pick Preview, Printer or PDF options buttons, I wanted to > be consistent so just send the strCriteria to the function instead of to the > report. Works great and my clients love it. > > Bill > > > ----- Original Message ----- > From: "Rocky Smolin - Beach Access Software" > To: "Access Developers discussion and problem solving" > > Sent: Friday, March 10, 2006 6:24 AM > Subject: Re: [AccessD] PDF printer driver and SDK > > > Gustav: > > Is it transparent to the user? IOW, I could put a 'Send PDF' button on > the form and have the report end up as an attachment to an email? (Have > a client with this very problem at the moment.) > > TIA > > Rocky > > > Gustav Brock wrote: > >> - but a Snapshot driver must be installed. >> >> Leban's routine converts a Snapshot file to pdf. >> >> /gustav >> >> >> >>>>> Gustav at cactus.dk 10-03-2006 13:20 >>> >>>>> >>>>> >> Hi William and John et all >> >> Just noted, that Leban's PDF printing tool has had a major upgrade: >> >> http://www.lebans.com/reporttopdf.htm >> >> Looks very interesting. Uses no printer driver but a dll ...! >> >> /gustav >> >> >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From Patricia.O'Connor at otda.state.ny.us Fri Mar 10 11:54:43 2006 From: Patricia.O'Connor at otda.state.ny.us (O'Connor, Patricia (OTDA)) Date: Fri, 10 Mar 2006 12:54:43 -0500 Subject: [AccessD] Access 2K to Excel changes field format Message-ID: <01DBAB52E30A9A4AB3D94EF8029EDBE8016B2466@EXCNYSM0A1AI.nysemail.nyenet> HAHA and MS makea u crazy Thanks Patti ************************************************** * Patricia O'Connor * Associate Computer Programmer Analyst * OTDA - BDMA * (W) mailto:Patricia.O'Connor at otda.state.ny.us * (w) mailto:aa1160 at otda.state.ny.us ************************************************** > -------------------------------------------------------- This e-mail, including any attachments, may be confidential, privileged or otherwise legally protected. It is intended only for the addressee. If you received this e-mail in error or from someone who was not authorized to send it to you, do not disseminate, copy or otherwise use this e-mail or its attachments. Please notify the sender immediately by reply e-mail and delete the e-mail from your system. -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim > Sent: Thursday, March 09, 2006 06:12 PM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Access 2K to Excel changes field format > > If you export the query directly (not the report) it does it > properly. Why? > The Microsoft giveth and the Microsoft taketh away. Blessed > be the Microsoft. ;-( Jim Hale > From martyconnelly at shaw.ca Fri Mar 10 12:07:37 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Fri, 10 Mar 2006 10:07:37 -0800 Subject: [AccessD] ADO recordsets and connection objects References: <20060310145829.60837.qmail@web81304.mail.mud.yahoo.com> Message-ID: <4411C069.4080709@shaw.ca> What you want to do is download the MDAC SDK to learn ado http://msdn.microsoft.com/data/mdac/downloads/default.aspx Microsoft Data Access Components (MDAC) 2.8 Software Development Kit (15 Meg) In there, it will install a help file ADO260.CHM in C:\Program Files\Microsoft Data Access SDK\Docs\ Look through help file index for open ADO recordset parameters There are lots of sample VB code examples in the help file. I don't use udl's that much, this may work Dim con As ADODB.Connection Dim rs As ADODB.Recordset Dim sSQL As String sSQL = "SELECT * FROM Products" ' May need to Set a reference to "Microsoft OLE DB Service Component 1.0 Type Library Set con = New ADODB.Connection con.connectstring = "c:\path to \your file.udl" con.open Set rs = New ADODB.Recordset rs.Open sSQL, con If Not rs.EOF Then MsgBox rs(0) rs.MoveNext End If This should work with SQL and northwind mdb haven't tested in awhile Sub adotest() Dim sSQL As String Dim iNumRecords As Integer Dim oConnection As ADODB.Connection Dim oRecordset As ADODB.Recordset Dim rstSchema As ADODB.Recordset Dim sConnStr As String 'sConnStr = "Provider=SQLOLEDB;Data Source=MySrvr;" & _ "Initial Catalog=Northwind;User Id=MyId;Password=123aBc;" ' Connection "Provider=Microsoft.Jet.OLEDB.3.51;Data Source=D:\DataBases\Northwind.mdb" 'Access 97 version Jet 3.51 ' sConnStr = "Provider=Microsoft.Jet.OLEDB.3.51;" & _ "Data Source=C:\Program Files\Microsoft Office\Office\Samples\Northwind.mdb;" & _ "User Id=admin;" & "Password=" 'Access XP Jet 4 sConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=C:\Program Files\Microsoft Office\Office\Samples\Northwind.mdb;" & _ "User Id=admin;" & "Password=" On Error GoTo GetDataError ' Create and Open the Connection object. Set oConnection = New ADODB.Connection oConnection.CursorLocation = adUseClient oConnection.Open sConnStr sSQL = "SELECT ProductID, ProductName, CategoryID, UnitPrice " & _ "FROM Products" ' Create and Open the Recordset object. Set oRecordset = New ADODB.Recordset oRecordset.Open sSQL, oConnection, adOpenStatic, _ adLockBatchOptimistic, adCmdText blah blah with recordset ' Disconnect the Recordset. Set oRecordset.ActiveConnection = Nothing oConnection.Close Set oConnection = Nothing Exit Sub GetDataError: If oConnection Is Nothing Then HandleErrs "GetData", oRecordset.ActiveConnection Else HandleErrs "GetData", oConnection End If Exit Sub End Sub Sub HandleErrs(sSource As String, ByRef oConnection1 As ADODB.Connection) Dim sDisplayMsg As String sDisplayMsg = sDisplayMsg & "ADO (OLE) ERROR IN " & sSource sDisplayMsg = sDisplayMsg & vbCrLf & "Error: " & Err.Number sDisplayMsg = sDisplayMsg & vbCrLf & "Description: " & Err.Description sDisplayMsg = sDisplayMsg & vbCrLf & "Source: " & Err.Source If Not oConnection1 Is Nothing Then If oConnection1.Errors.Count <> 0 Then sDisplayMsg = sDisplayMsg & vbCrLf & "PROVIDER ERROR" Dim oError1 As ADODB.Error For Each oError1 In oConnection1.Errors sDisplayMsg = sDisplayMsg & vbCrLf & "Error: " & oError1.Number sDisplayMsg = sDisplayMsg & vbCrLf & "Description: " & oError1.Description sDisplayMsg = sDisplayMsg & vbCrLf & "Source: " & oError1.Source sDisplayMsg = sDisplayMsg & vbCrLf & "Native Error:" & oError1.NativeError sDisplayMsg = sDisplayMsg & vbCrLf & "SQL State: " & oError1.SQLState Next oError1 oConnection1.Errors.Clear Set oError1 = Nothing End If End If MsgBox "Error(s) occurred. See sDisplayMsg for specific information.", , _ "Hello Data" MsgBox sDisplayMsg Err.Clear End Sub Bud Goss wrote: >I am trying to learn the basics of ADO recordsets and connections. > So far, I have been unable to get to first base. The two methods listed below give me the following error: > > > Run-time error'-2147467259(80004005) > [Microsoft][ODBC Driver Manager] Data source name not found and no > default driver specified > > First attempt with udl file: > > Public Sub MyADOTest01() > Dim rec As ADODB.Recordset > Set rec = New ADODB.Recordset > rec.Open "Select * from [Orders] ", "File Name = C:\B\A\x.udl" > rec.CursorLocation = adUseClient > rec.LockType = adlockBatchOptimistic > MsgBox "OPEN HAS OCCURED " & rec!Customer > End Sub > > Second attempt without udl file > > Public Sub MyADOTest02() > Dim rec As ADODB.Recordset > Set rec = New ADODB.Recordset > rec.Open "Select * from [Orders]", "File Name = C:\B\A\Northwind.mdb" > rec.CursorLocation = adUseClient > rec.LockType = adlockBatchOptimistic > MsgBox "OPEN HAS OCCURED " & rec!Customer > rec.activeconnection.Close > End Sub > > C:\B\A\ &. Contains x.udl and Northwind.mdb > x.udl points to C:\B\A\Northwind.mdb and has MicrosoftJet 4.0 OLE Provider specified > > Subs are contained in another Access 2003 database that is located in C:\B\A_Access_Tr > > This database does have the reference > Microsoft ActiveX data Objects 2.1 Llibrary > > > Any help would be appreciated. > > -- Marty Connelly Victoria, B.C. Canada From dw-murphy at cox.net Fri Mar 10 12:22:29 2006 From: dw-murphy at cox.net (Doug Murphy) Date: Fri, 10 Mar 2006 10:22:29 -0800 Subject: [AccessD] PDF printer driver and SDK In-Reply-To: <4411B5F3.6070509@san.rr.com> Message-ID: <000801c6446f$9719d8f0$0200a8c0@murphyf3vdfepi> If you are going to distribute your application you should look at the licensing restrictions for the dll used on Lebans. I seem to recollect that he could only use it for demonstration purposes. Doug -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Friday, March 10, 2006 9:23 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] PDF printer driver and SDK Bill: Thanks. That might work out real well for this client. Rocky Bill Patten wrote: > Rocky, > > I'm not Gustav, but do use the Lebans PDF routine to send emails. It > is > great in that it will take the name of the report and rename it in one move > (To make emailing and storage easier.). There is a small screen that pops up > counting the pages, but you only see it for a short while, unless it is a 25 > or more page document. It kind of works like a progress bar so my clients > don't mind. Also I couldn't figure out how to pass the parameters through > it, so have the report call a function that has the correct parameters. > Since my clients, pick Preview, Printer or PDF options buttons, I wanted to > be consistent so just send the strCriteria to the function instead of to the > report. Works great and my clients love it. > > Bill > > > ----- Original Message ----- > From: "Rocky Smolin - Beach Access Software" > To: "Access Developers discussion and problem solving" > > Sent: Friday, March 10, 2006 6:24 AM > Subject: Re: [AccessD] PDF printer driver and SDK > > > Gustav: > > Is it transparent to the user? IOW, I could put a 'Send PDF' button > on the form and have the report end up as an attachment to an email? > (Have a client with this very problem at the moment.) > > TIA > > Rocky > > > Gustav Brock wrote: > >> - but a Snapshot driver must be installed. >> >> Leban's routine converts a Snapshot file to pdf. >> >> /gustav >> >> >> >>>>> Gustav at cactus.dk 10-03-2006 13:20 >>> >>>>> >>>>> >> Hi William and John et all >> >> Just noted, that Leban's PDF printing tool has had a major upgrade: >> >> http://www.lebans.com/reporttopdf.htm >> >> Looks very interesting. Uses no printer driver but a dll ...! >> >> /gustav >> >> >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From dw-murphy at cox.net Fri Mar 10 12:39:17 2006 From: dw-murphy at cox.net (Doug Murphy) Date: Fri, 10 Mar 2006 10:39:17 -0800 Subject: [AccessD] PDF printer driver and SDK In-Reply-To: <000801c6446f$9719d8f0$0200a8c0@murphyf3vdfepi> Message-ID: <000001c64471$efe34500$0200a8c0@murphyf3vdfepi> I am replying to my last post. Just looked at the copyright and licensing for the new version. Apparently they got the distribution rights to the dynapdf dll. Looks like we can use it in our apps. Cool! Doug -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Doug Murphy Sent: Friday, March 10, 2006 10:22 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] PDF printer driver and SDK If you are going to distribute your application you should look at the licensing restrictions for the dll used on Lebans. I seem to recollect that he could only use it for demonstration purposes. Doug -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Friday, March 10, 2006 9:23 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] PDF printer driver and SDK Bill: Thanks. That might work out real well for this client. Rocky Bill Patten wrote: > Rocky, > > I'm not Gustav, but do use the Lebans PDF routine to send emails. It > is > great in that it will take the name of the report and rename it in one move > (To make emailing and storage easier.). There is a small screen that > pops up > counting the pages, but you only see it for a short while, unless it > is a 25 > or more page document. It kind of works like a progress bar so my > clients > don't mind. Also I couldn't figure out how to pass the parameters through > it, so have the report call a function that has the correct parameters. > Since my clients, pick Preview, Printer or PDF options buttons, I wanted to > be consistent so just send the strCriteria to the function instead of > to the > report. Works great and my clients love it. > > Bill > > > ----- Original Message ----- > From: "Rocky Smolin - Beach Access Software" > To: "Access Developers discussion and problem solving" > > Sent: Friday, March 10, 2006 6:24 AM > Subject: Re: [AccessD] PDF printer driver and SDK > > > Gustav: > > Is it transparent to the user? IOW, I could put a 'Send PDF' button > on the form and have the report end up as an attachment to an email? > (Have a client with this very problem at the moment.) > > TIA > > Rocky > > > Gustav Brock wrote: > >> - but a Snapshot driver must be installed. >> >> Leban's routine converts a Snapshot file to pdf. >> >> /gustav >> >> >> >>>>> Gustav at cactus.dk 10-03-2006 13:20 >>> >>>>> >>>>> >> Hi William and John et all >> >> Just noted, that Leban's PDF printing tool has had a major upgrade: >> >> http://www.lebans.com/reporttopdf.htm >> >> Looks very interesting. Uses no printer driver but a dll ...! >> >> /gustav >> >> >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Fri Mar 10 13:32:59 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Fri, 10 Mar 2006 22:32:59 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: Message-ID: <002001c64479$75e41010$6501a8c0@Nant> Hi Gustav, This work is frozen - no time - all time is "leaking" for everyday routine work for money for living... It would be interesting to make it but the chances are considered here very low now... Shamil ----- Original Message ----- From: "Gustav Brock" To: Sent: Friday, March 10, 2006 2:45 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi John > > Isn't this (request) exactly what Shamil (and Charlotte?) is working on? > > http://www.smsconsulting.spb.ru/shamil_s/articles/ddo.htm > > Thread from August 2005: > > Disconnected MS Access cient applications.. > > /gustav > >>>> jwcolby at ColbyConsulting.com 09-03-2006 19:54 >>> > Can someone give me an overview of what this involves? Is the recordset > then "disconnected"? How do you handle form/subforms? > > I have a specific application where the users have a bound form which > pulls > a set of records (people) that they will be making calls to. There is a > bound subform where they enter the results of the call - about 5 or 6 > fields, the user's ID, date/time, call status, note etc. They get a TON > of > locking issues with this. The user is almost exclusively ADDING new > records > into the call status table, though they do occasionally "correct" info in > the person's record - address / phone etc. > > The issue though is that as soon as they try to create a NEW record in the > call status subform, they get the infamous "another person has locked this > record" which is particularly puzzling since they are not editing an > existing record but rather adding a new record. I changed the note from > Memo to String(255) to avoid "page locking" issues, deleted all of the > indexes on the fields in the call status records etc but the issues still > occur. > > My understanding is that Index data is also stored in pages so that there > might be an issue with the page that an index is attempting to store it's > data in as the record is created is locked by another user creating an > index > using that same page. Of course there is a relationship between the > person > and the call status so there is at least one index that simply cannot be > even seen, never mind deleted, at least without removing the relationship. > > So I am trying to resolve this continuous nagging locking issue. I am > even > willing to go unbound, but they really want to be able to see the previous > calls in the subform so that they can tell what went on in previous calls. > I thought that if I could bind the main people form and the child call > status forms to ADO recordsets, then the update (and subsequent locking > issues) would be very momentary and the probability of a lock issue > occurring would decrease dramatically. However I have never done the "ADO > recordset binding" before. > > Does anyone have any knowledge of this? > > John W. Colby > www.ColbyConsulting.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From bill_Patten at earthlink.net Fri Mar 10 13:28:56 2006 From: bill_Patten at earthlink.net (Bill Patten) Date: Fri, 10 Mar 2006 11:28:56 -0800 Subject: [AccessD] PDF printer driver and SDK References: <000001c64471$efe34500$0200a8c0@murphyf3vdfepi> Message-ID: <003401c64478$e0457350$6501a8c0@BPCS> Doug, That's the way I read it. Sure hope it's true, cause I already shipped it. Bill ----- Original Message ----- From: "Doug Murphy" To: "'Access Developers discussion and problem solving'" Sent: Friday, March 10, 2006 10:39 AM Subject: Re: [AccessD] PDF printer driver and SDK I am replying to my last post. Just looked at the copyright and licensing for the new version. Apparently they got the distribution rights to the dynapdf dll. Looks like we can use it in our apps. Cool! Doug -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Doug Murphy Sent: Friday, March 10, 2006 10:22 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] PDF printer driver and SDK If you are going to distribute your application you should look at the licensing restrictions for the dll used on Lebans. I seem to recollect that he could only use it for demonstration purposes. Doug -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Friday, March 10, 2006 9:23 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] PDF printer driver and SDK Bill: Thanks. That might work out real well for this client. Rocky Bill Patten wrote: > Rocky, > > I'm not Gustav, but do use the Lebans PDF routine to send emails. It > is > great in that it will take the name of the report and rename it in one move > (To make emailing and storage easier.). There is a small screen that > pops up > counting the pages, but you only see it for a short while, unless it > is a 25 > or more page document. It kind of works like a progress bar so my > clients > don't mind. Also I couldn't figure out how to pass the parameters through > it, so have the report call a function that has the correct parameters. > Since my clients, pick Preview, Printer or PDF options buttons, I wanted to > be consistent so just send the strCriteria to the function instead of > to the > report. Works great and my clients love it. > > Bill > > > ----- Original Message ----- > From: "Rocky Smolin - Beach Access Software" > To: "Access Developers discussion and problem solving" > > Sent: Friday, March 10, 2006 6:24 AM > Subject: Re: [AccessD] PDF printer driver and SDK > > > Gustav: > > Is it transparent to the user? IOW, I could put a 'Send PDF' button > on the form and have the report end up as an attachment to an email? > (Have a client with this very problem at the moment.) > > TIA > > Rocky > > > Gustav Brock wrote: > >> - but a Snapshot driver must be installed. >> >> Leban's routine converts a Snapshot file to pdf. >> >> /gustav >> >> >> >>>>> Gustav at cactus.dk 10-03-2006 13:20 >>> >>>>> >>>>> >> Hi William and John et all >> >> Just noted, that Leban's PDF printing tool has had a major upgrade: >> >> http://www.lebans.com/reporttopdf.htm >> >> Looks very interesting. Uses no printer driver but a dll ...! >> >> /gustav >> >> >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Fri Mar 10 13:40:46 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 10 Mar 2006 20:40:46 +0100 Subject: [AccessD] Access XP forms bound to ADO recordsets Message-ID: Hi Shamil OK, I guess that's good news, after all ... /gustav >>> shamil at users.mns.ru 10-03-2006 20:32:59 >>> Hi Gustav, This work is frozen - no time - all time is "leaking" for everyday routine work for money for living... From bgoss711 at ameritech.net Fri Mar 10 17:22:19 2006 From: bgoss711 at ameritech.net (Bud Goss) Date: Fri, 10 Mar 2006 15:22:19 -0800 (PST) Subject: [AccessD] ADO recordsets and connection objects - solution Message-ID: <20060310232219.55786.qmail@web81304.mail.mud.yahoo.com> Thanks to all who replied to my post. Using the information you provided and hacking around a bit I finally was able to limp into first base on this effort. Next week I will have to try to continue and try to steal ADO second base. The code that actually worked using the udl file is: ( found that I do not have to reference ?Microsoft PLE DB Service Component 1.0) Public Sub MyADOTestAA() Dim oCnn As ADODB.Connection Dim sFileNamePath As String Dim rs As ADODB.Recordset Dim strProvider As String Set rs = New ADODB.Recordset Set oCnn = New ADODB.Connection sFileNamePath = "File Name=c:\B\A\X.udl" oCnn.ConnectionString = "Provider = 'Microsoft.Jet.OLEDB.4.0';" & " Persist Security Info= 'False';" oCnn.Open sFileNamePath rs.Open "Select * from [Products] ", oCnn rs.MoveFirst MsgBox "=> " & rs(0) & " - " & rs(1) & " - " & rs(2) rs.Close Set rs = Nothing Set oCnn = Nothing End Sub *** Original Post *** I am trying to learn the basics of ADO recordsets and connections. So far, I have been unable to get to first base. The two methods listed below give me the following error: Run-time error'-2147467259(80004005) [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified First attempt with udl file: Public Sub MyADOTest01() Dim rec As ADODB.Recordset Set rec = New ADODB.Recordset rec.Open "Select * from [Orders] ", "File Name = C:\B\A\x.udl" rec.CursorLocation = adUseClient rec.LockType = adlockBatchOptimistic MsgBox "OPEN HAS OCCURED " & rec!Customer End Sub Second attempt without udl file? Public Sub MyADOTest02() Dim rec As ADODB.Recordset Set rec = New ADODB.Recordset rec.Open "Select * from [Orders]", "File Name = C:\B\A\Northwind.mdb" rec.CursorLocation = adUseClient rec.LockType = adlockBatchOptimistic MsgBox "OPEN HAS OCCURED " & rec!Customer rec.activeconnection.Close End Sub C:\B\A\ . Contains x.udl and Northwind.mdb x.udl points to C:\B\A\Northwind.mdb and has MicrosoftJet 4.0 OLE Provider specified Subs are contained in another Access 2003 database that is located in C:\B\A_Access_Tr This database does have the reference Microsoft ActiveX data Objects 2.1 Llibrary Any help would be appreciated. From shamil at users.mns.ru Fri Mar 10 18:36:15 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Sat, 11 Mar 2006 03:36:15 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <000e01c643aa$e82b2200$647aa8c0@ColbyM6805> Message-ID: <05f501c644a3$d1643080$6501a8c0@Nant> John, I did try ADODB disconnected recordsets with MS Access XP/2003 MDBs and they seems to be working rather well. That is a surprise here because the book "Microsoft Access Developer's Guide to SQL Server", which I read before states this can't be done. But the book I have is for MS Access 2000/MS SQL 2000 - and for MS Access 2000 this feature doesn't work. I don't have a new edition of the book - if it exists the authors may have written about this new useful feature.... I hope I'm not mistaken - I did recheck many times - yes, it seems to work! Please verify.... In P.S. of this message there is a sample code, which basicaly works OK but which needs more investigations - it doesn't yet process all the use cases. This code is for [authors] table from [pubs] sample database. It can work with both MS SQL and MS Access BEs use: - BindFormToSQLADORecordset - to connect to MS SQL BE and - BindFormToJetADORecordset to connect to MS Access BE. I did check with MS SQL profiler - communication with MS SQL BE is minimal and connection is used only when database operation is in progress - i.e. on short period of time for properly organized communication with BE database. If additional investigations/testing will show that this simple method works for all the required use cases then that's "what doctor ordered." - I mean you can relax and happily continue staying in your comfortable "bounders camp" for quite some time... (Although I'd recommend to use GUIDs for PKs) It would be also very useful to make it working in disconnected optimistic batch update mode but I doubt it's possible - I'd be happy somebody will present here a sample how similar simple method can be used in disconnected optimistic batch mode. Shamil P.S. 1. create new mdb 2. connect to [authors] table from [pubs] MS SQL sample database 3. use make table query to clone [dbo_authors] to local MS Access table [authors] 4. close sample database 5. open sample database in shared mode 6. create form for [authors] table 7. removed form's recordsource 8. put the following code into form's module (edit connection strings if needed) 9. open form in normal view (to switch MS SQL/Jet backend comment/uncommented the code lines in Form_Load sub) 10. Enjoy! Private mrst As ADODB.Recordset Private mcnn As ADODB.Connection Private mcolDeletedRowsIds As New Collection Private Sub Form_Load() 'BindFormToSQLADORecordset BindFormToJetADORecordset End Sub Private Sub Form_BeforeUpdate(Cancel As Integer) UpdateBE End Sub Private Sub Form_BeforeInsert(Cancel As Integer) mrst.AddNew End Sub Private Sub Form_Delete(Cancel As Integer) If mcolDeletedRowsIds.Count = 0 Then mcolDeletedRowsIds.Add mrst!au_id.Value Else mcolDeletedRowsIds.Add mrst!au_id.Value, , 1 End If End Sub Private Sub Form_Current() Dim strSql As String Dim i As Integer If mcolDeletedRowsIds.Count > 0 Then For i = mcolDeletedRowsIds.Count To 1 Step -1 strSql = "delete from [authors] where au_id = '" & _ mcolDeletedRowsIds.Item(i) & "'" mcnn.Execute strSql mcolDeletedRowsIds.Remove i Next i End If End Sub Private Sub Form_Unload(Cancel As Integer) On Error Resume Next mrst.Close mcnn.Close End Sub Private Sub BindFormToSQLADORecordset() Dim strSql As String Dim strCnn As String Set mcnn = New ADODB.Connection strCnn = "Provider=SQLOLEDB.1;" & _ "Server=(local);" & _ "Database=Pubs;" & _ "Integrated Security = SSPI" mcnn.Open strCnn strSql = "select * from [authors]" Set mrst = New ADODB.Recordset mrst.CursorLocation = adUseClient mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic mrst.ActiveConnection = Nothing Set Me.Recordset = mrst End Sub Private Sub UpdateBE() Set mrst.ActiveConnection = mcnn mrst.UpdateBatch adAffectCurrent Set mrst.ActiveConnection = Nothing End Sub Private Sub BindFormToJetADORecordset() Dim strSql As String Dim strCnn As String Set mcnn = New ADODB.Connection strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=" & CurrentDb.Name & _ ";User Id=admin;Password=;" mcnn.Open strCnn strSql = "select * from [authors]" Set mrst = New ADODB.Recordset mrst.CursorLocation = adUseClient mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic Set mrst.ActiveConnection = Nothing Set Me.Recordset = mrst End Sub ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Thursday, March 09, 2006 9:54 PM Subject: [AccessD] Access XP forms bound to ADO recordsets > Can someone give me an overview of what this involves? Is the recordset > then "disconnected"? How do you handle form/subforms? > > I have a specific application where the users have a bound form which > pulls > a set of records (people) that they will be making calls to. There is a > bound subform where they enter the results of the call - about 5 or 6 > fields, the user's ID, date/time, call status, note etc. They get a TON > of > locking issues with this. The user is almost exclusively ADDING new > records > into the call status table, though they do occasionally "correct" info in > the person's record - address / phone etc. > > The issue though is that as soon as they try to create a NEW record in the > call status subform, they get the infamous "another person has locked this > record" which is particularly puzzling since they are not editing an > existing record but rather adding a new record. I changed the note from > Memo to String(255) to avoid "page locking" issues, deleted all of the > indexes on the fields in the call status records etc but the issues still > occur. > > My understanding is that Index data is also stored in pages so that there > might be an issue with the page that an index is attempting to store it's > data in as the record is created is locked by another user creating an > index > using that same page. Of course there is a relationship between the > person > and the call status so there is at least one index that simply cannot be > even seen, never mind deleted, at least without removing the relationship. > > So I am trying to resolve this continuous nagging locking issue. I am > even > willing to go unbound, but they really want to be able to see the previous > calls in the subform so that they can tell what went on in previous calls. > I thought that if I could bind the main people form and the child call > status forms to ADO recordsets, then the update (and subsequent locking > issues) would be very momentary and the probability of a lock issue > occurring would decrease dramatically. However I have never done the "ADO > recordset binding" before. > > Does anyone have any knowledge of this? > > John W. Colby > www.ColbyConsulting.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From shamil at users.mns.ru Sat Mar 11 17:03:57 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Sun, 12 Mar 2006 02:03:57 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <000e01c643aa$e82b2200$647aa8c0@ColbyM6805> <05f501c644a3$d1643080$6501a8c0@Nant> Message-ID: <001e01c64560$4fbcd470$6501a8c0@Nant> John at all, I did make some more experimenting and it happens that MS Access 2003 (and probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with disconnected updatable ADODB recordsets with both MS Access and MS SQL backends. I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access backend and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. Some more testing/experimenting is needed but I did do quite some tests and they worked OK. As I wrote already this feature is new for me and a (big) surprise - this is a functionality I have been waiting for 8+ years since 1997 when we made here a custom framework to work with MS Access and MS SQL in disconnected mode, but it was rather heavyweight and because of the bugs in MS Access I decided to not make it broadly available.... Basically this means that MS Access forms can be used in bound mode with very low performance hit to the MS Access and MS SQL backends - the same way ADODB disconnected recordsets are used in n-tier applications. The programming of form's events processing is relatively simple and it should be possible to generalize it to make a simple lightweight framework in case back-end database(s) follow systematic naming conventions and database models design principles. The "trick" is to open two ADODB recordsets: - one with batch update enabled - second without batch update and make them disconnected. Then bind MS Access form to the second recordset (without batch update enabled). (I did experiemnet with recordsets having several source rows as a generic case to see are there any chances to use MS Access subforms in bound editable mode with disconnected ADODB recordsets) When MS Access form fires insert, update, delete events all the changes can be easily translated from the second recordset (where these changes are made "automagically" because MS Access form is bound to it) to the first recordset. On form close(or using special button) first recordset can be reconnected to the backend and batch update applied. (Of course in the case of special button to apply batch changes the two disconnected recordsets have to be resynchronized after updates). etc. Here is how "automagically" generated by ADODB batch update looks in the case of MS SQL backend (Info obtained from MS SQL profiler, line breaks are inserted manually to make it readable): exec sp_executesql N'UPDATE "Northwind".."Categories" SET "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE "CategoryID"=@P4 AND "CategoryName"=@P5; DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND "CategoryName"=@P7; UPDATE "Northwind".."Categories" SET "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE "CategoryID"=@P11 AND "CategoryName"=@P12; INSERT INTO "Northwind".."Categories" ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', 99, N'CatName', N'Updated category description', 99, N'CatName', 66, N'DelCatName', 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', 662, N'newCatName', N'new Cat description' Live connection to the back-end is needed only on opening of the source recordsets and on applying batch changes. Therefore connections can be pooled/should be possible to pool (I didn't experiment here) and to share them between several (many) front-end applications/clients if these connections are opened using ActiveX DCOM servers running on server PCs/.NET Remoting(?) objects. As well as actual disconnected recordset creation and reconnection and backend update can be executed on (Web) server side - depending on whatever is used on backend.... Yes, I know dynamic SPs accessing database tables directly do not look nice but there could be many ways to make it working differently using predefined stored procedures (e.g. by serializing ADODB recordset into XML file(s) where all the updates (inserts, deletes, updates) are coded special easily parsed way and then reformat these XML files into the calls to the predefined stored procedures etc.etc. Here is how it looks this saved XML(no direct correspondence with presented above batch T-SQL update) : - - - - - - - - - - - - - I do not post code here now because I wanted to experiment more and because it would be useful if somebody else tries to repeat the "trick" described above - if it will work for them then a whole set of new opportunities to use MS Access as a real development tool will be opened.... I will post code after additional tests within one-two weeks when it will become clear that it works. Please post any links here if you think that my posted information looks like "wheel reinvention" or you think it doesn't have practical application because of this or that several limitations etc.etc. Thank you. Shamil P.S. I have installed on my PC: - MS Windows 2003 Server SP1 - MS Office 2003/MS Access 2003 SP1 - MS SQL 2000 SP3a - MDAC 2.8 - NET Framework 1.1 and 2.0 - Visual Studio 2003 and 2005 - I have also MS SQL Server 2005 Express edition but I didn't experiment with it P. P.S. Yes, I didn't talk about identity(autonumber) fields - I generally use GUIDs for PKs. To properly manage numeric identity values some more tricks are needed - I'd be grateful if somebody post information on this subject (updategram/diffgram XML is a direct solution here probably - and serialized/saved ADODB batch update can be converted into diffgrams by using XSLT or VB(A) or VB.NET/C#/C++ code etc.) ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Saturday, March 11, 2006 3:36 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > John, > > I did try ADODB disconnected recordsets with MS Access XP/2003 MDBs and > they > seems to be working rather well. > > That is a surprise here because the book "Microsoft Access Developer's > Guide > to SQL Server", which I read before states this can't be done. But the > book > I have is for MS Access 2000/MS SQL 2000 - and for MS Access 2000 this > feature doesn't work. I don't have a new edition of the book - if it > exists > the authors may have written about this new useful feature.... > > I hope I'm not mistaken - I did recheck many times - yes, it seems to > work! > Please verify.... > > In P.S. of this message there is a sample code, which basicaly works OK > but > which needs more investigations - it doesn't yet process all the use > cases. > This code is for [authors] table from [pubs] sample database. It can work > with both MS SQL and MS Access BEs use: > > - BindFormToSQLADORecordset - to connect to MS SQL BE and > > - BindFormToJetADORecordset to connect to MS Access BE. > > I did check with MS SQL profiler - communication with MS SQL BE is minimal > and connection is used only when database operation is in progress - i.e. > on > short period of time for properly organized communication with BE > database. > > If additional investigations/testing will show that this simple method > works > for all the required use cases then that's "what doctor ordered." - I mean > you can relax and happily continue staying in your comfortable "bounders > camp" for quite some time... (Although I'd recommend to use GUIDs for PKs) > > It would be also very useful to make it working in disconnected optimistic > batch update mode but I doubt it's possible - I'd be happy somebody will > present here a sample how similar simple method can be used in > disconnected > optimistic batch mode. > > Shamil > <<< tail skipped >>> From dwaters at usinternet.com Sat Mar 11 17:27:23 2006 From: dwaters at usinternet.com (Dan Waters) Date: Sat, 11 Mar 2006 17:27:23 -0600 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <13294217.1142118393373.JavaMail.root@sniper38> Message-ID: <000001c64563$5a5952c0$0200a8c0@danwaters> Shamil, I've been reading you post with interest. Have you looked at MS KB 281998? This gives a method for an Access form to connect to SQL Server, Jet, and Oracle BE's and be updateable. They identify a specific provider to do this that can be used to set up bound forms. The provider is: "Microsoft.Access.OLEDB.10.0" I have not tried this, but thought you might be interested. Dan Waters -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Saturday, March 11, 2006 5:04 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets John at all, I did make some more experimenting and it happens that MS Access 2003 (and probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with disconnected updatable ADODB recordsets with both MS Access and MS SQL backends. I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access backend and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. Some more testing/experimenting is needed but I did do quite some tests and they worked OK. As I wrote already this feature is new for me and a (big) surprise - this is a functionality I have been waiting for 8+ years since 1997 when we made here a custom framework to work with MS Access and MS SQL in disconnected mode, but it was rather heavyweight and because of the bugs in MS Access I decided to not make it broadly available.... Basically this means that MS Access forms can be used in bound mode with very low performance hit to the MS Access and MS SQL backends - the same way ADODB disconnected recordsets are used in n-tier applications. The programming of form's events processing is relatively simple and it should be possible to generalize it to make a simple lightweight framework in case back-end database(s) follow systematic naming conventions and database models design principles. The "trick" is to open two ADODB recordsets: - one with batch update enabled - second without batch update and make them disconnected. Then bind MS Access form to the second recordset (without batch update enabled). (I did experiemnet with recordsets having several source rows as a generic case to see are there any chances to use MS Access subforms in bound editable mode with disconnected ADODB recordsets) When MS Access form fires insert, update, delete events all the changes can be easily translated from the second recordset (where these changes are made "automagically" because MS Access form is bound to it) to the first recordset. On form close(or using special button) first recordset can be reconnected to the backend and batch update applied. (Of course in the case of special button to apply batch changes the two disconnected recordsets have to be resynchronized after updates). etc. Here is how "automagically" generated by ADODB batch update looks in the case of MS SQL backend (Info obtained from MS SQL profiler, line breaks are inserted manually to make it readable): exec sp_executesql N'UPDATE "Northwind".."Categories" SET "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE "CategoryID"=@P4 AND "CategoryName"=@P5; DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND "CategoryName"=@P7; UPDATE "Northwind".."Categories" SET "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE "CategoryID"=@P11 AND "CategoryName"=@P12; INSERT INTO "Northwind".."Categories" ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', 99, N'CatName', N'Updated category description', 99, N'CatName', 66, N'DelCatName', 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', 662, N'newCatName', N'new Cat description' Live connection to the back-end is needed only on opening of the source recordsets and on applying batch changes. Therefore connections can be pooled/should be possible to pool (I didn't experiment here) and to share them between several (many) front-end applications/clients if these connections are opened using ActiveX DCOM servers running on server PCs/.NET Remoting(?) objects. As well as actual disconnected recordset creation and reconnection and backend update can be executed on (Web) server side - depending on whatever is used on backend.... Yes, I know dynamic SPs accessing database tables directly do not look nice but there could be many ways to make it working differently using predefined stored procedures (e.g. by serializing ADODB recordset into XML file(s) where all the updates (inserts, deletes, updates) are coded special easily parsed way and then reformat these XML files into the calls to the predefined stored procedures etc.etc. Here is how it looks this saved XML(no direct correspondence with presented above batch T-SQL update) : - - - - - - - - - - - - - I do not post code here now because I wanted to experiment more and because it would be useful if somebody else tries to repeat the "trick" described above - if it will work for them then a whole set of new opportunities to use MS Access as a real development tool will be opened.... I will post code after additional tests within one-two weeks when it will become clear that it works. Please post any links here if you think that my posted information looks like "wheel reinvention" or you think it doesn't have practical application because of this or that several limitations etc.etc. Thank you. Shamil P.S. I have installed on my PC: - MS Windows 2003 Server SP1 - MS Office 2003/MS Access 2003 SP1 - MS SQL 2000 SP3a - MDAC 2.8 - NET Framework 1.1 and 2.0 - Visual Studio 2003 and 2005 - I have also MS SQL Server 2005 Express edition but I didn't experiment with it P. P.S. Yes, I didn't talk about identity(autonumber) fields - I generally use GUIDs for PKs. To properly manage numeric identity values some more tricks are needed - I'd be grateful if somebody post information on this subject (updategram/diffgram XML is a direct solution here probably - and serialized/saved ADODB batch update can be converted into diffgrams by using XSLT or VB(A) or VB.NET/C#/C++ code etc.) ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Saturday, March 11, 2006 3:36 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > John, > > I did try ADODB disconnected recordsets with MS Access XP/2003 MDBs and > they > seems to be working rather well. > > That is a surprise here because the book "Microsoft Access Developer's > Guide > to SQL Server", which I read before states this can't be done. But the > book > I have is for MS Access 2000/MS SQL 2000 - and for MS Access 2000 this > feature doesn't work. I don't have a new edition of the book - if it > exists > the authors may have written about this new useful feature.... > > I hope I'm not mistaken - I did recheck many times - yes, it seems to > work! > Please verify.... > > In P.S. of this message there is a sample code, which basicaly works OK > but > which needs more investigations - it doesn't yet process all the use > cases. > This code is for [authors] table from [pubs] sample database. It can work > with both MS SQL and MS Access BEs use: > > - BindFormToSQLADORecordset - to connect to MS SQL BE and > > - BindFormToJetADORecordset to connect to MS Access BE. > > I did check with MS SQL profiler - communication with MS SQL BE is minimal > and connection is used only when database operation is in progress - i.e. > on > short period of time for properly organized communication with BE > database. > > If additional investigations/testing will show that this simple method > works > for all the required use cases then that's "what doctor ordered." - I mean > you can relax and happily continue staying in your comfortable "bounders > camp" for quite some time... (Although I'd recommend to use GUIDs for PKs) > > It would be also very useful to make it working in disconnected optimistic > batch update mode but I doubt it's possible - I'd be happy somebody will > present here a sample how similar simple method can be used in > disconnected > optimistic batch mode. > > Shamil > <<< tail skipped >>> -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Sat Mar 11 18:12:09 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Sun, 12 Mar 2006 03:12:09 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <000001c64563$5a5952c0$0200a8c0@danwaters> Message-ID: <001601c64569$9e29cce0$6501a8c0@Nant> Dan, Yes, I have seen that - in fact I did do google before I started my experimenting. In KB281998 "How to bind Microsoft Access forms to ADO recordsets" http://support.microsoft.com/kb/281998 they talk AFAIS about binding to connected ADODB recordsets. The original question (as I got it) was hwo to bind to disconnected ADODB recordsets and then implied question is: is there a simple and generic way to translate/transfer changes from disconnected recordset to the backend... As it happens there is a trick to do that described in my previous posting. I did do google now additionally and I did find that the similar trick is described already several years ago. They do it a little bit differently but the principle is the same - they write: <<< Now, the clever tricks: 1. Open a static, optimistic batch recordset, disconnect it, save it to a simple in-memory stream object, set the stream position to zero so it can be read from the beginning, and open a new copy of the recordset from the stream. Now, bind one copy to the form, and start working. When you're ready to do a batch update, first compare the 2 recordsets for changes, and apply any adds, changes, and deletes to the unbound recordset, then run BatchUpdate from the unbound recordset. Note that Access sets values of IDENTITY columns to zero, so that's an easy way to filter for added records. ... >>> This excerpt is from this posting (watch line wraps!): <<< ADP: A2K vs 2002? From: Steve Jorgensen Date: Sun, Jul 21 2002 7:29 pm http://groups.google.com/group/comp.databases.ms-access/browse_frm/thread/1753dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/groups%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3Dimages%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3Den#f20d79536029060e >>> And here is another related information: <<< From: Steve Jorgensen Date: Thurs, Nov 28 2002 11:45 pm http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071f8c9?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=2 >>> So they approve that my trick is legal and is a kind of "wheel reinwention" - the difference of my "wheel" is that I do trasnslate changes to the second disconected recordset when form events fire - the disadvantage of my method is that it needs more tricky coding, which still needs to be well tested, the advantage - is that as soons as the changes on the current row are done I can serialize second disconnected recordset to xml file and in the case of client app's failure batch changes will not be lost etc. Strange that such a valuable information first time published in summer 2002 about using ADODB disconnected recordsets is so rarely discussed on Internet - everybody in this World is abandoning "MS Access toy" and switiching to .NET development? But this feature properly applied makes MS Access FEs good candidates to be used as true FEs - without any significant performance/locking hits on BEs I mean.... Shamil ----- Original Message ----- From: "Dan Waters" To: "'Access Developers discussion and problem solving'" Sent: Sunday, March 12, 2006 2:27 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > I've been reading you post with interest. Have you looked at MS KB > 281998? > This gives a method for an Access form to connect to SQL Server, Jet, and > Oracle BE's and be updateable. They identify a specific provider to do > this > that can be used to set up bound forms. > > The provider is: "Microsoft.Access.OLEDB.10.0" > > I have not tried this, but thought you might be interested. > > Dan Waters > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 5:04 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > John at all, > > I did make some more experimenting and it happens that MS Access 2003 (and > probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with > disconnected updatable ADODB recordsets with both MS Access and MS SQL > backends. > > I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access backend > and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. > > Some more testing/experimenting is needed but I did do quite some tests > and > they worked OK. > > As I wrote already this feature is new for me and a (big) surprise - this > is > a functionality I have been waiting for 8+ years since 1997 when we made > here a custom framework to work with MS Access and MS SQL in disconnected > mode, but it was rather heavyweight and because of the bugs in MS Access I > decided to not make it broadly available.... > > Basically this means that MS Access forms can be used in bound mode with > very low performance hit to the MS Access and MS SQL backends - the same > way > ADODB disconnected recordsets are used in n-tier applications. > > The programming of form's events processing is relatively simple and it > should be possible to generalize it to make a simple lightweight framework > in case back-end database(s) follow systematic naming conventions and > database models design principles. > > The "trick" is to open two ADODB recordsets: > > - one with batch update enabled > - second without batch update > > and make them disconnected. > > Then bind MS Access form to the second recordset (without batch update > enabled). > > (I did experiemnet with recordsets having several source rows as a generic > case to see are there any chances to use MS Access subforms in bound > editable mode with disconnected ADODB recordsets) > > When MS Access form fires insert, update, delete events all the changes > can > be easily translated from the second recordset (where these changes are > made > "automagically" because MS Access form is bound to it) to the first > recordset. > > On form close(or using special button) first recordset can be reconnected > to > the backend and batch update applied. (Of course in the case of special > button to apply batch changes the two disconnected recordsets have to be > resynchronized after updates). > > etc. > > Here is how "automagically" generated by ADODB batch update looks in the > case of MS SQL backend (Info obtained from MS SQL profiler, line breaks > are > inserted manually to make it readable): > > exec sp_executesql > > N'UPDATE "Northwind".."Categories" SET > "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE > "CategoryID"=@P4 > AND "CategoryName"=@P5; > > DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND > "CategoryName"=@P7; > > UPDATE "Northwind".."Categories" SET > "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE > "CategoryID"=@P11 AND "CategoryName"=@P12; > > INSERT INTO "Northwind".."Categories" > ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', > > N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 > nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 > nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', > > 99, N'CatName', N'Updated category description', > 99, N'CatName', > 66, N'DelCatName', > 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', > 662, N'newCatName', N'new Cat description' > > Live connection to the back-end is needed only on opening of the source > recordsets and on applying batch changes. Therefore connections can be > pooled/should be possible to pool (I didn't experiment here) and to share > them between several (many) front-end applications/clients if these > connections are opened using ActiveX DCOM servers running on server > PCs/.NET > Remoting(?) objects. As well as actual disconnected recordset creation and > reconnection and backend update can be executed on (Web) server side - > depending on whatever is used on backend.... > > Yes, I know dynamic SPs accessing database tables directly do not look > nice > but there could be many ways to make it working differently using > predefined > stored procedures (e.g. by serializing ADODB recordset into XML file(s) > where all the updates (inserts, deletes, updates) are coded special easily > parsed way and then reformat these XML files into the calls to the > predefined stored procedures etc.etc. > > Here is how it looks this saved XML(no direct correspondence with > presented > above batch T-SQL update) : > > - xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" > xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> > - > - > - rs:basecatalog="Northwind" rs:basetable="Categories1" > rs:basecolumn="CategoryID"> > rs:fixedlength="true" rs:maybenull="false" /> > > - rs:writeunknown="true" > rs:basecatalog="Northwind" rs:basetable="Categories1" > rs:basecolumn="CategoryName"> > > > - rs:writeunknown="true" rs:basecatalog="Northwind" > rs:basetable="Categories1" > rs:basecolumn="Description"> > > > > > > - > > > > /> > > > > > - > - > > > > > - > - > > > > > /> > - > /> > > - > > > > > > I do not post code here now because I wanted to experiment more and > because > it would be useful if somebody else tries to repeat the "trick" described > above - if it will work for them then a whole set of new opportunities to > use MS Access as a real development tool will be opened.... > > I will post code after additional tests within one-two weeks when it will > become clear that it works. > > Please post any links here if you think that my posted information looks > like "wheel reinvention" or you think it doesn't have practical > application > because of this or that several limitations etc.etc. > > Thank you. > > Shamil > > P.S. I have installed on my PC: > > - MS Windows 2003 Server SP1 > - MS Office 2003/MS Access 2003 SP1 > - MS SQL 2000 SP3a > - MDAC 2.8 > - NET Framework 1.1 and 2.0 > - Visual Studio 2003 and 2005 > - I have also MS SQL Server 2005 Express edition but I didn't experiment > with it > > P. P.S. Yes, I didn't talk about identity(autonumber) fields - I generally > use GUIDs for PKs. > To properly manage numeric identity values some more tricks are needed - > I'd > be grateful if somebody post information on this subject > (updategram/diffgram XML is a direct solution here probably - and > serialized/saved ADODB batch update can be converted into diffgrams by > using > XSLT or VB(A) or VB.NET/C#/C++ code etc.) > <<< tail skipped >>> From dwaters at usinternet.com Sun Mar 12 11:22:33 2006 From: dwaters at usinternet.com (Dan Waters) Date: Sun, 12 Mar 2006 11:22:33 -0600 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <25333.1142122276334.JavaMail.root@sniper16> Message-ID: <000301c645f9$8cd4fe20$0200a8c0@danwaters> Hi Shamil, Thank you for this additional information. I've learned to read your information as though I was a student in your class! I'll keep this and study it. The fact that people are moving away from Access as a development platform is interesting. My experience is that people in IT departments have had bad experiences with Access. They've repeatedly seen where someone in their company learns how to use Access to some extent to do something that many people like. But because that person doesn't have the ability or time to become a real developer, the application has trouble. Then the IT department gets told by a VP that this is a 'must have' application that the IT department must fix Now! So, the IT department has to fix it with unbudgeted time and unbudgeted funds. After a few experiences like this, IT people tend to get leery of Access. However, with VB or VB.net, a person without actual training in database development and connection between a FE and BE, can't even get started. (I have to admit that when I began developing in Access, I didn't understand the concept of FE and BE either.) This makes (today) the choice of developing significant applications using VB.net the 'safe' choice for larger companies. Having said all that, when I go to companies and tell them that I develop in Access, have been doing so for eight years, and show them how my system works, the concern over Access drops off. They can see for themselves that I can produce. I typically market to small to medium sized companies, so that may factor in also. I am looking forward to what Access 12 will have in it. I've seen some of the descriptive material published by MS, and so far it looks great! Dan Waters -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Saturday, March 11, 2006 6:12 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Dan, Yes, I have seen that - in fact I did do google before I started my experimenting. In KB281998 "How to bind Microsoft Access forms to ADO recordsets" http://support.microsoft.com/kb/281998 they talk AFAIS about binding to connected ADODB recordsets. The original question (as I got it) was hwo to bind to disconnected ADODB recordsets and then implied question is: is there a simple and generic way to translate/transfer changes from disconnected recordset to the backend... As it happens there is a trick to do that described in my previous posting. I did do google now additionally and I did find that the similar trick is described already several years ago. They do it a little bit differently but the principle is the same - they write: <<< Now, the clever tricks: 1. Open a static, optimistic batch recordset, disconnect it, save it to a simple in-memory stream object, set the stream position to zero so it can be read from the beginning, and open a new copy of the recordset from the stream. Now, bind one copy to the form, and start working. When you're ready to do a batch update, first compare the 2 recordsets for changes, and apply any adds, changes, and deletes to the unbound recordset, then run BatchUpdate from the unbound recordset. Note that Access sets values of IDENTITY columns to zero, so that's an easy way to filter for added records. ... >>> This excerpt is from this posting (watch line wraps!): <<< ADP: A2K vs 2002? From: Steve Jorgensen Date: Sun, Jul 21 2002 7:29 pm http://groups.google.com/group/comp.databases.ms-access/browse_frm/thread/17 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/grou ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3Dima ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3Den#f2 0d79536029060e >>> And here is another related information: <<< From: Steve Jorgensen Date: Thurs, Nov 28 2002 11:45 pm http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071f8c9 ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UTF-8& oe=UTF-8&rnum=2 >>> So they approve that my trick is legal and is a kind of "wheel reinwention" - the difference of my "wheel" is that I do trasnslate changes to the second disconected recordset when form events fire - the disadvantage of my method is that it needs more tricky coding, which still needs to be well tested, the advantage - is that as soons as the changes on the current row are done I can serialize second disconnected recordset to xml file and in the case of client app's failure batch changes will not be lost etc. Strange that such a valuable information first time published in summer 2002 about using ADODB disconnected recordsets is so rarely discussed on Internet - everybody in this World is abandoning "MS Access toy" and switiching to .NET development? But this feature properly applied makes MS Access FEs good candidates to be used as true FEs - without any significant performance/locking hits on BEs I mean.... Shamil ----- Original Message ----- From: "Dan Waters" To: "'Access Developers discussion and problem solving'" Sent: Sunday, March 12, 2006 2:27 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > I've been reading you post with interest. Have you looked at MS KB > 281998? > This gives a method for an Access form to connect to SQL Server, Jet, and > Oracle BE's and be updateable. They identify a specific provider to do > this > that can be used to set up bound forms. > > The provider is: "Microsoft.Access.OLEDB.10.0" > > I have not tried this, but thought you might be interested. > > Dan Waters > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 5:04 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > John at all, > > I did make some more experimenting and it happens that MS Access 2003 (and > probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with > disconnected updatable ADODB recordsets with both MS Access and MS SQL > backends. > > I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access backend > and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. > > Some more testing/experimenting is needed but I did do quite some tests > and > they worked OK. > > As I wrote already this feature is new for me and a (big) surprise - this > is > a functionality I have been waiting for 8+ years since 1997 when we made > here a custom framework to work with MS Access and MS SQL in disconnected > mode, but it was rather heavyweight and because of the bugs in MS Access I > decided to not make it broadly available.... > > Basically this means that MS Access forms can be used in bound mode with > very low performance hit to the MS Access and MS SQL backends - the same > way > ADODB disconnected recordsets are used in n-tier applications. > > The programming of form's events processing is relatively simple and it > should be possible to generalize it to make a simple lightweight framework > in case back-end database(s) follow systematic naming conventions and > database models design principles. > > The "trick" is to open two ADODB recordsets: > > - one with batch update enabled > - second without batch update > > and make them disconnected. > > Then bind MS Access form to the second recordset (without batch update > enabled). > > (I did experiemnet with recordsets having several source rows as a generic > case to see are there any chances to use MS Access subforms in bound > editable mode with disconnected ADODB recordsets) > > When MS Access form fires insert, update, delete events all the changes > can > be easily translated from the second recordset (where these changes are > made > "automagically" because MS Access form is bound to it) to the first > recordset. > > On form close(or using special button) first recordset can be reconnected > to > the backend and batch update applied. (Of course in the case of special > button to apply batch changes the two disconnected recordsets have to be > resynchronized after updates). > > etc. > > Here is how "automagically" generated by ADODB batch update looks in the > case of MS SQL backend (Info obtained from MS SQL profiler, line breaks > are > inserted manually to make it readable): > > exec sp_executesql > > N'UPDATE "Northwind".."Categories" SET > "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE > "CategoryID"=@P4 > AND "CategoryName"=@P5; > > DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND > "CategoryName"=@P7; > > UPDATE "Northwind".."Categories" SET > "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE > "CategoryID"=@P11 AND "CategoryName"=@P12; > > INSERT INTO "Northwind".."Categories" > ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', > > N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 > nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 > nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', > > 99, N'CatName', N'Updated category description', > 99, N'CatName', > 66, N'DelCatName', > 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', > 662, N'newCatName', N'new Cat description' > > Live connection to the back-end is needed only on opening of the source > recordsets and on applying batch changes. Therefore connections can be > pooled/should be possible to pool (I didn't experiment here) and to share > them between several (many) front-end applications/clients if these > connections are opened using ActiveX DCOM servers running on server > PCs/.NET > Remoting(?) objects. As well as actual disconnected recordset creation and > reconnection and backend update can be executed on (Web) server side - > depending on whatever is used on backend.... > > Yes, I know dynamic SPs accessing database tables directly do not look > nice > but there could be many ways to make it working differently using > predefined > stored procedures (e.g. by serializing ADODB recordset into XML file(s) > where all the updates (inserts, deletes, updates) are coded special easily > parsed way and then reformat these XML files into the calls to the > predefined stored procedures etc.etc. > > Here is how it looks this saved XML(no direct correspondence with > presented > above batch T-SQL update) : > > - xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" > xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> > - > - > - rs:basecatalog="Northwind" rs:basetable="Categories1" > rs:basecolumn="CategoryID"> > rs:fixedlength="true" rs:maybenull="false" /> > > - rs:writeunknown="true" > rs:basecatalog="Northwind" rs:basetable="Categories1" > rs:basecolumn="CategoryName"> > > > - rs:writeunknown="true" rs:basecatalog="Northwind" > rs:basetable="Categories1" > rs:basecolumn="Description"> > > > > > > - > > > > /> > > > > > - > - > > > > > - > - > > > > > /> > - > /> > > - > > > > > > I do not post code here now because I wanted to experiment more and > because > it would be useful if somebody else tries to repeat the "trick" described > above - if it will work for them then a whole set of new opportunities to > use MS Access as a real development tool will be opened.... > > I will post code after additional tests within one-two weeks when it will > become clear that it works. > > Please post any links here if you think that my posted information looks > like "wheel reinvention" or you think it doesn't have practical > application > because of this or that several limitations etc.etc. > > Thank you. > > Shamil > > P.S. I have installed on my PC: > > - MS Windows 2003 Server SP1 > - MS Office 2003/MS Access 2003 SP1 > - MS SQL 2000 SP3a > - MDAC 2.8 > - NET Framework 1.1 and 2.0 > - Visual Studio 2003 and 2005 > - I have also MS SQL Server 2005 Express edition but I didn't experiment > with it > > P. P.S. Yes, I didn't talk about identity(autonumber) fields - I generally > use GUIDs for PKs. > To properly manage numeric identity values some more tricks are needed - > I'd > be grateful if somebody post information on this subject > (updategram/diffgram XML is a direct solution here probably - and > serialized/saved ADODB batch update can be converted into diffgrams by > using > XSLT or VB(A) or VB.NET/C#/C++ code etc.) > <<< tail skipped >>> -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Sun Mar 12 18:12:49 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Sun, 12 Mar 2006 19:12:49 -0500 Subject: [AccessD] Discovering Access version at runtime - was Access XP forms bound to ADO recordsets In-Reply-To: <05f501c644a3$d1643080$6501a8c0@Nant> Message-ID: <004401c64632$de22f5a0$647aa8c0@ColbyM6805> >and for MS Access 2000 this feature doesn't work. And this brings up to an important question, can a framework dynamically configure to use code based on the version? I use the same framework for A2K and above. The reason I cut off at A2K that raisevents do not work in A97 and I make some use of RaiseEvents in the framework. Now we have code which works in AXP but not A2K and below. So I would like to carve this stuff out and only load it if the version being run under is AXP or above. A quick Google search does not come up with anything. If this can be done, XP also supports form event sinks in two different class modules without the page faults that A2K would trigger if you tried that, so it might work well to place these event sinks out in a completely separate class and instantiate that class only if the version was XP or above. Thoughts about this? John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Friday, March 10, 2006 7:36 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets John, I did try ADODB disconnected recordsets with MS Access XP/2003 MDBs and they seems to be working rather well. That is a surprise here because the book "Microsoft Access Developer's Guide to SQL Server", which I read before states this can't be done. But the book I have is for MS Access 2000/MS SQL 2000 - and for MS Access 2000 this feature doesn't work. I don't have a new edition of the book - if it exists the authors may have written about this new useful feature.... I hope I'm not mistaken - I did recheck many times - yes, it seems to work! Please verify.... In P.S. of this message there is a sample code, which basicaly works OK but which needs more investigations - it doesn't yet process all the use cases. This code is for [authors] table from [pubs] sample database. It can work with both MS SQL and MS Access BEs use: - BindFormToSQLADORecordset - to connect to MS SQL BE and - BindFormToJetADORecordset to connect to MS Access BE. I did check with MS SQL profiler - communication with MS SQL BE is minimal and connection is used only when database operation is in progress - i.e. on short period of time for properly organized communication with BE database. If additional investigations/testing will show that this simple method works for all the required use cases then that's "what doctor ordered." - I mean you can relax and happily continue staying in your comfortable "bounders camp" for quite some time... (Although I'd recommend to use GUIDs for PKs) It would be also very useful to make it working in disconnected optimistic batch update mode but I doubt it's possible - I'd be happy somebody will present here a sample how similar simple method can be used in disconnected optimistic batch mode. Shamil P.S. 1. create new mdb 2. connect to [authors] table from [pubs] MS SQL sample database 3. use make table query to clone [dbo_authors] to local MS Access table [authors] 4. close sample database 5. open sample database in shared mode 6. create form for [authors] table 7. removed form's recordsource 8. put the following code into form's module (edit connection strings if needed) 9. open form in normal view (to switch MS SQL/Jet backend comment/uncommented the code lines in Form_Load sub) 10. Enjoy! Private mrst As ADODB.Recordset Private mcnn As ADODB.Connection Private mcolDeletedRowsIds As New Collection Private Sub Form_Load() 'BindFormToSQLADORecordset BindFormToJetADORecordset End Sub Private Sub Form_BeforeUpdate(Cancel As Integer) UpdateBE End Sub Private Sub Form_BeforeInsert(Cancel As Integer) mrst.AddNew End Sub Private Sub Form_Delete(Cancel As Integer) If mcolDeletedRowsIds.Count = 0 Then mcolDeletedRowsIds.Add mrst!au_id.Value Else mcolDeletedRowsIds.Add mrst!au_id.Value, , 1 End If End Sub Private Sub Form_Current() Dim strSql As String Dim i As Integer If mcolDeletedRowsIds.Count > 0 Then For i = mcolDeletedRowsIds.Count To 1 Step -1 strSql = "delete from [authors] where au_id = '" & _ mcolDeletedRowsIds.Item(i) & "'" mcnn.Execute strSql mcolDeletedRowsIds.Remove i Next i End If End Sub Private Sub Form_Unload(Cancel As Integer) On Error Resume Next mrst.Close mcnn.Close End Sub Private Sub BindFormToSQLADORecordset() Dim strSql As String Dim strCnn As String Set mcnn = New ADODB.Connection strCnn = "Provider=SQLOLEDB.1;" & _ "Server=(local);" & _ "Database=Pubs;" & _ "Integrated Security = SSPI" mcnn.Open strCnn strSql = "select * from [authors]" Set mrst = New ADODB.Recordset mrst.CursorLocation = adUseClient mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic mrst.ActiveConnection = Nothing Set Me.Recordset = mrst End Sub Private Sub UpdateBE() Set mrst.ActiveConnection = mcnn mrst.UpdateBatch adAffectCurrent Set mrst.ActiveConnection = Nothing End Sub Private Sub BindFormToJetADORecordset() Dim strSql As String Dim strCnn As String Set mcnn = New ADODB.Connection strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=" & CurrentDb.Name & _ ";User Id=admin;Password=;" mcnn.Open strCnn strSql = "select * from [authors]" Set mrst = New ADODB.Recordset mrst.CursorLocation = adUseClient mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic Set mrst.ActiveConnection = Nothing Set Me.Recordset = mrst End Sub From harkinsss at bellsouth.net Sun Mar 12 18:32:40 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Sun, 12 Mar 2006 19:32:40 -0500 Subject: [AccessD] Discovering Access version at runtime - was Access XPforms bound to ADO recordsets In-Reply-To: <004401c64632$de22f5a0$647aa8c0@ColbyM6805> Message-ID: <000101c64635$a3d76090$c2b3d6d1@SUSANONE> John, you want to check the version and then load code based on the version? Susan H. of RaiseEvents in the framework. Now we have code which works in AXP but not A2K and below. So I would like to carve this stuff out and only load it if the version being run under is AXP or above. A quick Google search does not come up with anything. From harkinsss at bellsouth.net Sun Mar 12 19:26:37 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Sun, 12 Mar 2006 20:26:37 -0500 Subject: [AccessD] OpenSchema syntax Message-ID: <000301c6463d$2d373520$c2b3d6d1@SUSANONE> Set rst = CurrentProject.Connection.OpenSchema(adSchemaColumns, Array(Empty, Empty, Empty, "Shippers")) I can't remember the exact syntax for filtering a schema recordset to a specific table -- anyone remember which array element I'm supposed to use. I've moved the table name around, but I either get an error or an empty recordset. Susan H. From darrend at nimble.com.au Sun Mar 12 20:03:57 2006 From: darrend at nimble.com.au (Darren DICK) Date: Mon, 13 Mar 2006 13:03:57 +1100 Subject: [AccessD] A2003: Running SQL SPROCS from Access Message-ID: <20060313020401.LAHV3168.omta02ps.mx.bigpond.com@DENZILLAP> Cross posted to dba-SQL Server list Hi All Once I have made a connection to an SQL dB Is there a way to execute SPROCS in that dB Special code or special syntax etc? Indeed - is there even a special connection routine needed - given the latest threads on connecting with updatable connections (ADOB) Many thanks in advance DD From wdhindman at bellsouth.net Sun Mar 12 21:09:25 2006 From: wdhindman at bellsouth.net (William Hindman) Date: Sun, 12 Mar 2006 22:09:25 -0500 Subject: [AccessD] Discovering Access version at runtime - was Access XPforms bound to ADO recordsets References: <004401c64632$de22f5a0$647aa8c0@ColbyM6805> Message-ID: <000701c6464b$8914efa0$6101a8c0@50NM721> ...not sure what you're asking here JC but you can certainly get the Access versions ...acSysCmdAccessVer will get the loaded version and acSysCmdRuntime will tell you whether its a full install or just a runtime install ...I've not based code loads on the Access version but I do based on whether or not its a runtime install ...hth. William ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Sunday, March 12, 2006 7:12 PM Subject: [AccessD] Discovering Access version at runtime - was Access XPforms bound to ADO recordsets > >and for MS Access 2000 this feature doesn't work. > > And this brings up to an important question, can a framework dynamically > configure to use code based on the version? > > I use the same framework for A2K and above. The reason I cut off at A2K > that raisevents do not work in A97 and I make some use of RaiseEvents in > the > framework. Now we have code which works in AXP but not A2K and below. So > I > would like to carve this stuff out and only load it if the version being > run > under is AXP or above. A quick Google search does not come up with > anything. > > If this can be done, XP also supports form event sinks in two different > class modules without the page faults that A2K would trigger if you tried > that, so it might work well to place these event sinks out in a completely > separate class and instantiate that class only if the version was XP or > above. > > Thoughts about this? > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Friday, March 10, 2006 7:36 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > John, > > I did try ADODB disconnected recordsets with MS Access XP/2003 MDBs and > they > seems to be working rather well. > > That is a surprise here because the book "Microsoft Access Developer's > Guide > to SQL Server", which I read before states this can't be done. But the > book > I have is for MS Access 2000/MS SQL 2000 - and for MS Access 2000 this > feature doesn't work. I don't have a new edition of the book - if it > exists > the authors may have written about this new useful feature.... > > I hope I'm not mistaken - I did recheck many times - yes, it seems to > work! > Please verify.... > > In P.S. of this message there is a sample code, which basicaly works OK > but > which needs more investigations - it doesn't yet process all the use > cases. > This code is for [authors] table from [pubs] sample database. It can work > with both MS SQL and MS Access BEs use: > > - BindFormToSQLADORecordset - to connect to MS SQL BE and > > - BindFormToJetADORecordset to connect to MS Access BE. > > I did check with MS SQL profiler - communication with MS SQL BE is minimal > and connection is used only when database operation is in progress - i.e. > on > short period of time for properly organized communication with BE > database. > > If additional investigations/testing will show that this simple method > works > for all the required use cases then that's "what doctor ordered." - I mean > you can relax and happily continue staying in your comfortable "bounders > camp" for quite some time... (Although I'd recommend to use GUIDs for PKs) > > It would be also very useful to make it working in disconnected optimistic > batch update mode but I doubt it's possible - I'd be happy somebody will > present here a sample how similar simple method can be used in > disconnected > optimistic batch mode. > > Shamil > > P.S. > > 1. create new mdb > 2. connect to [authors] table from [pubs] MS SQL sample database 3. use > make > table query to clone [dbo_authors] to local MS Access table [authors] 4. > close sample database 5. open sample database in shared mode 6. create > form > for [authors] table 7. removed form's recordsource 8. put the following > code > into form's module (edit connection strings if > needed) > 9. open form in normal view (to switch MS SQL/Jet backend > comment/uncommented the code lines in Form_Load sub) 10. Enjoy! > > Private mrst As ADODB.Recordset > Private mcnn As ADODB.Connection > > Private mcolDeletedRowsIds As New Collection > > Private Sub Form_Load() > 'BindFormToSQLADORecordset > BindFormToJetADORecordset > End Sub > > Private Sub Form_BeforeUpdate(Cancel As Integer) > UpdateBE > End Sub > > Private Sub Form_BeforeInsert(Cancel As Integer) > mrst.AddNew > End Sub > > Private Sub Form_Delete(Cancel As Integer) > If mcolDeletedRowsIds.Count = 0 Then > mcolDeletedRowsIds.Add mrst!au_id.Value > Else > mcolDeletedRowsIds.Add mrst!au_id.Value, , 1 > End If > End Sub > > Private Sub Form_Current() > Dim strSql As String > Dim i As Integer > If mcolDeletedRowsIds.Count > 0 Then > For i = mcolDeletedRowsIds.Count To 1 Step -1 > strSql = "delete from [authors] where au_id = '" & _ > mcolDeletedRowsIds.Item(i) & "'" > mcnn.Execute strSql > mcolDeletedRowsIds.Remove i > Next i > End If > End Sub > > Private Sub Form_Unload(Cancel As Integer) On Error Resume Next > mrst.Close > mcnn.Close > End Sub > > Private Sub BindFormToSQLADORecordset() > Dim strSql As String > Dim strCnn As String > Set mcnn = New ADODB.Connection > strCnn = "Provider=SQLOLEDB.1;" & _ > "Server=(local);" & _ > "Database=Pubs;" & _ > "Integrated Security = SSPI" > mcnn.Open strCnn > > strSql = "select * from [authors]" > Set mrst = New ADODB.Recordset > mrst.CursorLocation = adUseClient > > mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic > > mrst.ActiveConnection = Nothing > > Set Me.Recordset = mrst > End Sub > > Private Sub UpdateBE() > Set mrst.ActiveConnection = mcnn > mrst.UpdateBatch adAffectCurrent > Set mrst.ActiveConnection = Nothing > End Sub > > Private Sub BindFormToJetADORecordset() > Dim strSql As String > Dim strCnn As String > Set mcnn = New ADODB.Connection > strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ > "Data Source=" & CurrentDb.Name & _ > ";User Id=admin;Password=;" > mcnn.Open strCnn > > strSql = "select * from [authors]" > Set mrst = New ADODB.Recordset > mrst.CursorLocation = adUseClient > > mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic > > Set mrst.ActiveConnection = Nothing > > Set Me.Recordset = mrst > End Sub > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Sun Mar 12 21:18:35 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Sun, 12 Mar 2006 22:18:35 -0500 Subject: [AccessD] Discovering Access version at runtime - was AccessXPforms bound to ADO recordsets In-Reply-To: <000101c64635$a3d76090$c2b3d6d1@SUSANONE> Message-ID: <004501c6464c$d0f19570$647aa8c0@ColbyM6805> >John, you want to check the version and then load code based on the version? Yes, the ACCESS version. I have found stuff about checking the registry, but this really only addresses what is INSTALLED, not what is currently running. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Sunday, March 12, 2006 7:33 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Discovering Access version at runtime - was AccessXPforms bound to ADO recordsets John, you want to check the version and then load code based on the version? Susan H. of RaiseEvents in the framework. Now we have code which works in AXP but not A2K and below. So I would like to carve this stuff out and only load it if the version being run under is AXP or above. A quick Google search does not come up with anything. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From stuart at lexacorp.com.pg Sun Mar 12 21:51:39 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Mon, 13 Mar 2006 13:51:39 +1000 Subject: [AccessD] Discovering Access version at runtime - was AccessXPforms bound to ADO recordsets In-Reply-To: <004501c6464c$d0f19570$647aa8c0@ColbyM6805> References: <000101c64635$a3d76090$c2b3d6d1@SUSANONE> Message-ID: <441578EB.12411.1122A47@stuart.lexacorp.com.pg> On 12 Mar 2006 at 22:18, John Colby wrote: > >John, you want to check the version and then load code based on the > version? > > Yes, the ACCESS version. I have found stuff about checking the registry, > but this really only addresses what is INSTALLED, not what is currently > running. > RTFM? :-) Version Returns a String indicating the version number of the currently installed copy of Microsoft Access. Read-only. expression.Version expression Required. An expression that returns one of the objects in the Applies To list. Example The following example displays the version and build number of the currently-installed copy of Microsoft Access. MsgBox "You are currently running Microsoft Access, " _ & " version " & Application.Version & ", build " _ & Application.Build & "." -- Stuart From mmattys at rochester.rr.com Sun Mar 12 22:12:52 2006 From: mmattys at rochester.rr.com (Michael R Mattys) Date: Sun, 12 Mar 2006 23:12:52 -0500 Subject: [AccessD] Discovering Access version at runtime - was Access XP forms bound to ADO recordsets References: <004401c64632$de22f5a0$647aa8c0@ColbyM6805> Message-ID: <0c3a01c64654$672baab0$6401a8c0@default> Conditional compilation doesn't quite seem to meet the task, but I noticed this enigmatic statement in help: "Public compiler constants can only be created in the user interface." I wonder what that means? So then, the only other alternative that comes to mind is to use mde libraries for each version and invoke one or the other based upon the value of acSysCmdAccessVer. Michael R. Mattys MapPoint Developer www.mattysconsulting.com ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Sunday, March 12, 2006 7:12 PM Subject: [AccessD] Discovering Access version at runtime - was Access XP forms bound to ADO recordsets > >and for MS Access 2000 this feature doesn't work. > > And this brings up to an important question, can a framework dynamically > configure to use code based on the version? > > I use the same framework for A2K and above. The reason I cut off at A2K > that raisevents do not work in A97 and I make some use of RaiseEvents in > the > framework. Now we have code which works in AXP but not A2K and below. So > I > would like to carve this stuff out and only load it if the version being > run > under is AXP or above. A quick Google search does not come up with > anything. > > If this can be done, XP also supports form event sinks in two different > class modules without the page faults that A2K would trigger if you tried > that, so it might work well to place these event sinks out in a completely > separate class and instantiate that class only if the version was XP or > above. > > Thoughts about this? > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Friday, March 10, 2006 7:36 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > John, > > I did try ADODB disconnected recordsets with MS Access XP/2003 MDBs and > they > seems to be working rather well. > > That is a surprise here because the book "Microsoft Access Developer's > Guide > to SQL Server", which I read before states this can't be done. But the > book > I have is for MS Access 2000/MS SQL 2000 - and for MS Access 2000 this > feature doesn't work. I don't have a new edition of the book - if it > exists > the authors may have written about this new useful feature.... > > I hope I'm not mistaken - I did recheck many times - yes, it seems to > work! > Please verify.... > > In P.S. of this message there is a sample code, which basicaly works OK > but > which needs more investigations - it doesn't yet process all the use > cases. > This code is for [authors] table from [pubs] sample database. It can work > with both MS SQL and MS Access BEs use: > > - BindFormToSQLADORecordset - to connect to MS SQL BE and > > - BindFormToJetADORecordset to connect to MS Access BE. > > I did check with MS SQL profiler - communication with MS SQL BE is minimal > and connection is used only when database operation is in progress - i.e. > on > short period of time for properly organized communication with BE > database. > > If additional investigations/testing will show that this simple method > works > for all the required use cases then that's "what doctor ordered." - I mean > you can relax and happily continue staying in your comfortable "bounders > camp" for quite some time... (Although I'd recommend to use GUIDs for PKs) > > It would be also very useful to make it working in disconnected optimistic > batch update mode but I doubt it's possible - I'd be happy somebody will > present here a sample how similar simple method can be used in > disconnected > optimistic batch mode. > > Shamil > > P.S. > > 1. create new mdb > 2. connect to [authors] table from [pubs] MS SQL sample database 3. use > make > table query to clone [dbo_authors] to local MS Access table [authors] 4. > close sample database 5. open sample database in shared mode 6. create > form > for [authors] table 7. removed form's recordsource 8. put the following > code > into form's module (edit connection strings if > needed) > 9. open form in normal view (to switch MS SQL/Jet backend > comment/uncommented the code lines in Form_Load sub) 10. Enjoy! > > Private mrst As ADODB.Recordset > Private mcnn As ADODB.Connection > > Private mcolDeletedRowsIds As New Collection > > Private Sub Form_Load() > 'BindFormToSQLADORecordset > BindFormToJetADORecordset > End Sub > > Private Sub Form_BeforeUpdate(Cancel As Integer) > UpdateBE > End Sub > > Private Sub Form_BeforeInsert(Cancel As Integer) > mrst.AddNew > End Sub > > Private Sub Form_Delete(Cancel As Integer) > If mcolDeletedRowsIds.Count = 0 Then > mcolDeletedRowsIds.Add mrst!au_id.Value > Else > mcolDeletedRowsIds.Add mrst!au_id.Value, , 1 > End If > End Sub > > Private Sub Form_Current() > Dim strSql As String > Dim i As Integer > If mcolDeletedRowsIds.Count > 0 Then > For i = mcolDeletedRowsIds.Count To 1 Step -1 > strSql = "delete from [authors] where au_id = '" & _ > mcolDeletedRowsIds.Item(i) & "'" > mcnn.Execute strSql > mcolDeletedRowsIds.Remove i > Next i > End If > End Sub > > Private Sub Form_Unload(Cancel As Integer) On Error Resume Next > mrst.Close > mcnn.Close > End Sub > > Private Sub BindFormToSQLADORecordset() > Dim strSql As String > Dim strCnn As String > Set mcnn = New ADODB.Connection > strCnn = "Provider=SQLOLEDB.1;" & _ > "Server=(local);" & _ > "Database=Pubs;" & _ > "Integrated Security = SSPI" > mcnn.Open strCnn > > strSql = "select * from [authors]" > Set mrst = New ADODB.Recordset > mrst.CursorLocation = adUseClient > > mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic > > mrst.ActiveConnection = Nothing > > Set Me.Recordset = mrst > End Sub > > Private Sub UpdateBE() > Set mrst.ActiveConnection = mcnn > mrst.UpdateBatch adAffectCurrent > Set mrst.ActiveConnection = Nothing > End Sub > > Private Sub BindFormToJetADORecordset() > Dim strSql As String > Dim strCnn As String > Set mcnn = New ADODB.Connection > strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ > "Data Source=" & CurrentDb.Name & _ > ";User Id=admin;Password=;" > mcnn.Open strCnn > > strSql = "select * from [authors]" > Set mrst = New ADODB.Recordset > mrst.CursorLocation = adUseClient > > mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic > > Set mrst.ActiveConnection = Nothing > > Set Me.Recordset = mrst > End Sub > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Sun Mar 12 22:24:34 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Sun, 12 Mar 2006 23:24:34 -0500 Subject: [AccessD] Discovering Access version at runtime - was AccessXPforms bound to ADO recordsets In-Reply-To: <000701c6464b$8914efa0$6101a8c0@50NM721> Message-ID: <004901c64656$09021120$647aa8c0@ColbyM6805> That would be what I am after. Thanks, John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of William Hindman Sent: Sunday, March 12, 2006 10:09 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Discovering Access version at runtime - was AccessXPforms bound to ADO recordsets ...not sure what you're asking here JC but you can certainly get the Access versions ...acSysCmdAccessVer will get the loaded version and acSysCmdRuntime will tell you whether its a full install or just a runtime install ...I've not based code loads on the Access version but I do based on whether or not its a runtime install ...hth. William ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Sunday, March 12, 2006 7:12 PM Subject: [AccessD] Discovering Access version at runtime - was Access XPforms bound to ADO recordsets > >and for MS Access 2000 this feature doesn't work. > > And this brings up to an important question, can a framework > dynamically configure to use code based on the version? > > I use the same framework for A2K and above. The reason I cut off at > A2K that raisevents do not work in A97 and I make some use of > RaiseEvents in the framework. Now we have code which works in AXP but > not A2K and below. So I would like to carve this stuff out and only > load it if the version being run under is AXP or above. A quick > Google search does not come up with anything. > > If this can be done, XP also supports form event sinks in two > different class modules without the page faults that A2K would trigger > if you tried that, so it might work well to place these event sinks > out in a completely separate class and instantiate that class only if > the version was XP or above. > > Thoughts about this? > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Friday, March 10, 2006 7:36 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > John, > > I did try ADODB disconnected recordsets with MS Access XP/2003 MDBs > and they seems to be working rather well. > > That is a surprise here because the book "Microsoft Access Developer's > Guide to SQL Server", which I read before states this can't be done. > But the book I have is for MS Access 2000/MS SQL 2000 - and for MS > Access 2000 this feature doesn't work. I don't have a new edition of > the book - if it exists the authors may have written about this new > useful feature.... > > I hope I'm not mistaken - I did recheck many times - yes, it seems to > work! > Please verify.... > > In P.S. of this message there is a sample code, which basicaly works > OK but which needs more investigations - it doesn't yet process all > the use cases. > This code is for [authors] table from [pubs] sample database. It can > work with both MS SQL and MS Access BEs use: > > - BindFormToSQLADORecordset - to connect to MS SQL BE and > > - BindFormToJetADORecordset to connect to MS Access BE. > > I did check with MS SQL profiler - communication with MS SQL BE is > minimal and connection is used only when database operation is in progress - i.e. > on > short period of time for properly organized communication with BE > database. > > If additional investigations/testing will show that this simple method > works for all the required use cases then that's "what doctor > ordered." - I mean you can relax and happily continue staying in your > comfortable "bounders camp" for quite some time... (Although I'd > recommend to use GUIDs for PKs) > > It would be also very useful to make it working in disconnected > optimistic batch update mode but I doubt it's possible - I'd be happy > somebody will present here a sample how similar simple method can be > used in disconnected optimistic batch mode. > > Shamil > > P.S. > > 1. create new mdb > 2. connect to [authors] table from [pubs] MS SQL sample database 3. > use make table query to clone [dbo_authors] to local MS Access table > [authors] 4. > close sample database 5. open sample database in shared mode 6. create > form for [authors] table 7. removed form's recordsource 8. put the > following code into form's module (edit connection strings if > needed) > 9. open form in normal view (to switch MS SQL/Jet backend > comment/uncommented the code lines in Form_Load sub) 10. Enjoy! > > Private mrst As ADODB.Recordset > Private mcnn As ADODB.Connection > > Private mcolDeletedRowsIds As New Collection > > Private Sub Form_Load() > 'BindFormToSQLADORecordset > BindFormToJetADORecordset > End Sub > > Private Sub Form_BeforeUpdate(Cancel As Integer) > UpdateBE > End Sub > > Private Sub Form_BeforeInsert(Cancel As Integer) > mrst.AddNew > End Sub > > Private Sub Form_Delete(Cancel As Integer) > If mcolDeletedRowsIds.Count = 0 Then > mcolDeletedRowsIds.Add mrst!au_id.Value > Else > mcolDeletedRowsIds.Add mrst!au_id.Value, , 1 > End If > End Sub > > Private Sub Form_Current() > Dim strSql As String > Dim i As Integer > If mcolDeletedRowsIds.Count > 0 Then > For i = mcolDeletedRowsIds.Count To 1 Step -1 > strSql = "delete from [authors] where au_id = '" & _ > mcolDeletedRowsIds.Item(i) & "'" > mcnn.Execute strSql > mcolDeletedRowsIds.Remove i > Next i > End If > End Sub > > Private Sub Form_Unload(Cancel As Integer) On Error Resume Next > mrst.Close > mcnn.Close > End Sub > > Private Sub BindFormToSQLADORecordset() Dim strSql As String Dim > strCnn As String > Set mcnn = New ADODB.Connection > strCnn = "Provider=SQLOLEDB.1;" & _ > "Server=(local);" & _ > "Database=Pubs;" & _ > "Integrated Security = SSPI" > mcnn.Open strCnn > > strSql = "select * from [authors]" > Set mrst = New ADODB.Recordset > mrst.CursorLocation = adUseClient > > mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic > > mrst.ActiveConnection = Nothing > > Set Me.Recordset = mrst > End Sub > > Private Sub UpdateBE() > Set mrst.ActiveConnection = mcnn > mrst.UpdateBatch adAffectCurrent > Set mrst.ActiveConnection = Nothing End Sub > > Private Sub BindFormToJetADORecordset() Dim strSql As String Dim > strCnn As String > Set mcnn = New ADODB.Connection > strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ > "Data Source=" & CurrentDb.Name & _ > ";User Id=admin;Password=;" > mcnn.Open strCnn > > strSql = "select * from [authors]" > Set mrst = New ADODB.Recordset > mrst.CursorLocation = adUseClient > > mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic > > Set mrst.ActiveConnection = Nothing > > Set Me.Recordset = mrst > End Sub > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Sun Mar 12 22:47:43 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Sun, 12 Mar 2006 23:47:43 -0500 Subject: [AccessD] Discovering Access version at runtime - wasAccessXPforms bound to ADO recordsets In-Reply-To: <441578EB.12411.1122A47@stuart.lexacorp.com.pg> Message-ID: <004a01c64659$44e12fc0$647aa8c0@ColbyM6805> LOL, Thanks Stuart. Now if I could only find the FM. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stuart McLachlan Sent: Sunday, March 12, 2006 10:52 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Discovering Access version at runtime - wasAccessXPforms bound to ADO recordsets On 12 Mar 2006 at 22:18, John Colby wrote: > >John, you want to check the version and then load code based on the > version? > > Yes, the ACCESS version. I have found stuff about checking the > registry, but this really only addresses what is INSTALLED, not what > is currently running. > RTFM? :-) Version Returns a String indicating the version number of the currently installed copy of Microsoft Access. Read-only. expression.Version expression Required. An expression that returns one of the objects in the Applies To list. Example The following example displays the version and build number of the currently-installed copy of Microsoft Access. MsgBox "You are currently running Microsoft Access, " _ & " version " & Application.Version & ", build " _ & Application.Build & "." -- Stuart -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Sun Mar 12 22:48:53 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Sun, 12 Mar 2006 23:48:53 -0500 Subject: [AccessD] Discovering Access version at runtime - was AccessXP forms bound to ADO recordsets In-Reply-To: <0c3a01c64654$672baab0$6401a8c0@default> Message-ID: <004b01c64659$6e9a56c0$647aa8c0@ColbyM6805> >Conditional compilation doesn't quite seem to meet the task Boy if ONLY!!! There should be something that can be used with conditional compilation. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Michael R Mattys Sent: Sunday, March 12, 2006 11:13 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Discovering Access version at runtime - was AccessXP forms bound to ADO recordsets Conditional compilation doesn't quite seem to meet the task, but I noticed this enigmatic statement in help: "Public compiler constants can only be created in the user interface." I wonder what that means? So then, the only other alternative that comes to mind is to use mde libraries for each version and invoke one or the other based upon the value of acSysCmdAccessVer. Michael R. Mattys MapPoint Developer www.mattysconsulting.com ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Sunday, March 12, 2006 7:12 PM Subject: [AccessD] Discovering Access version at runtime - was Access XP forms bound to ADO recordsets > >and for MS Access 2000 this feature doesn't work. > > And this brings up to an important question, can a framework > dynamically configure to use code based on the version? > > I use the same framework for A2K and above. The reason I cut off at > A2K that raisevents do not work in A97 and I make some use of > RaiseEvents in the framework. Now we have code which works in AXP but > not A2K and below. So I would like to carve this stuff out and only > load it if the version being run under is AXP or above. A quick > Google search does not come up with anything. > > If this can be done, XP also supports form event sinks in two > different class modules without the page faults that A2K would trigger > if you tried that, so it might work well to place these event sinks > out in a completely separate class and instantiate that class only if > the version was XP or above. > > Thoughts about this? > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Friday, March 10, 2006 7:36 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > John, > > I did try ADODB disconnected recordsets with MS Access XP/2003 MDBs > and they seems to be working rather well. > > That is a surprise here because the book "Microsoft Access Developer's > Guide to SQL Server", which I read before states this can't be done. > But the book I have is for MS Access 2000/MS SQL 2000 - and for MS > Access 2000 this feature doesn't work. I don't have a new edition of > the book - if it exists the authors may have written about this new > useful feature.... > > I hope I'm not mistaken - I did recheck many times - yes, it seems to > work! > Please verify.... > > In P.S. of this message there is a sample code, which basicaly works > OK but which needs more investigations - it doesn't yet process all > the use cases. > This code is for [authors] table from [pubs] sample database. It can > work with both MS SQL and MS Access BEs use: > > - BindFormToSQLADORecordset - to connect to MS SQL BE and > > - BindFormToJetADORecordset to connect to MS Access BE. > > I did check with MS SQL profiler - communication with MS SQL BE is > minimal and connection is used only when database operation is in progress - i.e. > on > short period of time for properly organized communication with BE > database. > > If additional investigations/testing will show that this simple method > works for all the required use cases then that's "what doctor > ordered." - I mean you can relax and happily continue staying in your > comfortable "bounders camp" for quite some time... (Although I'd > recommend to use GUIDs for PKs) > > It would be also very useful to make it working in disconnected > optimistic batch update mode but I doubt it's possible - I'd be happy > somebody will present here a sample how similar simple method can be > used in disconnected optimistic batch mode. > > Shamil > > P.S. > > 1. create new mdb > 2. connect to [authors] table from [pubs] MS SQL sample database 3. > use make table query to clone [dbo_authors] to local MS Access table > [authors] 4. > close sample database 5. open sample database in shared mode 6. create > form for [authors] table 7. removed form's recordsource 8. put the > following code into form's module (edit connection strings if > needed) > 9. open form in normal view (to switch MS SQL/Jet backend > comment/uncommented the code lines in Form_Load sub) 10. Enjoy! > > Private mrst As ADODB.Recordset > Private mcnn As ADODB.Connection > > Private mcolDeletedRowsIds As New Collection > > Private Sub Form_Load() > 'BindFormToSQLADORecordset > BindFormToJetADORecordset > End Sub > > Private Sub Form_BeforeUpdate(Cancel As Integer) > UpdateBE > End Sub > > Private Sub Form_BeforeInsert(Cancel As Integer) > mrst.AddNew > End Sub > > Private Sub Form_Delete(Cancel As Integer) > If mcolDeletedRowsIds.Count = 0 Then > mcolDeletedRowsIds.Add mrst!au_id.Value > Else > mcolDeletedRowsIds.Add mrst!au_id.Value, , 1 > End If > End Sub > > Private Sub Form_Current() > Dim strSql As String > Dim i As Integer > If mcolDeletedRowsIds.Count > 0 Then > For i = mcolDeletedRowsIds.Count To 1 Step -1 > strSql = "delete from [authors] where au_id = '" & _ > mcolDeletedRowsIds.Item(i) & "'" > mcnn.Execute strSql > mcolDeletedRowsIds.Remove i > Next i > End If > End Sub > > Private Sub Form_Unload(Cancel As Integer) On Error Resume Next > mrst.Close > mcnn.Close > End Sub > > Private Sub BindFormToSQLADORecordset() Dim strSql As String Dim > strCnn As String > Set mcnn = New ADODB.Connection > strCnn = "Provider=SQLOLEDB.1;" & _ > "Server=(local);" & _ > "Database=Pubs;" & _ > "Integrated Security = SSPI" > mcnn.Open strCnn > > strSql = "select * from [authors]" > Set mrst = New ADODB.Recordset > mrst.CursorLocation = adUseClient > > mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic > > mrst.ActiveConnection = Nothing > > Set Me.Recordset = mrst > End Sub > > Private Sub UpdateBE() > Set mrst.ActiveConnection = mcnn > mrst.UpdateBatch adAffectCurrent > Set mrst.ActiveConnection = Nothing End Sub > > Private Sub BindFormToJetADORecordset() Dim strSql As String Dim > strCnn As String > Set mcnn = New ADODB.Connection > strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ > "Data Source=" & CurrentDb.Name & _ > ";User Id=admin;Password=;" > mcnn.Open strCnn > > strSql = "select * from [authors]" > Set mrst = New ADODB.Recordset > mrst.CursorLocation = adUseClient > > mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic > > Set mrst.ActiveConnection = Nothing > > Set Me.Recordset = mrst > End Sub > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Sun Mar 12 23:15:42 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Mon, 13 Mar 2006 00:15:42 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <001601c64569$9e29cce0$6501a8c0@Nant> Message-ID: <005201c6465d$2d5cb0f0$647aa8c0@ColbyM6805> Shamil, I am looking at this now. Do you know if binding to an ADO recordset changes the data type of the RecordsetClone. I was under the impression that RecordsetClone was always a DAO recordset. Does RecordsetClone become invalid? I use RecordsetClone to perform many different operations, including syncing the form to a combo and VV. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Saturday, March 11, 2006 7:12 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Dan, Yes, I have seen that - in fact I did do google before I started my experimenting. In KB281998 "How to bind Microsoft Access forms to ADO recordsets" http://support.microsoft.com/kb/281998 they talk AFAIS about binding to connected ADODB recordsets. The original question (as I got it) was hwo to bind to disconnected ADODB recordsets and then implied question is: is there a simple and generic way to translate/transfer changes from disconnected recordset to the backend... As it happens there is a trick to do that described in my previous posting. I did do google now additionally and I did find that the similar trick is described already several years ago. They do it a little bit differently but the principle is the same - they write: <<< Now, the clever tricks: 1. Open a static, optimistic batch recordset, disconnect it, save it to a simple in-memory stream object, set the stream position to zero so it can be read from the beginning, and open a new copy of the recordset from the stream. Now, bind one copy to the form, and start working. When you're ready to do a batch update, first compare the 2 recordsets for changes, and apply any adds, changes, and deletes to the unbound recordset, then run BatchUpdate from the unbound recordset. Note that Access sets values of IDENTITY columns to zero, so that's an easy way to filter for added records. ... >>> This excerpt is from this posting (watch line wraps!): <<< ADP: A2K vs 2002? From: Steve Jorgensen Date: Sun, Jul 21 2002 7:29 pm http://groups.google.com/group/comp.databases.ms-access/browse_frm/thread/17 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/grou ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3Dima ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3Den#f2 0d79536029060e >>> And here is another related information: <<< From: Steve Jorgensen Date: Thurs, Nov 28 2002 11:45 pm http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071f8c9 ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UTF-8& oe=UTF-8&rnum=2 >>> So they approve that my trick is legal and is a kind of "wheel reinwention" - the difference of my "wheel" is that I do trasnslate changes to the second disconected recordset when form events fire - the disadvantage of my method is that it needs more tricky coding, which still needs to be well tested, the advantage - is that as soons as the changes on the current row are done I can serialize second disconnected recordset to xml file and in the case of client app's failure batch changes will not be lost etc. Strange that such a valuable information first time published in summer 2002 about using ADODB disconnected recordsets is so rarely discussed on Internet - everybody in this World is abandoning "MS Access toy" and switiching to .NET development? But this feature properly applied makes MS Access FEs good candidates to be used as true FEs - without any significant performance/locking hits on BEs I mean.... Shamil ----- Original Message ----- From: "Dan Waters" To: "'Access Developers discussion and problem solving'" Sent: Sunday, March 12, 2006 2:27 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > I've been reading you post with interest. Have you looked at MS KB > 281998? > This gives a method for an Access form to connect to SQL Server, Jet, and > Oracle BE's and be updateable. They identify a specific provider to do > this > that can be used to set up bound forms. > > The provider is: "Microsoft.Access.OLEDB.10.0" > > I have not tried this, but thought you might be interested. > > Dan Waters > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 5:04 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > John at all, > > I did make some more experimenting and it happens that MS Access 2003 (and > probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with > disconnected updatable ADODB recordsets with both MS Access and MS SQL > backends. > > I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access backend > and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. > > Some more testing/experimenting is needed but I did do quite some tests > and > they worked OK. > > As I wrote already this feature is new for me and a (big) surprise - this > is > a functionality I have been waiting for 8+ years since 1997 when we made > here a custom framework to work with MS Access and MS SQL in disconnected > mode, but it was rather heavyweight and because of the bugs in MS Access I > decided to not make it broadly available.... > > Basically this means that MS Access forms can be used in bound mode with > very low performance hit to the MS Access and MS SQL backends - the same > way > ADODB disconnected recordsets are used in n-tier applications. > > The programming of form's events processing is relatively simple and it > should be possible to generalize it to make a simple lightweight framework > in case back-end database(s) follow systematic naming conventions and > database models design principles. > > The "trick" is to open two ADODB recordsets: > > - one with batch update enabled > - second without batch update > > and make them disconnected. > > Then bind MS Access form to the second recordset (without batch update > enabled). > > (I did experiemnet with recordsets having several source rows as a generic > case to see are there any chances to use MS Access subforms in bound > editable mode with disconnected ADODB recordsets) > > When MS Access form fires insert, update, delete events all the changes > can > be easily translated from the second recordset (where these changes are > made > "automagically" because MS Access form is bound to it) to the first > recordset. > > On form close(or using special button) first recordset can be reconnected > to > the backend and batch update applied. (Of course in the case of special > button to apply batch changes the two disconnected recordsets have to be > resynchronized after updates). > > etc. > > Here is how "automagically" generated by ADODB batch update looks in the > case of MS SQL backend (Info obtained from MS SQL profiler, line breaks > are > inserted manually to make it readable): > > exec sp_executesql > > N'UPDATE "Northwind".."Categories" SET > "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE > "CategoryID"=@P4 > AND "CategoryName"=@P5; > > DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND > "CategoryName"=@P7; > > UPDATE "Northwind".."Categories" SET > "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE > "CategoryID"=@P11 AND "CategoryName"=@P12; > > INSERT INTO "Northwind".."Categories" > ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', > > N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 > nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 > nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', > > 99, N'CatName', N'Updated category description', > 99, N'CatName', > 66, N'DelCatName', > 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', > 662, N'newCatName', N'new Cat description' > > Live connection to the back-end is needed only on opening of the source > recordsets and on applying batch changes. Therefore connections can be > pooled/should be possible to pool (I didn't experiment here) and to share > them between several (many) front-end applications/clients if these > connections are opened using ActiveX DCOM servers running on server > PCs/.NET > Remoting(?) objects. As well as actual disconnected recordset creation and > reconnection and backend update can be executed on (Web) server side - > depending on whatever is used on backend.... > > Yes, I know dynamic SPs accessing database tables directly do not look > nice > but there could be many ways to make it working differently using > predefined > stored procedures (e.g. by serializing ADODB recordset into XML file(s) > where all the updates (inserts, deletes, updates) are coded special easily > parsed way and then reformat these XML files into the calls to the > predefined stored procedures etc.etc. > > Here is how it looks this saved XML(no direct correspondence with > presented > above batch T-SQL update) : > > - xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" > xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> > - > - > - rs:basecatalog="Northwind" rs:basetable="Categories1" > rs:basecolumn="CategoryID"> > rs:fixedlength="true" rs:maybenull="false" /> > > - rs:writeunknown="true" > rs:basecatalog="Northwind" rs:basetable="Categories1" > rs:basecolumn="CategoryName"> > > > - rs:writeunknown="true" rs:basecatalog="Northwind" > rs:basetable="Categories1" > rs:basecolumn="Description"> > > > > > > - > > > > /> > > > > > - > - > > > > > - > - > > > > > /> > - > /> > > - > > > > > > I do not post code here now because I wanted to experiment more and > because > it would be useful if somebody else tries to repeat the "trick" described > above - if it will work for them then a whole set of new opportunities to > use MS Access as a real development tool will be opened.... > > I will post code after additional tests within one-two weeks when it will > become clear that it works. > > Please post any links here if you think that my posted information looks > like "wheel reinvention" or you think it doesn't have practical > application > because of this or that several limitations etc.etc. > > Thank you. > > Shamil > > P.S. I have installed on my PC: > > - MS Windows 2003 Server SP1 > - MS Office 2003/MS Access 2003 SP1 > - MS SQL 2000 SP3a > - MDAC 2.8 > - NET Framework 1.1 and 2.0 > - Visual Studio 2003 and 2005 > - I have also MS SQL Server 2005 Express edition but I didn't experiment > with it > > P. P.S. Yes, I didn't talk about identity(autonumber) fields - I generally > use GUIDs for PKs. > To properly manage numeric identity values some more tricks are needed - > I'd > be grateful if somebody post information on this subject > (updategram/diffgram XML is a direct solution here probably - and > serialized/saved ADODB batch update can be converted into diffgrams by > using > XSLT or VB(A) or VB.NET/C#/C++ code etc.) > <<< tail skipped >>> -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Mon Mar 13 02:19:36 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Mon, 13 Mar 2006 11:19:36 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <005201c6465d$2d5cb0f0$647aa8c0@ColbyM6805> Message-ID: <007001c64676$e7975e20$6501a8c0@Nant> > Does RecordsetClone become invalid? No, it doesn't, John. But it has another name. Similar method for ADODB recordsets is called Clone. > I am looking at this now. Please do not spend a lot of time on it now or at least do not plan to broadly use it in your development until it's very well tested and its limitations are clearly defined - there are rumors this feature introduce instability in MS Access work. I have doubts in that because I haven't seen any time MS Access crashes when bound to disconnected ADODB recordsets the way I described. On the other hand I did do "fight" in my work in the past with MS Access GPFs, when listboxes/comboboxes were bound to ADODB recordsets but as far as I have found this wasn't the problem with ADODB recordsets but the problem that in that case late bound DAO or ADODB recordets were used and these latter were opened in library mdb and there was a bug when DAO recordsets were used for ADP's forms and that was the cause of the floating GPF trouble or something like that. WIth this problem fixed the applications work now well for more than a year. Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 13, 2006 8:15 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > I am looking at this now. Do you know if binding to an ADO recordset > changes > the data type of the RecordsetClone. I was under the impression that > RecordsetClone was always a DAO recordset. Does RecordsetClone become > invalid? I use RecordsetClone to perform many different operations, > including syncing the form to a combo and VV. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 7:12 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > Dan, > > Yes, I have seen that - in fact I did do google before I started my > experimenting. > In KB281998 "How to bind Microsoft Access forms to ADO recordsets" > http://support.microsoft.com/kb/281998 they talk AFAIS about binding to > connected ADODB recordsets. > > The original question (as I got it) was hwo to bind to disconnected ADODB > recordsets and then implied question is: is there a simple and generic way > to translate/transfer changes from disconnected recordset to the > backend... > > As it happens there is a trick to do that described in my previous > posting. > > I did do google now additionally and I did find that the similar trick is > described already several years ago. They do it a little bit differently > but > the principle is the same - they write: > > <<< > Now, the clever tricks: > > 1. Open a static, optimistic batch recordset, disconnect it, save it to a > simple in-memory stream object, set the stream position to zero so it can > be > read from the beginning, and open a new copy of the recordset from the > stream. Now, bind one copy to the form, and start working. When you're > ready to do a batch update, first compare the 2 recordsets for changes, > and > apply any adds, changes, and deletes to the unbound recordset, then run > BatchUpdate from the unbound recordset. Note that Access sets values of > IDENTITY columns to zero, so that's an easy way to filter for added > records. > ... >>>> > > This excerpt is from this posting (watch line wraps!): > > <<< > ADP: A2K vs 2002? > From: Steve Jorgensen > Date: Sun, Jul 21 2002 7:29 pm > > http://groups.google.com/group/comp.databases.ms-access/browse_frm/thread/17 > 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/grou > ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3Dima > ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3Den#f2 > 0d79536029060e >>>> > > And here is another related information: > > <<< > From: Steve Jorgensen > Date: Thurs, Nov 28 2002 11:45 pm > > http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071f8c9 > ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UTF-8& > oe=UTF-8&rnum=2 >>>> > > So they approve that my trick is legal and is a kind of "wheel > reinwention" > - the difference of my "wheel" is that I do trasnslate changes to the > second > disconected recordset when form events fire - the disadvantage of my > method > is that it needs more tricky coding, which still needs to be well tested, > the advantage - is that as soons as the changes on the current row are > done > I can serialize second disconnected recordset to xml file and in the case > of > client app's failure batch changes will not be lost etc. > > Strange that such a valuable information first time published in summer > 2002 > about using ADODB disconnected recordsets is so rarely discussed on > Internet > - everybody in this World is abandoning "MS Access toy" and switiching to > .NET development? > > But this feature properly applied makes MS Access FEs good candidates to > be > used as true FEs - without any significant performance/locking hits on BEs > I > mean.... > > Shamil > > ----- Original Message ----- > From: "Dan Waters" > To: "'Access Developers discussion and problem solving'" > > Sent: Sunday, March 12, 2006 2:27 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> I've been reading you post with interest. Have you looked at MS KB >> 281998? >> This gives a method for an Access form to connect to SQL Server, Jet, and >> Oracle BE's and be updateable. They identify a specific provider to do >> this >> that can be used to set up bound forms. >> >> The provider is: "Microsoft.Access.OLEDB.10.0" >> >> I have not tried this, but thought you might be interested. >> >> Dan Waters >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >> Salakhetdinov >> Sent: Saturday, March 11, 2006 5:04 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> John at all, >> >> I did make some more experimenting and it happens that MS Access 2003 >> (and >> probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with >> disconnected updatable ADODB recordsets with both MS Access and MS SQL >> backends. >> >> I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access >> backend >> and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. >> >> Some more testing/experimenting is needed but I did do quite some tests >> and >> they worked OK. >> >> As I wrote already this feature is new for me and a (big) surprise - this >> is >> a functionality I have been waiting for 8+ years since 1997 when we made >> here a custom framework to work with MS Access and MS SQL in disconnected >> mode, but it was rather heavyweight and because of the bugs in MS Access >> I >> decided to not make it broadly available.... >> >> Basically this means that MS Access forms can be used in bound mode with >> very low performance hit to the MS Access and MS SQL backends - the same >> way >> ADODB disconnected recordsets are used in n-tier applications. >> >> The programming of form's events processing is relatively simple and it >> should be possible to generalize it to make a simple lightweight >> framework >> in case back-end database(s) follow systematic naming conventions and >> database models design principles. >> >> The "trick" is to open two ADODB recordsets: >> >> - one with batch update enabled >> - second without batch update >> >> and make them disconnected. >> >> Then bind MS Access form to the second recordset (without batch update >> enabled). >> >> (I did experiemnet with recordsets having several source rows as a >> generic >> case to see are there any chances to use MS Access subforms in bound >> editable mode with disconnected ADODB recordsets) >> >> When MS Access form fires insert, update, delete events all the changes >> can >> be easily translated from the second recordset (where these changes are >> made >> "automagically" because MS Access form is bound to it) to the first >> recordset. >> >> On form close(or using special button) first recordset can be reconnected >> to >> the backend and batch update applied. (Of course in the case of special >> button to apply batch changes the two disconnected recordsets have to be >> resynchronized after updates). >> >> etc. >> >> Here is how "automagically" generated by ADODB batch update looks in the >> case of MS SQL backend (Info obtained from MS SQL profiler, line breaks >> are >> inserted manually to make it readable): >> >> exec sp_executesql >> >> N'UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE >> "CategoryID"=@P4 >> AND "CategoryName"=@P5; >> >> DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND >> "CategoryName"=@P7; >> >> UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE >> "CategoryID"=@P11 AND "CategoryName"=@P12; >> >> INSERT INTO "Northwind".."Categories" >> ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', >> >> N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 >> nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 >> nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', >> >> 99, N'CatName', N'Updated category description', >> 99, N'CatName', >> 66, N'DelCatName', >> 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', >> 662, N'newCatName', N'new Cat description' >> >> Live connection to the back-end is needed only on opening of the source >> recordsets and on applying batch changes. Therefore connections can be >> pooled/should be possible to pool (I didn't experiment here) and to share >> them between several (many) front-end applications/clients if these >> connections are opened using ActiveX DCOM servers running on server >> PCs/.NET >> Remoting(?) objects. As well as actual disconnected recordset creation >> and >> reconnection and backend update can be executed on (Web) server side - >> depending on whatever is used on backend.... >> >> Yes, I know dynamic SPs accessing database tables directly do not look >> nice >> but there could be many ways to make it working differently using >> predefined >> stored procedures (e.g. by serializing ADODB recordset into XML file(s) >> where all the updates (inserts, deletes, updates) are coded special >> easily >> parsed way and then reformat these XML files into the calls to the >> predefined stored procedures etc.etc. >> >> Here is how it looks this saved XML(no direct correspondence with >> presented >> above batch T-SQL update) : >> >> - > xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" >> xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> >> - >> - >> - > rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryID"> >> > rs:fixedlength="true" rs:maybenull="false" /> >> >> - > rs:writeunknown="true" >> rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryName"> >> >> >> - > rs:writeunknown="true" rs:basecatalog="Northwind" >> rs:basetable="Categories1" >> rs:basecolumn="Description"> >> >> >> >> >> >> - >> >> >> >> > Description="Cheeses" >> /> >> >> >> >> >> - >> - >> >> >> >> >> - >> - >> >> >> >> >> > /> >> - >> > /> >> >> - >> >> >> >> >> >> I do not post code here now because I wanted to experiment more and >> because >> it would be useful if somebody else tries to repeat the "trick" described >> above - if it will work for them then a whole set of new opportunities to >> use MS Access as a real development tool will be opened.... >> >> I will post code after additional tests within one-two weeks when it will >> become clear that it works. >> >> Please post any links here if you think that my posted information looks >> like "wheel reinvention" or you think it doesn't have practical >> application >> because of this or that several limitations etc.etc. >> >> Thank you. >> >> Shamil >> >> P.S. I have installed on my PC: >> >> - MS Windows 2003 Server SP1 >> - MS Office 2003/MS Access 2003 SP1 >> - MS SQL 2000 SP3a >> - MDAC 2.8 >> - NET Framework 1.1 and 2.0 >> - Visual Studio 2003 and 2005 >> - I have also MS SQL Server 2005 Express edition but I didn't experiment >> with it >> >> P. P.S. Yes, I didn't talk about identity(autonumber) fields - I >> generally >> use GUIDs for PKs. >> To properly manage numeric identity values some more tricks are needed - >> I'd >> be grateful if somebody post information on this subject >> (updategram/diffgram XML is a direct solution here probably - and >> serialized/saved ADODB batch update can be converted into diffgrams by >> using >> XSLT or VB(A) or VB.NET/C#/C++ code etc.) >> > > <<< tail skipped >>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From shamil at users.mns.ru Mon Mar 13 03:08:49 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Mon, 13 Mar 2006 12:08:49 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <000301c645f9$8cd4fe20$0200a8c0@danwaters> Message-ID: <00aa01c6467d$c62bbf90$6501a8c0@Nant> > I'll keep this and study it. Hi Dan, Please try to stress test it "to death" first of all because as I wrote in a posting to John here there are rumors it forces MS Access to loose stability... > Having said all that, when I go to companies and tell them that I develop > in > Access, have been doing so for eight years, and show them how my system > works, the concern over Access drops off. Good news! I thought MS Access is getting "semi-dead"... > I am looking forward to what Access 12 will have in it. I've seen some of > the descriptive material published by MS, and so far it looks great! Yes, it does look quite differently and most of the changes are mainly power users oriented AFAIS - therefore MS Access developers may expect more "messy software" to fix coming in their direction! :) Shamil ----- Original Message ----- From: "Dan Waters" To: "'Access Developers discussion and problem solving'" Sent: Sunday, March 12, 2006 8:22 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi Shamil, > > Thank you for this additional information. I've learned to read your > information as though I was a student in your class! I'll keep this and > study it. > > The fact that people are moving away from Access as a development platform > is interesting. My experience is that people in IT departments have had > bad > experiences with Access. They've repeatedly seen where someone in their > company learns how to use Access to some extent to do something that many > people like. But because that person doesn't have the ability or time to > become a real developer, the application has trouble. Then the IT > department gets told by a VP that this is a 'must have' application that > the > IT department must fix Now! So, the IT department has to fix it with > unbudgeted time and unbudgeted funds. After a few experiences like this, > IT > people tend to get leery of Access. > > However, with VB or VB.net, a person without actual training in database > development and connection between a FE and BE, can't even get started. > (I > have to admit that when I began developing in Access, I didn't understand > the concept of FE and BE either.) This makes (today) the choice of > developing significant applications using VB.net the 'safe' choice for > larger companies. > > Having said all that, when I go to companies and tell them that I develop > in > Access, have been doing so for eight years, and show them how my system > works, the concern over Access drops off. They can see for themselves > that > I can produce. I typically market to small to medium sized companies, so > that may factor in also. > > I am looking forward to what Access 12 will have in it. I've seen some of > the descriptive material published by MS, and so far it looks great! > > Dan Waters > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 6:12 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > Dan, > > Yes, I have seen that - in fact I did do google before I started my > experimenting. > In KB281998 "How to bind Microsoft Access forms to ADO recordsets" > http://support.microsoft.com/kb/281998 they talk AFAIS about binding to > connected ADODB recordsets. > > The original question (as I got it) was hwo to bind to disconnected ADODB > recordsets and then implied question is: is there a simple and generic way > to translate/transfer changes from disconnected recordset to the > backend... > > As it happens there is a trick to do that described in my previous > posting. > > I did do google now additionally and I did find that the similar trick is > described already several years ago. They do it a little bit differently > but > the principle is the same - they write: > > <<< > Now, the clever tricks: > > 1. Open a static, optimistic batch recordset, disconnect it, save it > to a simple in-memory stream object, set the stream position to zero > so it can be read from the beginning, and open a new copy of the > recordset from the stream. Now, bind one copy to the form, and start > working. When you're ready to do a batch update, first compare the 2 > recordsets for changes, and apply any adds, changes, and deletes to > the unbound recordset, then run BatchUpdate from the unbound > recordset. Note that Access sets values of IDENTITY columns to zero, > so that's an easy way to filter for added records. > ... >>>> > > This excerpt is from this posting (watch line wraps!): > > <<< > ADP: A2K vs 2002? > From: Steve Jorgensen > Date: Sun, Jul 21 2002 7:29 pm > > http://groups.google.com/group/comp.databases.ms-access/browse_frm/thread/17 > 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/grou > ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3Dima > ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3Den#f2 > 0d79536029060e >>>> > > And here is another related information: > > <<< > From: Steve Jorgensen > Date: Thurs, Nov 28 2002 11:45 pm > > http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071f8c9 > ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UTF-8& > oe=UTF-8&rnum=2 >>>> > > So they approve that my trick is legal and is a kind of "wheel > reinwention" - the difference of my "wheel" is that I do trasnslate > changes > to the second disconected recordset when form events fire - the > disadvantage > of my method is that it needs more tricky coding, which still needs to be > well tested, the advantage - is that as soons as the changes on the > current > row are done I can serialize second disconnected recordset to xml file and > in the case of client app's failure batch changes will not be lost etc. > > Strange that such a valuable information first time published in summer > 2002 > about using ADODB disconnected recordsets is so rarely discussed on > Internet - everybody in this World is abandoning "MS Access toy" and > switiching to .NET development? > > But this feature properly applied makes MS Access FEs good candidates to > be > used as true FEs - without any significant performance/locking hits on BEs > I > mean.... > > Shamil > > ----- Original Message ----- > From: "Dan Waters" > To: "'Access Developers discussion and problem solving'" > > Sent: Sunday, March 12, 2006 2:27 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> I've been reading you post with interest. Have you looked at MS KB >> 281998? >> This gives a method for an Access form to connect to SQL Server, Jet, and >> Oracle BE's and be updateable. They identify a specific provider to do >> this >> that can be used to set up bound forms. >> >> The provider is: "Microsoft.Access.OLEDB.10.0" >> >> I have not tried this, but thought you might be interested. >> >> Dan Waters >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >> Salakhetdinov >> Sent: Saturday, March 11, 2006 5:04 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> John at all, >> >> I did make some more experimenting and it happens that MS Access 2003 >> (and >> probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with >> disconnected updatable ADODB recordsets with both MS Access and MS SQL >> backends. >> >> I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access >> backend >> and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. >> >> Some more testing/experimenting is needed but I did do quite some tests >> and >> they worked OK. >> >> As I wrote already this feature is new for me and a (big) surprise - this >> is >> a functionality I have been waiting for 8+ years since 1997 when we made >> here a custom framework to work with MS Access and MS SQL in disconnected >> mode, but it was rather heavyweight and because of the bugs in MS Access >> I >> decided to not make it broadly available.... >> >> Basically this means that MS Access forms can be used in bound mode with >> very low performance hit to the MS Access and MS SQL backends - the same >> way >> ADODB disconnected recordsets are used in n-tier applications. >> >> The programming of form's events processing is relatively simple and it >> should be possible to generalize it to make a simple lightweight >> framework >> in case back-end database(s) follow systematic naming conventions and >> database models design principles. >> >> The "trick" is to open two ADODB recordsets: >> >> - one with batch update enabled >> - second without batch update >> >> and make them disconnected. >> >> Then bind MS Access form to the second recordset (without batch update >> enabled). >> >> (I did experiemnet with recordsets having several source rows as a >> generic >> case to see are there any chances to use MS Access subforms in bound >> editable mode with disconnected ADODB recordsets) >> >> When MS Access form fires insert, update, delete events all the changes >> can >> be easily translated from the second recordset (where these changes are >> made >> "automagically" because MS Access form is bound to it) to the first >> recordset. >> >> On form close(or using special button) first recordset can be reconnected >> to >> the backend and batch update applied. (Of course in the case of special >> button to apply batch changes the two disconnected recordsets have to be >> resynchronized after updates). >> >> etc. >> >> Here is how "automagically" generated by ADODB batch update looks in the >> case of MS SQL backend (Info obtained from MS SQL profiler, line breaks >> are >> inserted manually to make it readable): >> >> exec sp_executesql >> >> N'UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE >> "CategoryID"=@P4 >> AND "CategoryName"=@P5; >> >> DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND >> "CategoryName"=@P7; >> >> UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE >> "CategoryID"=@P11 AND "CategoryName"=@P12; >> >> INSERT INTO "Northwind".."Categories" >> ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', >> >> N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 >> nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 >> nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', >> >> 99, N'CatName', N'Updated category description', >> 99, N'CatName', >> 66, N'DelCatName', >> 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', >> 662, N'newCatName', N'new Cat description' >> >> Live connection to the back-end is needed only on opening of the source >> recordsets and on applying batch changes. Therefore connections can be >> pooled/should be possible to pool (I didn't experiment here) and to share >> them between several (many) front-end applications/clients if these >> connections are opened using ActiveX DCOM servers running on server >> PCs/.NET >> Remoting(?) objects. As well as actual disconnected recordset creation >> and >> reconnection and backend update can be executed on (Web) server side - >> depending on whatever is used on backend.... >> >> Yes, I know dynamic SPs accessing database tables directly do not look >> nice >> but there could be many ways to make it working differently using >> predefined >> stored procedures (e.g. by serializing ADODB recordset into XML file(s) >> where all the updates (inserts, deletes, updates) are coded special >> easily >> parsed way and then reformat these XML files into the calls to the >> predefined stored procedures etc.etc. >> >> Here is how it looks this saved XML(no direct correspondence with >> presented >> above batch T-SQL update) : >> >> - > xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" >> xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> >> - >> - >> - > rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryID"> >> > rs:fixedlength="true" rs:maybenull="false" /> >> >> - > rs:writeunknown="true" >> rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryName"> >> >> >> - > rs:writeunknown="true" rs:basecatalog="Northwind" >> rs:basetable="Categories1" >> rs:basecolumn="Description"> >> >> >> >> >> >> - >> >> >> >> > Description="Cheeses" >> /> >> >> >> >> >> - >> - >> >> >> >> >> - >> - >> >> >> >> >> > /> >> - >> > /> >> >> - >> >> >> >> >> >> I do not post code here now because I wanted to experiment more and >> because >> it would be useful if somebody else tries to repeat the "trick" described >> above - if it will work for them then a whole set of new opportunities to >> use MS Access as a real development tool will be opened.... >> >> I will post code after additional tests within one-two weeks when it will >> become clear that it works. >> >> Please post any links here if you think that my posted information looks >> like "wheel reinvention" or you think it doesn't have practical >> application >> because of this or that several limitations etc.etc. >> >> Thank you. >> >> Shamil >> >> P.S. I have installed on my PC: >> >> - MS Windows 2003 Server SP1 >> - MS Office 2003/MS Access 2003 SP1 >> - MS SQL 2000 SP3a >> - MDAC 2.8 >> - NET Framework 1.1 and 2.0 >> - Visual Studio 2003 and 2005 >> - I have also MS SQL Server 2005 Express edition but I didn't experiment >> with it >> >> P. P.S. Yes, I didn't talk about identity(autonumber) fields - I >> generally >> use GUIDs for PKs. >> To properly manage numeric identity values some more tricks are needed - >> I'd >> be grateful if somebody post information on this subject >> (updategram/diffgram XML is a direct solution here probably - and >> serialized/saved ADODB batch update can be converted into diffgrams by >> using >> XSLT or VB(A) or VB.NET/C#/C++ code etc.) >> > > <<< tail skipped >>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From shamil at users.mns.ru Mon Mar 13 03:55:03 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Mon, 13 Mar 2006 12:55:03 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <000301c645f9$8cd4fe20$0200a8c0@danwaters> <00aa01c6467d$c62bbf90$6501a8c0@Nant> Message-ID: <003401c64684$54da0700$6501a8c0@Nant> Hi All, I did contact Steve Jorgensen on the subject - here are his answers reposted here with his permission: <+++++++++++++++++++++++++++++++++++++++++++++++++ > I wanted to ask you: Did you broadly use this method in real life > development since the summer 2002? Was it a success story or it > happened to > have side-effects, which can't be effectively worked around? Alas, over time I've found that using Access with disconencted recordsets is simply too unreliable to use. It can seem to work for a short time, but almost anything you try do to the recordset from code after creating it will cause Access to crash shortly after the recordset is bound to the form. Even without touching the recorodset from code, Access frequently crashes. I've given up on the technique as a practical tool. > May I post this your information in AccessD discussion list? > Do you have a sample app, which shows how MS Access crashes with forms > bound to disconnected recordsets? Yes - of course you may re-post it. As for an example app, no I don't have one at hand as all the code I wrote to do this has long since been discarded. I can tell you, however, that I had the problems with both Access 2002 and 2003, and they were serious. Access 2000 actually was more reliable, but that's becoming an antique and has other reliability issues in client/server applications. ++++++++++++++++++++++++++++++++++++++++++++++++++++> This is a serious warning to not use this technique in real life applications. But as I wrote recently I so far didn't see any MS Access crashes while using MS Access 2003 forms bound to ADODB recordsets. I will try to find time to prepare stress test and to run it for several hours... Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Monday, March 13, 2006 12:08 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> I'll keep this and study it. > Hi Dan, > > Please try to stress test it "to death" first of all because as I wrote in > a > posting to John here there are rumors it forces MS Access to loose > stability... > >> Having said all that, when I go to companies and tell them that I develop >> in >> Access, have been doing so for eight years, and show them how my system >> works, the concern over Access drops off. > Good news! I thought MS Access is getting "semi-dead"... > >> I am looking forward to what Access 12 will have in it. I've seen some >> of >> the descriptive material published by MS, and so far it looks great! > Yes, it does look quite differently and most of the changes are mainly > power > users oriented AFAIS - therefore MS Access developers may expect more > "messy > software" to fix coming in their direction! :) > > Shamil > <<< tail skipped >>> From jwcolby at ColbyConsulting.com Mon Mar 13 06:43:04 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Mon, 13 Mar 2006 07:43:04 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <007001c64676$e7975e20$6501a8c0@Nant> Message-ID: <005601c6469b$ad1ef440$647aa8c0@ColbyM6805> What I am asking though is whether RecordsetClone still exists, and is somehow populated from whatever data source the form is bound to? After binding to an ADO recordset, attempts to access RecordsetClone throw an error "Type mismatch" on the line of code Set mrst = mfrm.RecordsetClone Mrst is defined in the class header as a DAO recordset. I might be able to get away with generalizing mrst to an object. NOTE: I tried that, and while the "Set" now works, the objects have different methods so any code using the object has to have different code paths written. So apparently RecordsetClone is indeed initialized as an ADO recordset which makes all of my DAO specific code (FindFirst for example) throw a runtime error if encountered. If I am going to do this, I will need to branch my code based on the Access Version as well as whether I actually used the ADO recordset code. >Please do not spend a lot of time on it now or at least do not plan to broadly use it in your development until Luckily, in my framework, I can turn on and off capabilities by examining SysVars. It does sound like the instability objections were from an early adopter. Like most things in Software, trying to use any specific feature in Access in the early stages of its introduction can be risky. It is possible (and hopefully true) that they found and fixed the bugs causing such instability. One of the problems with influential early adopters is that people read their warnings and never use a feature because they reported it unstable. If they never go back to revisit it, then it is forever labeled unstable. Perhaps it is time for other influentials (you and I and this list) to revisit this feature and see if it can be used now? John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Monday, March 13, 2006 3:20 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Does RecordsetClone become invalid? No, it doesn't, John. But it has another name. Similar method for ADODB recordsets is called Clone. > I am looking at this now. Please do not spend a lot of time on it now or at least do not plan to broadly use it in your development until it's very well tested and its limitations are clearly defined - there are rumors this feature introduce instability in MS Access work. I have doubts in that because I haven't seen any time MS Access crashes when bound to disconnected ADODB recordsets the way I described. On the other hand I did do "fight" in my work in the past with MS Access GPFs, when listboxes/comboboxes were bound to ADODB recordsets but as far as I have found this wasn't the problem with ADODB recordsets but the problem that in that case late bound DAO or ADODB recordets were used and these latter were opened in library mdb and there was a bug when DAO recordsets were used for ADP's forms and that was the cause of the floating GPF trouble or something like that. WIth this problem fixed the applications work now well for more than a year. Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 13, 2006 8:15 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > I am looking at this now. Do you know if binding to an ADO recordset > changes > the data type of the RecordsetClone. I was under the impression that > RecordsetClone was always a DAO recordset. Does RecordsetClone become > invalid? I use RecordsetClone to perform many different operations, > including syncing the form to a combo and VV. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 7:12 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > Dan, > > Yes, I have seen that - in fact I did do google before I started my > experimenting. > In KB281998 "How to bind Microsoft Access forms to ADO recordsets" > http://support.microsoft.com/kb/281998 they talk AFAIS about binding to > connected ADODB recordsets. > > The original question (as I got it) was hwo to bind to disconnected ADODB > recordsets and then implied question is: is there a simple and generic way > to translate/transfer changes from disconnected recordset to the > backend... > > As it happens there is a trick to do that described in my previous > posting. > > I did do google now additionally and I did find that the similar trick is > described already several years ago. They do it a little bit differently > but > the principle is the same - they write: > > <<< > Now, the clever tricks: > > 1. Open a static, optimistic batch recordset, disconnect it, save it to a > simple in-memory stream object, set the stream position to zero so it can > be > read from the beginning, and open a new copy of the recordset from the > stream. Now, bind one copy to the form, and start working. When you're > ready to do a batch update, first compare the 2 recordsets for changes, > and > apply any adds, changes, and deletes to the unbound recordset, then run > BatchUpdate from the unbound recordset. Note that Access sets values of > IDENTITY columns to zero, so that's an easy way to filter for added > records. > ... >>>> > > This excerpt is from this posting (watch line wraps!): > > <<< > ADP: A2K vs 2002? > From: Steve Jorgensen > Date: Sun, Jul 21 2002 7:29 pm > > http://groups.google.com/group/comp.databases.ms-access/browse_frm/thread/17 > 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/grou > ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3Dima > ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3Den#f2 > 0d79536029060e >>>> > > And here is another related information: > > <<< > From: Steve Jorgensen > Date: Thurs, Nov 28 2002 11:45 pm > > http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071f8c9 > ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UTF-8& > oe=UTF-8&rnum=2 >>>> > > So they approve that my trick is legal and is a kind of "wheel > reinwention" > - the difference of my "wheel" is that I do trasnslate changes to the > second > disconected recordset when form events fire - the disadvantage of my > method > is that it needs more tricky coding, which still needs to be well tested, > the advantage - is that as soons as the changes on the current row are > done > I can serialize second disconnected recordset to xml file and in the case > of > client app's failure batch changes will not be lost etc. > > Strange that such a valuable information first time published in summer > 2002 > about using ADODB disconnected recordsets is so rarely discussed on > Internet > - everybody in this World is abandoning "MS Access toy" and switiching to > .NET development? > > But this feature properly applied makes MS Access FEs good candidates to > be > used as true FEs - without any significant performance/locking hits on BEs > I > mean.... > > Shamil > > ----- Original Message ----- > From: "Dan Waters" > To: "'Access Developers discussion and problem solving'" > > Sent: Sunday, March 12, 2006 2:27 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> I've been reading you post with interest. Have you looked at MS KB >> 281998? >> This gives a method for an Access form to connect to SQL Server, Jet, and >> Oracle BE's and be updateable. They identify a specific provider to do >> this >> that can be used to set up bound forms. >> >> The provider is: "Microsoft.Access.OLEDB.10.0" >> >> I have not tried this, but thought you might be interested. >> >> Dan Waters >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >> Salakhetdinov >> Sent: Saturday, March 11, 2006 5:04 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> John at all, >> >> I did make some more experimenting and it happens that MS Access 2003 >> (and >> probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with >> disconnected updatable ADODB recordsets with both MS Access and MS SQL >> backends. >> >> I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access >> backend >> and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. >> >> Some more testing/experimenting is needed but I did do quite some tests >> and >> they worked OK. >> >> As I wrote already this feature is new for me and a (big) surprise - this >> is >> a functionality I have been waiting for 8+ years since 1997 when we made >> here a custom framework to work with MS Access and MS SQL in disconnected >> mode, but it was rather heavyweight and because of the bugs in MS Access >> I >> decided to not make it broadly available.... >> >> Basically this means that MS Access forms can be used in bound mode with >> very low performance hit to the MS Access and MS SQL backends - the same >> way >> ADODB disconnected recordsets are used in n-tier applications. >> >> The programming of form's events processing is relatively simple and it >> should be possible to generalize it to make a simple lightweight >> framework >> in case back-end database(s) follow systematic naming conventions and >> database models design principles. >> >> The "trick" is to open two ADODB recordsets: >> >> - one with batch update enabled >> - second without batch update >> >> and make them disconnected. >> >> Then bind MS Access form to the second recordset (without batch update >> enabled). >> >> (I did experiemnet with recordsets having several source rows as a >> generic >> case to see are there any chances to use MS Access subforms in bound >> editable mode with disconnected ADODB recordsets) >> >> When MS Access form fires insert, update, delete events all the changes >> can >> be easily translated from the second recordset (where these changes are >> made >> "automagically" because MS Access form is bound to it) to the first >> recordset. >> >> On form close(or using special button) first recordset can be reconnected >> to >> the backend and batch update applied. (Of course in the case of special >> button to apply batch changes the two disconnected recordsets have to be >> resynchronized after updates). >> >> etc. >> >> Here is how "automagically" generated by ADODB batch update looks in the >> case of MS SQL backend (Info obtained from MS SQL profiler, line breaks >> are >> inserted manually to make it readable): >> >> exec sp_executesql >> >> N'UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE >> "CategoryID"=@P4 >> AND "CategoryName"=@P5; >> >> DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND >> "CategoryName"=@P7; >> >> UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE >> "CategoryID"=@P11 AND "CategoryName"=@P12; >> >> INSERT INTO "Northwind".."Categories" >> ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', >> >> N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 >> nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 >> nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', >> >> 99, N'CatName', N'Updated category description', >> 99, N'CatName', >> 66, N'DelCatName', >> 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', >> 662, N'newCatName', N'new Cat description' >> >> Live connection to the back-end is needed only on opening of the source >> recordsets and on applying batch changes. Therefore connections can be >> pooled/should be possible to pool (I didn't experiment here) and to share >> them between several (many) front-end applications/clients if these >> connections are opened using ActiveX DCOM servers running on server >> PCs/.NET >> Remoting(?) objects. As well as actual disconnected recordset creation >> and >> reconnection and backend update can be executed on (Web) server side - >> depending on whatever is used on backend.... >> >> Yes, I know dynamic SPs accessing database tables directly do not look >> nice >> but there could be many ways to make it working differently using >> predefined >> stored procedures (e.g. by serializing ADODB recordset into XML file(s) >> where all the updates (inserts, deletes, updates) are coded special >> easily >> parsed way and then reformat these XML files into the calls to the >> predefined stored procedures etc.etc. >> >> Here is how it looks this saved XML(no direct correspondence with >> presented >> above batch T-SQL update) : >> >> - > xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" >> xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> >> - >> - >> - > rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryID"> >> > rs:fixedlength="true" rs:maybenull="false" /> >> >> - > rs:writeunknown="true" >> rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryName"> >> >> >> - > rs:writeunknown="true" rs:basecatalog="Northwind" >> rs:basetable="Categories1" >> rs:basecolumn="Description"> >> >> >> >> >> >> - >> >> >> >> > Description="Cheeses" >> /> >> >> >> >> >> - >> - >> >> >> >> >> - >> - >> >> >> >> >> > /> >> - >> > /> >> >> - >> >> >> >> >> >> I do not post code here now because I wanted to experiment more and >> because >> it would be useful if somebody else tries to repeat the "trick" described >> above - if it will work for them then a whole set of new opportunities to >> use MS Access as a real development tool will be opened.... >> >> I will post code after additional tests within one-two weeks when it will >> become clear that it works. >> >> Please post any links here if you think that my posted information looks >> like "wheel reinvention" or you think it doesn't have practical >> application >> because of this or that several limitations etc.etc. >> >> Thank you. >> >> Shamil >> >> P.S. I have installed on my PC: >> >> - MS Windows 2003 Server SP1 >> - MS Office 2003/MS Access 2003 SP1 >> - MS SQL 2000 SP3a >> - MDAC 2.8 >> - NET Framework 1.1 and 2.0 >> - Visual Studio 2003 and 2005 >> - I have also MS SQL Server 2005 Express edition but I didn't experiment >> with it >> >> P. P.S. Yes, I didn't talk about identity(autonumber) fields - I >> generally >> use GUIDs for PKs. >> To properly manage numeric identity values some more tricks are needed - >> I'd >> be grateful if somebody post information on this subject >> (updategram/diffgram XML is a direct solution here probably - and >> serialized/saved ADODB batch update can be converted into diffgrams by >> using >> XSLT or VB(A) or VB.NET/C#/C++ code etc.) >> > > <<< tail skipped >>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Mon Mar 13 07:48:02 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Mon, 13 Mar 2006 08:48:02 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <007001c64676$e7975e20$6501a8c0@Nant> Message-ID: <005701c646a4$c0743560$647aa8c0@ColbyM6805> >Please do not spend a lot of time on it now or at least do not plan to broadly use it I have one specific place that I want to use this, the form that is causing locking issues at Invo Health Care. Given the size of the issue there, they would be a perfect test site for this. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Monday, March 13, 2006 3:20 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Does RecordsetClone become invalid? No, it doesn't, John. But it has another name. Similar method for ADODB recordsets is called Clone. > I am looking at this now. Please do not spend a lot of time on it now or at least do not plan to broadly use it in your development until it's very well tested and its limitations are clearly defined - there are rumors this feature introduce instability in MS Access work. I have doubts in that because I haven't seen any time MS Access crashes when bound to disconnected ADODB recordsets the way I described. On the other hand I did do "fight" in my work in the past with MS Access GPFs, when listboxes/comboboxes were bound to ADODB recordsets but as far as I have found this wasn't the problem with ADODB recordsets but the problem that in that case late bound DAO or ADODB recordets were used and these latter were opened in library mdb and there was a bug when DAO recordsets were used for ADP's forms and that was the cause of the floating GPF trouble or something like that. WIth this problem fixed the applications work now well for more than a year. Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 13, 2006 8:15 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > I am looking at this now. Do you know if binding to an ADO recordset > changes > the data type of the RecordsetClone. I was under the impression that > RecordsetClone was always a DAO recordset. Does RecordsetClone become > invalid? I use RecordsetClone to perform many different operations, > including syncing the form to a combo and VV. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 7:12 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > Dan, > > Yes, I have seen that - in fact I did do google before I started my > experimenting. > In KB281998 "How to bind Microsoft Access forms to ADO recordsets" > http://support.microsoft.com/kb/281998 they talk AFAIS about binding to > connected ADODB recordsets. > > The original question (as I got it) was hwo to bind to disconnected ADODB > recordsets and then implied question is: is there a simple and generic way > to translate/transfer changes from disconnected recordset to the > backend... > > As it happens there is a trick to do that described in my previous > posting. > > I did do google now additionally and I did find that the similar trick is > described already several years ago. They do it a little bit differently > but > the principle is the same - they write: > > <<< > Now, the clever tricks: > > 1. Open a static, optimistic batch recordset, disconnect it, save it to a > simple in-memory stream object, set the stream position to zero so it can > be > read from the beginning, and open a new copy of the recordset from the > stream. Now, bind one copy to the form, and start working. When you're > ready to do a batch update, first compare the 2 recordsets for changes, > and > apply any adds, changes, and deletes to the unbound recordset, then run > BatchUpdate from the unbound recordset. Note that Access sets values of > IDENTITY columns to zero, so that's an easy way to filter for added > records. > ... >>>> > > This excerpt is from this posting (watch line wraps!): > > <<< > ADP: A2K vs 2002? > From: Steve Jorgensen > Date: Sun, Jul 21 2002 7:29 pm > > http://groups.google.com/group/comp.databases.ms-access/browse_frm/thread/17 > 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/grou > ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3Dima > ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3Den#f2 > 0d79536029060e >>>> > > And here is another related information: > > <<< > From: Steve Jorgensen > Date: Thurs, Nov 28 2002 11:45 pm > > http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071f8c9 > ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UTF-8& > oe=UTF-8&rnum=2 >>>> > > So they approve that my trick is legal and is a kind of "wheel > reinwention" > - the difference of my "wheel" is that I do trasnslate changes to the > second > disconected recordset when form events fire - the disadvantage of my > method > is that it needs more tricky coding, which still needs to be well tested, > the advantage - is that as soons as the changes on the current row are > done > I can serialize second disconnected recordset to xml file and in the case > of > client app's failure batch changes will not be lost etc. > > Strange that such a valuable information first time published in summer > 2002 > about using ADODB disconnected recordsets is so rarely discussed on > Internet > - everybody in this World is abandoning "MS Access toy" and switiching to > .NET development? > > But this feature properly applied makes MS Access FEs good candidates to > be > used as true FEs - without any significant performance/locking hits on BEs > I > mean.... > > Shamil > > ----- Original Message ----- > From: "Dan Waters" > To: "'Access Developers discussion and problem solving'" > > Sent: Sunday, March 12, 2006 2:27 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> I've been reading you post with interest. Have you looked at MS KB >> 281998? >> This gives a method for an Access form to connect to SQL Server, Jet, and >> Oracle BE's and be updateable. They identify a specific provider to do >> this >> that can be used to set up bound forms. >> >> The provider is: "Microsoft.Access.OLEDB.10.0" >> >> I have not tried this, but thought you might be interested. >> >> Dan Waters >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >> Salakhetdinov >> Sent: Saturday, March 11, 2006 5:04 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> John at all, >> >> I did make some more experimenting and it happens that MS Access 2003 >> (and >> probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with >> disconnected updatable ADODB recordsets with both MS Access and MS SQL >> backends. >> >> I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access >> backend >> and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. >> >> Some more testing/experimenting is needed but I did do quite some tests >> and >> they worked OK. >> >> As I wrote already this feature is new for me and a (big) surprise - this >> is >> a functionality I have been waiting for 8+ years since 1997 when we made >> here a custom framework to work with MS Access and MS SQL in disconnected >> mode, but it was rather heavyweight and because of the bugs in MS Access >> I >> decided to not make it broadly available.... >> >> Basically this means that MS Access forms can be used in bound mode with >> very low performance hit to the MS Access and MS SQL backends - the same >> way >> ADODB disconnected recordsets are used in n-tier applications. >> >> The programming of form's events processing is relatively simple and it >> should be possible to generalize it to make a simple lightweight >> framework >> in case back-end database(s) follow systematic naming conventions and >> database models design principles. >> >> The "trick" is to open two ADODB recordsets: >> >> - one with batch update enabled >> - second without batch update >> >> and make them disconnected. >> >> Then bind MS Access form to the second recordset (without batch update >> enabled). >> >> (I did experiemnet with recordsets having several source rows as a >> generic >> case to see are there any chances to use MS Access subforms in bound >> editable mode with disconnected ADODB recordsets) >> >> When MS Access form fires insert, update, delete events all the changes >> can >> be easily translated from the second recordset (where these changes are >> made >> "automagically" because MS Access form is bound to it) to the first >> recordset. >> >> On form close(or using special button) first recordset can be reconnected >> to >> the backend and batch update applied. (Of course in the case of special >> button to apply batch changes the two disconnected recordsets have to be >> resynchronized after updates). >> >> etc. >> >> Here is how "automagically" generated by ADODB batch update looks in the >> case of MS SQL backend (Info obtained from MS SQL profiler, line breaks >> are >> inserted manually to make it readable): >> >> exec sp_executesql >> >> N'UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE >> "CategoryID"=@P4 >> AND "CategoryName"=@P5; >> >> DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND >> "CategoryName"=@P7; >> >> UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE >> "CategoryID"=@P11 AND "CategoryName"=@P12; >> >> INSERT INTO "Northwind".."Categories" >> ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', >> >> N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 >> nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 >> nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', >> >> 99, N'CatName', N'Updated category description', >> 99, N'CatName', >> 66, N'DelCatName', >> 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', >> 662, N'newCatName', N'new Cat description' >> >> Live connection to the back-end is needed only on opening of the source >> recordsets and on applying batch changes. Therefore connections can be >> pooled/should be possible to pool (I didn't experiment here) and to share >> them between several (many) front-end applications/clients if these >> connections are opened using ActiveX DCOM servers running on server >> PCs/.NET >> Remoting(?) objects. As well as actual disconnected recordset creation >> and >> reconnection and backend update can be executed on (Web) server side - >> depending on whatever is used on backend.... >> >> Yes, I know dynamic SPs accessing database tables directly do not look >> nice >> but there could be many ways to make it working differently using >> predefined >> stored procedures (e.g. by serializing ADODB recordset into XML file(s) >> where all the updates (inserts, deletes, updates) are coded special >> easily >> parsed way and then reformat these XML files into the calls to the >> predefined stored procedures etc.etc. >> >> Here is how it looks this saved XML(no direct correspondence with >> presented >> above batch T-SQL update) : >> >> - > xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" >> xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> >> - >> - >> - > rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryID"> >> > rs:fixedlength="true" rs:maybenull="false" /> >> >> - > rs:writeunknown="true" >> rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryName"> >> >> >> - > rs:writeunknown="true" rs:basecatalog="Northwind" >> rs:basetable="Categories1" >> rs:basecolumn="Description"> >> >> >> >> >> >> - >> >> >> >> > Description="Cheeses" >> /> >> >> >> >> >> - >> - >> >> >> >> >> - >> - >> >> >> >> >> > /> >> - >> > /> >> >> - >> >> >> >> >> >> I do not post code here now because I wanted to experiment more and >> because >> it would be useful if somebody else tries to repeat the "trick" described >> above - if it will work for them then a whole set of new opportunities to >> use MS Access as a real development tool will be opened.... >> >> I will post code after additional tests within one-two weeks when it will >> become clear that it works. >> >> Please post any links here if you think that my posted information looks >> like "wheel reinvention" or you think it doesn't have practical >> application >> because of this or that several limitations etc.etc. >> >> Thank you. >> >> Shamil >> >> P.S. I have installed on my PC: >> >> - MS Windows 2003 Server SP1 >> - MS Office 2003/MS Access 2003 SP1 >> - MS SQL 2000 SP3a >> - MDAC 2.8 >> - NET Framework 1.1 and 2.0 >> - Visual Studio 2003 and 2005 >> - I have also MS SQL Server 2005 Express edition but I didn't experiment >> with it >> >> P. P.S. Yes, I didn't talk about identity(autonumber) fields - I >> generally >> use GUIDs for PKs. >> To properly manage numeric identity values some more tricks are needed - >> I'd >> be grateful if somebody post information on this subject >> (updategram/diffgram XML is a direct solution here probably - and >> serialized/saved ADODB batch update can be converted into diffgrams by >> using >> XSLT or VB(A) or VB.NET/C#/C++ code etc.) >> > > <<< tail skipped >>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Mon Mar 13 08:05:33 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Mon, 13 Mar 2006 15:05:33 +0100 Subject: [AccessD] OpenSchema syntax Message-ID: Hi Susan But that _is_ for a specific table: Shippers. In general: Public Sub GetTablesFields() Dim cnn As ADODB.Connection Dim rstTbl As ADODB.Recordset Dim rstCol As ADODB.Recordset Set cnn = CurrentProject.Connection Set rstTbl = cnn.OpenSchema(adSchemaTables, Array(Empty, Empty, Empty, "Table")) ' List tables. With rstTbl Do While Not .EOF = True Debug.Print .Fields(2).Value Set rstCol = cnn.OpenSchema(adSchemaColumns, Array(Empty, Empty, CStr(.Fields(2).Value))) ' List fields of table. With rstCol Do While Not .EOF = True Debug.Print vbTab & .Fields(3).Value .MoveNext Loop .Close End With .MoveNext Loop .Close End With If rstCol.State = adStateOpen Then rstCol.Close End If If rstTbl.State = adStateOpen Then rstTbl.Close End If If cnn.State = adStateOpen Then cnn.Close End If Set rstCol = Nothing Set rstTbl = Nothing Set cnn = Nothing End Sub /gustav >>> harkinsss at bellsouth.net 13-03-2006 02:26 >>> Set rst = CurrentProject.Connection.OpenSchema(adSchemaColumns, Array(Empty, Empty, Empty, "Shippers")) I can't remember the exact syntax for filtering a schema recordset to a specific table -- anyone remember which array element I'm supposed to use. I've moved the table name around, but I either get an error or an empty recordset. Susan H. From shamil at users.mns.ru Mon Mar 13 08:59:45 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Mon, 13 Mar 2006 17:59:45 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <005701c646a4$c0743560$647aa8c0@ColbyM6805> Message-ID: <001901c646ae$ca85ad90$6501a8c0@Nant> > Given the size of the issue there, they > would be a perfect test site for this. OK, I will publish the code and the crash test tomorrow and then it can be reused I think for your real application. Best regards, Shamil -- Web: http://smsconsulting.spb.ru/shamil_s ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 13, 2006 4:48 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > >Please do not spend a lot of time on it now or at least do not plan to > broadly use it > > I have one specific place that I want to use this, the form that is > causing > locking issues at Invo Health Care. Given the size of the issue there, > they > would be a perfect test site for this. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Monday, March 13, 2006 3:20 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > >> Does RecordsetClone become invalid? > No, it doesn't, John. > But it has another name. > Similar method for ADODB recordsets is called Clone. > >> I am looking at this now. > Please do not spend a lot of time on it now or at least do not plan to > broadly use it in your development until it's very well tested and its > limitations are clearly defined - there are rumors this feature introduce > instability in MS Access work. I have doubts in that because I haven't > seen > any time MS Access crashes when bound to disconnected ADODB recordsets the > way I described. > > On the other hand I did do "fight" in my work in the past with MS Access > GPFs, when listboxes/comboboxes were bound to ADODB recordsets but as far > as > I have found this wasn't the problem with ADODB recordsets but the problem > that in that case late bound DAO or ADODB recordets were used and these > latter were opened in library mdb and there was a bug when DAO recordsets > were used for ADP's forms and that was the cause of the floating GPF > trouble > or something like that. WIth this problem fixed the applications work now > well for more than a year. > > Shamil > > ----- Original Message ----- > From: "John Colby" > To: "'Access Developers discussion and problem solving'" > > Sent: Monday, March 13, 2006 8:15 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> I am looking at this now. Do you know if binding to an ADO recordset >> changes >> the data type of the RecordsetClone. I was under the impression that >> RecordsetClone was always a DAO recordset. Does RecordsetClone become >> invalid? I use RecordsetClone to perform many different operations, >> including syncing the form to a combo and VV. >> >> >> John W. Colby >> www.ColbyConsulting.com >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >> Salakhetdinov >> Sent: Saturday, March 11, 2006 7:12 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> Dan, >> >> Yes, I have seen that - in fact I did do google before I started my >> experimenting. >> In KB281998 "How to bind Microsoft Access forms to ADO recordsets" >> http://support.microsoft.com/kb/281998 they talk AFAIS about binding to >> connected ADODB recordsets. >> >> The original question (as I got it) was hwo to bind to disconnected ADODB >> recordsets and then implied question is: is there a simple and generic >> way >> to translate/transfer changes from disconnected recordset to the >> backend... >> >> As it happens there is a trick to do that described in my previous >> posting. >> >> I did do google now additionally and I did find that the similar trick is >> described already several years ago. They do it a little bit differently >> but >> the principle is the same - they write: >> >> <<< >> Now, the clever tricks: >> >> 1. Open a static, optimistic batch recordset, disconnect it, save it to >> a >> simple in-memory stream object, set the stream position to zero so it can >> be >> read from the beginning, and open a new copy of the recordset from the >> stream. Now, bind one copy to the form, and start working. When you're >> ready to do a batch update, first compare the 2 recordsets for changes, >> and >> apply any adds, changes, and deletes to the unbound recordset, then run >> BatchUpdate from the unbound recordset. Note that Access sets values of >> IDENTITY columns to zero, so that's an easy way to filter for added >> records. >> ... >>>>> >> >> This excerpt is from this posting (watch line wraps!): >> >> <<< >> ADP: A2K vs 2002? >> From: Steve Jorgensen >> Date: Sun, Jul 21 2002 7:29 pm >> >> > http://groups.google.com/group/comp.databases.ms-access/browse_frm/thread/17 >> > 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/grou >> > ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3Dima >> > ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3Den#f2 >> 0d79536029060e >>>>> >> >> And here is another related information: >> >> <<< >> From: Steve Jorgensen >> Date: Thurs, Nov 28 2002 11:45 pm >> >> > http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071f8c9 >> > ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UTF-8& >> oe=UTF-8&rnum=2 >>>>> >> >> So they approve that my trick is legal and is a kind of "wheel >> reinwention" >> - the difference of my "wheel" is that I do trasnslate changes to the >> second >> disconected recordset when form events fire - the disadvantage of my >> method >> is that it needs more tricky coding, which still needs to be well tested, >> the advantage - is that as soons as the changes on the current row are >> done >> I can serialize second disconnected recordset to xml file and in the case >> of >> client app's failure batch changes will not be lost etc. >> >> Strange that such a valuable information first time published in summer >> 2002 >> about using ADODB disconnected recordsets is so rarely discussed on >> Internet >> - everybody in this World is abandoning "MS Access toy" and switiching to >> .NET development? >> >> But this feature properly applied makes MS Access FEs good candidates to >> be >> used as true FEs - without any significant performance/locking hits on >> BEs > >> I >> mean.... >> >> Shamil >> >> ----- Original Message ----- >> From: "Dan Waters" >> To: "'Access Developers discussion and problem solving'" >> >> Sent: Sunday, March 12, 2006 2:27 AM >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> >>> Shamil, >>> >>> I've been reading you post with interest. Have you looked at MS KB >>> 281998? >>> This gives a method for an Access form to connect to SQL Server, Jet, >>> and >>> Oracle BE's and be updateable. They identify a specific provider to do >>> this >>> that can be used to set up bound forms. >>> >>> The provider is: "Microsoft.Access.OLEDB.10.0" >>> >>> I have not tried this, but thought you might be interested. >>> >>> Dan Waters >>> >>> >>> -----Original Message----- >>> From: accessd-bounces at databaseadvisors.com >>> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >>> Salakhetdinov >>> Sent: Saturday, March 11, 2006 5:04 PM >>> To: Access Developers discussion and problem solving >>> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >>> >>> John at all, >>> >>> I did make some more experimenting and it happens that MS Access 2003 >>> (and >>> probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with >>> disconnected updatable ADODB recordsets with both MS Access and MS SQL >>> backends. >>> >>> I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access >>> backend >>> and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. >>> >>> Some more testing/experimenting is needed but I did do quite some tests >>> and >>> they worked OK. >>> >>> As I wrote already this feature is new for me and a (big) surprise - >>> this >>> is >>> a functionality I have been waiting for 8+ years since 1997 when we made >>> here a custom framework to work with MS Access and MS SQL in >>> disconnected >>> mode, but it was rather heavyweight and because of the bugs in MS Access >>> I >>> decided to not make it broadly available.... >>> >>> Basically this means that MS Access forms can be used in bound mode with >>> very low performance hit to the MS Access and MS SQL backends - the same >>> way >>> ADODB disconnected recordsets are used in n-tier applications. >>> >>> The programming of form's events processing is relatively simple and it >>> should be possible to generalize it to make a simple lightweight >>> framework >>> in case back-end database(s) follow systematic naming conventions and >>> database models design principles. >>> >>> The "trick" is to open two ADODB recordsets: >>> >>> - one with batch update enabled >>> - second without batch update >>> >>> and make them disconnected. >>> >>> Then bind MS Access form to the second recordset (without batch update >>> enabled). >>> >>> (I did experiemnet with recordsets having several source rows as a >>> generic >>> case to see are there any chances to use MS Access subforms in bound >>> editable mode with disconnected ADODB recordsets) >>> >>> When MS Access form fires insert, update, delete events all the changes >>> can >>> be easily translated from the second recordset (where these changes are >>> made >>> "automagically" because MS Access form is bound to it) to the first >>> recordset. >>> >>> On form close(or using special button) first recordset can be >>> reconnected >>> to >>> the backend and batch update applied. (Of course in the case of special >>> button to apply batch changes the two disconnected recordsets have to be >>> resynchronized after updates). >>> >>> etc. >>> >>> Here is how "automagically" generated by ADODB batch update looks in the >>> case of MS SQL backend (Info obtained from MS SQL profiler, line breaks >>> are >>> inserted manually to make it readable): >>> >>> exec sp_executesql >>> >>> N'UPDATE "Northwind".."Categories" SET >>> "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE >>> "CategoryID"=@P4 >>> AND "CategoryName"=@P5; >>> >>> DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND >>> "CategoryName"=@P7; >>> >>> UPDATE "Northwind".."Categories" SET >>> "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE >>> "CategoryID"=@P11 AND "CategoryName"=@P12; >>> >>> INSERT INTO "Northwind".."Categories" >>> ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', >>> >>> N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 >>> int, at P7 >>> nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 >>> nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', >>> >>> 99, N'CatName', N'Updated category description', >>> 99, N'CatName', >>> 66, N'DelCatName', >>> 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', >>> 662, N'newCatName', N'new Cat description' >>> >>> Live connection to the back-end is needed only on opening of the source >>> recordsets and on applying batch changes. Therefore connections can be >>> pooled/should be possible to pool (I didn't experiment here) and to >>> share >>> them between several (many) front-end applications/clients if these >>> connections are opened using ActiveX DCOM servers running on server >>> PCs/.NET >>> Remoting(?) objects. As well as actual disconnected recordset creation >>> and >>> reconnection and backend update can be executed on (Web) server side - >>> depending on whatever is used on backend.... >>> >>> Yes, I know dynamic SPs accessing database tables directly do not look >>> nice >>> but there could be many ways to make it working differently using >>> predefined >>> stored procedures (e.g. by serializing ADODB recordset into XML file(s) >>> where all the updates (inserts, deletes, updates) are coded special >>> easily >>> parsed way and then reformat these XML files into the calls to the >>> predefined stored procedures etc.etc. >>> >>> Here is how it looks this saved XML(no direct correspondence with >>> presented >>> above batch T-SQL update) : >>> >>> - >> xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" >>> xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> >>> - >>> - >>> - >> rs:writeunknown="true" >>> rs:basecatalog="Northwind" rs:basetable="Categories1" >>> rs:basecolumn="CategoryID"> >>> >> rs:fixedlength="true" rs:maybenull="false" /> >>> >>> - >> rs:writeunknown="true" >>> rs:basecatalog="Northwind" rs:basetable="Categories1" >>> rs:basecolumn="CategoryName"> >>> >>> >>> - >> rs:writeunknown="true" rs:basecatalog="Northwind" >>> rs:basetable="Categories1" >>> rs:basecolumn="Description"> >>> >> /> >>> >>> >>> >>> >>> - >>> >>> >>> >>> >> Description="Cheeses" >>> /> >>> >> Description="Breads, >>> crackers, pasta, and cereal" /> >>> >>> >>> >>> - >>> - >>> >>> >>> >>> >>> - >>> - >>> >>> >>> >>> >>> >> Description="Inserted2" >>> /> >>> - >>> >> /> >>> >>> - >>> >>> >>> >>> >>> >>> I do not post code here now because I wanted to experiment more and >>> because >>> it would be useful if somebody else tries to repeat the "trick" >>> described >>> above - if it will work for them then a whole set of new opportunities >>> to >>> use MS Access as a real development tool will be opened.... >>> >>> I will post code after additional tests within one-two weeks when it >>> will >>> become clear that it works. >>> >>> Please post any links here if you think that my posted information looks >>> like "wheel reinvention" or you think it doesn't have practical >>> application >>> because of this or that several limitations etc.etc. >>> >>> Thank you. >>> >>> Shamil >>> >>> P.S. I have installed on my PC: >>> >>> - MS Windows 2003 Server SP1 >>> - MS Office 2003/MS Access 2003 SP1 >>> - MS SQL 2000 SP3a >>> - MDAC 2.8 >>> - NET Framework 1.1 and 2.0 >>> - Visual Studio 2003 and 2005 >>> - I have also MS SQL Server 2005 Express edition but I didn't experiment >>> with it >>> >>> P. P.S. Yes, I didn't talk about identity(autonumber) fields - I >>> generally >>> use GUIDs for PKs. >>> To properly manage numeric identity values some more tricks are needed - >>> I'd >>> be grateful if somebody post information on this subject >>> (updategram/diffgram XML is a direct solution here probably - and >>> serialized/saved ADODB batch update can be converted into diffgrams by >>> using >>> XSLT or VB(A) or VB.NET/C#/C++ code etc.) >>> >> >> <<< tail skipped >>> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From harkinsss at bellsouth.net Mon Mar 13 09:02:53 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Mon, 13 Mar 2006 10:02:53 -0500 Subject: [AccessD] OpenSchema syntax In-Reply-To: <000301c6463d$2d373520$c2b3d6d1@SUSANONE> Message-ID: <000901c646af$385f2b20$c2b3d6d1@SUSANONE> Nevermind -- it never fails that I get it right the very next time after asking for help. Array(Empty, Empty, "Shippers", Empty )) Susan H. Set rst = CurrentProject.Connection.OpenSchema(adSchemaColumns, Array(Empty, Empty, Empty, "Shippers")) I can't remember the exact syntax for filtering a schema recordset to a specific table -- anyone remember which array element I'm supposed to use. I've moved the table name around, but I either get an error or an empty recordset. Susan H. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- No virus found in this incoming message. Checked by AVG Free Edition. Version: 7.1.375 / Virus Database: 268.2.1/279 - Release Date: 3/10/2006 From shamil at users.mns.ru Mon Mar 13 08:54:54 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Mon, 13 Mar 2006 17:54:54 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <005601c6469b$ad1ef440$647aa8c0@ColbyM6805> Message-ID: <001201c646ae$2d82abb0$6501a8c0@Nant> > Perhaps it is time for other influentials (you and I and this list) to > revisit this feature and see if it can be used now? Yes, John, we may try to do that together with AccessD group. But we may get stack trying to find how to use it without MS Access crashing. Please take that into account before proceeding with this risky (ad)venture - I do have a simple crash test here already based on Northwind sample and MS SQL database. And it does do crash MS Access 2003 well when working with MS SQL backends. And I do think I know why. And for this problem there seems exisiting a simple workaround. But I have to test it more. And it seems to always work well for MS Access 2003 backend. Yes, I see I use "seems" to often - I'm still unsure it will work stable. And of course some things have to be programemd differently - e.g. Pivot forms do not work at all, or using built-in delete have to be worked around differently than it's usually done with bound forms. Reports work only with ADPs - the trick is to use empty disconnected ADPs.... It does crash when MS SQL 2000 is a back-end and THIS IS IMPORTANT - when VBA code is used to assign controls' values - this is exactly what Steve experienced. But there exists a simple workaround as far as I noted above. I did try the crash test with empty ADP FE as well - the same effect: it works well with MDB backends and crashes with MS SQL 2000 backends when setting control values in code without workaround.... Today is Monday, the 13th, I don't know how there on the West but here in Russia, Monday, the 13th is considered as not good day to work - maybe Access crashes because of that :) I will publish the crash test and teh code tomorrow. I have to do some real life work today. Everybody interested to find workarounds for other problems to come are very welcome! Please make back-ups of your Northwind MS SQL 2000 sample database... Maybe we together can talk directly to MS Access Team (http://blogs.msdn.com/access/) to force them to make this feature working stable without any workarounds at least in MS Access 12? Probabilty is low but it's worth trying I think? Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 13, 2006 3:43 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > What I am asking though is whether RecordsetClone still exists, and is > somehow populated from whatever data source the form is bound to? After > binding to an ADO recordset, attempts to access RecordsetClone throw an > error "Type mismatch" on the line of code > > Set mrst = mfrm.RecordsetClone > > Mrst is defined in the class header as a DAO recordset. > > I might be able to get away with generalizing mrst to an object. > > NOTE: I tried that, and while the "Set" now works, the objects have > different methods so any code using the object has to have different code > paths written. So apparently RecordsetClone is indeed initialized as an > ADO > recordset which makes all of my DAO specific code (FindFirst for example) > throw a runtime error if encountered. If I am going to do this, I will > need > to branch my code based on the Access Version as well as whether I > actually > used the ADO recordset code. > >>Please do not spend a lot of time on it now or at least do not plan to > broadly use it in your development until > > Luckily, in my framework, I can turn on and off capabilities by examining > SysVars. It does sound like the instability objections were from an early > adopter. Like most things in Software, trying to use any specific feature > in Access in the early stages of its introduction can be risky. It is > possible (and hopefully true) that they found and fixed the bugs causing > such instability. One of the problems with influential early adopters is > that people read their warnings and never use a feature because they > reported it unstable. If they never go back to revisit it, then it is > forever labeled unstable. > > Perhaps it is time for other influentials (you and I and this list) to > revisit this feature and see if it can be used now? > > John W. Colby > www.ColbyConsulting.com > <<< tail skipped >>> From harkinsss at bellsouth.net Mon Mar 13 09:24:03 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Mon, 13 Mar 2006 10:24:03 -0500 Subject: [AccessD] Discovering Access version at runtime - wasAccessXP forms bound to ADO recordsets In-Reply-To: <004b01c64659$6e9a56c0$647aa8c0@ColbyM6805> Message-ID: <001501c646b2$2a281230$c2b3d6d1@SUSANONE> John, I don't think there's any feature that will do this automatically. I'm wondering if you couldn't use different code libraries and just install the most appropriate one for the version? Susan H. >Conditional compilation doesn't quite seem to meet the task Boy if ONLY!!! There should be something that can be used with conditional compilation. From developer at ultradnt.com Mon Mar 13 09:36:13 2006 From: developer at ultradnt.com (Steve Conklin) Date: Mon, 13 Mar 2006 10:36:13 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <001901c646ae$ca85ad90$6501a8c0@Nant> Message-ID: <200603131535.k2DFZpu46826@ultradnt.com> I have been following this thread with great interest. When faced with this issue, I have gone completely the opposite direction - that is not bleeding edge but back to Access basics. This was in an Access FE, MSSQL BE. Doing unbound in a "header" record (invoice, for instance) is pretty straightforward, especially when starting with a bound form and then deleting the record source property, so all controls have the same name as fields. The details in the subform (invoice line-items) are another matter. After several failed attempts at a disconnected ADO recordset, I thought about arrays, dictionaries, collections, converting somehow ADO to DOA at runtime, but finally came back to Access iteslf - I had the best device ever created for holding columns and rows of data: Access' own Tables! They provide nearly code-free storage, easy creation of new rows, are easily displayed in bound sub forms, etc. I appended all the tbl_invoice_details to tbl_invoice_details_local - which has the exact same structure, except that the pk-autonumber field in the local is neither. It is a long with a default of 0 (indicates new when writing back). Also added a y/n field to indicate "deleted" (sub form filters for deleted=0). This is decidedly low-tech as compared to serializing XML streams and such, and also requires home-grown locking (I added a bit field to invoice to indicate "in use"), but it does work by virtue of staying in Access sweet-spot rather than venturing in to uncharted waters. Steve -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Monday, March 13, 2006 10:00 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Given the size of the issue there, they would be a perfect test site > for this. OK, I will publish the code and the crash test tomorrow and then it can be reused I think for your real application. Best regards, Shamil -- Web: http://smsconsulting.spb.ru/shamil_s ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 13, 2006 4:48 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > >Please do not spend a lot of time on it now or at least do not plan to > broadly use it > > I have one specific place that I want to use this, the form that is > causing > locking issues at Invo Health Care. Given the size of the issue there, > they > would be a perfect test site for this. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Monday, March 13, 2006 3:20 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > >> Does RecordsetClone become invalid? > No, it doesn't, John. > But it has another name. > Similar method for ADODB recordsets is called Clone. > >> I am looking at this now. > Please do not spend a lot of time on it now or at least do not plan to > broadly use it in your development until it's very well tested and its > limitations are clearly defined - there are rumors this feature introduce > instability in MS Access work. I have doubts in that because I haven't > seen > any time MS Access crashes when bound to disconnected ADODB recordsets the > way I described. > > On the other hand I did do "fight" in my work in the past with MS Access > GPFs, when listboxes/comboboxes were bound to ADODB recordsets but as far > as > I have found this wasn't the problem with ADODB recordsets but the problem > that in that case late bound DAO or ADODB recordets were used and these > latter were opened in library mdb and there was a bug when DAO recordsets > were used for ADP's forms and that was the cause of the floating GPF > trouble > or something like that. WIth this problem fixed the applications work now > well for more than a year. > > Shamil > > ----- Original Message ----- > From: "John Colby" > To: "'Access Developers discussion and problem solving'" > > Sent: Monday, March 13, 2006 8:15 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> I am looking at this now. Do you know if binding to an ADO recordset >> changes >> the data type of the RecordsetClone. I was under the impression that >> RecordsetClone was always a DAO recordset. Does RecordsetClone become >> invalid? I use RecordsetClone to perform many different operations, >> including syncing the form to a combo and VV. >> >> >> John W. Colby >> www.ColbyConsulting.com >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >> Salakhetdinov >> Sent: Saturday, March 11, 2006 7:12 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> Dan, >> >> Yes, I have seen that - in fact I did do google before I started my >> experimenting. >> In KB281998 "How to bind Microsoft Access forms to ADO recordsets" >> http://support.microsoft.com/kb/281998 they talk AFAIS about binding to >> connected ADODB recordsets. >> >> The original question (as I got it) was hwo to bind to disconnected ADODB >> recordsets and then implied question is: is there a simple and generic >> way >> to translate/transfer changes from disconnected recordset to the >> backend... >> >> As it happens there is a trick to do that described in my previous >> posting. >> >> I did do google now additionally and I did find that the similar trick is >> described already several years ago. They do it a little bit differently >> but >> the principle is the same - they write: >> >> <<< >> Now, the clever tricks: >> >> 1. Open a static, optimistic batch recordset, disconnect it, save it to >> a >> simple in-memory stream object, set the stream position to zero so it can >> be >> read from the beginning, and open a new copy of the recordset from the >> stream. Now, bind one copy to the form, and start working. When you're >> ready to do a batch update, first compare the 2 recordsets for changes, >> and >> apply any adds, changes, and deletes to the unbound recordset, then run >> BatchUpdate from the unbound recordset. Note that Access sets values of >> IDENTITY columns to zero, so that's an easy way to filter for added >> records. >> ... >>>>> >> >> This excerpt is from this posting (watch line wraps!): >> >> <<< >> ADP: A2K vs 2002? >> From: Steve Jorgensen >> Date: Sun, Jul 21 2002 7:29 pm >> >> > http://groups.google.com/group/comp.databases.ms-access/browse_frm/thread/17 >> > 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/grou >> > ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3Dima >> > ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3Den#f2 >> 0d79536029060e >>>>> >> >> And here is another related information: >> >> <<< >> From: Steve Jorgensen >> Date: Thurs, Nov 28 2002 11:45 pm >> >> > http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071f8c9 >> > ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UTF-8& >> oe=UTF-8&rnum=2 >>>>> >> >> So they approve that my trick is legal and is a kind of "wheel >> reinwention" >> - the difference of my "wheel" is that I do trasnslate changes to the >> second >> disconected recordset when form events fire - the disadvantage of my >> method >> is that it needs more tricky coding, which still needs to be well tested, >> the advantage - is that as soons as the changes on the current row are >> done >> I can serialize second disconnected recordset to xml file and in the case >> of >> client app's failure batch changes will not be lost etc. >> >> Strange that such a valuable information first time published in summer >> 2002 >> about using ADODB disconnected recordsets is so rarely discussed on >> Internet >> - everybody in this World is abandoning "MS Access toy" and switiching to >> .NET development? >> >> But this feature properly applied makes MS Access FEs good candidates to >> be >> used as true FEs - without any significant performance/locking hits on >> BEs > >> I >> mean.... >> >> Shamil >> >> ----- Original Message ----- >> From: "Dan Waters" >> To: "'Access Developers discussion and problem solving'" >> >> Sent: Sunday, March 12, 2006 2:27 AM >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> >>> Shamil, >>> >>> I've been reading you post with interest. Have you looked at MS KB >>> 281998? >>> This gives a method for an Access form to connect to SQL Server, Jet, >>> and >>> Oracle BE's and be updateable. They identify a specific provider to do >>> this >>> that can be used to set up bound forms. >>> >>> The provider is: "Microsoft.Access.OLEDB.10.0" >>> >>> I have not tried this, but thought you might be interested. >>> >>> Dan Waters >>> >>> >>> -----Original Message----- >>> From: accessd-bounces at databaseadvisors.com >>> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >>> Salakhetdinov >>> Sent: Saturday, March 11, 2006 5:04 PM >>> To: Access Developers discussion and problem solving >>> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >>> >>> John at all, >>> >>> I did make some more experimenting and it happens that MS Access 2003 >>> (and >>> probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with >>> disconnected updatable ADODB recordsets with both MS Access and MS SQL >>> backends. >>> >>> I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access >>> backend >>> and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. >>> >>> Some more testing/experimenting is needed but I did do quite some tests >>> and >>> they worked OK. >>> >>> As I wrote already this feature is new for me and a (big) surprise - >>> this >>> is >>> a functionality I have been waiting for 8+ years since 1997 when we made >>> here a custom framework to work with MS Access and MS SQL in >>> disconnected >>> mode, but it was rather heavyweight and because of the bugs in MS Access >>> I >>> decided to not make it broadly available.... >>> >>> Basically this means that MS Access forms can be used in bound mode with >>> very low performance hit to the MS Access and MS SQL backends - the same >>> way >>> ADODB disconnected recordsets are used in n-tier applications. >>> >>> The programming of form's events processing is relatively simple and it >>> should be possible to generalize it to make a simple lightweight >>> framework >>> in case back-end database(s) follow systematic naming conventions and >>> database models design principles. >>> >>> The "trick" is to open two ADODB recordsets: >>> >>> - one with batch update enabled >>> - second without batch update >>> >>> and make them disconnected. >>> >>> Then bind MS Access form to the second recordset (without batch update >>> enabled). >>> >>> (I did experiemnet with recordsets having several source rows as a >>> generic >>> case to see are there any chances to use MS Access subforms in bound >>> editable mode with disconnected ADODB recordsets) >>> >>> When MS Access form fires insert, update, delete events all the changes >>> can >>> be easily translated from the second recordset (where these changes are >>> made >>> "automagically" because MS Access form is bound to it) to the first >>> recordset. >>> >>> On form close(or using special button) first recordset can be >>> reconnected >>> to >>> the backend and batch update applied. (Of course in the case of special >>> button to apply batch changes the two disconnected recordsets have to be >>> resynchronized after updates). >>> >>> etc. >>> >>> Here is how "automagically" generated by ADODB batch update looks in the >>> case of MS SQL backend (Info obtained from MS SQL profiler, line breaks >>> are >>> inserted manually to make it readable): >>> >>> exec sp_executesql >>> >>> N'UPDATE "Northwind".."Categories" SET >>> "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE >>> "CategoryID"=@P4 >>> AND "CategoryName"=@P5; >>> >>> DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND >>> "CategoryName"=@P7; >>> >>> UPDATE "Northwind".."Categories" SET >>> "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE >>> "CategoryID"=@P11 AND "CategoryName"=@P12; >>> >>> INSERT INTO "Northwind".."Categories" >>> ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', >>> >>> N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 >>> int, at P7 >>> nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 >>> nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', >>> >>> 99, N'CatName', N'Updated category description', >>> 99, N'CatName', >>> 66, N'DelCatName', >>> 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', >>> 662, N'newCatName', N'new Cat description' >>> >>> Live connection to the back-end is needed only on opening of the source >>> recordsets and on applying batch changes. Therefore connections can be >>> pooled/should be possible to pool (I didn't experiment here) and to >>> share >>> them between several (many) front-end applications/clients if these >>> connections are opened using ActiveX DCOM servers running on server >>> PCs/.NET >>> Remoting(?) objects. As well as actual disconnected recordset creation >>> and >>> reconnection and backend update can be executed on (Web) server side - >>> depending on whatever is used on backend.... >>> >>> Yes, I know dynamic SPs accessing database tables directly do not look >>> nice >>> but there could be many ways to make it working differently using >>> predefined >>> stored procedures (e.g. by serializing ADODB recordset into XML file(s) >>> where all the updates (inserts, deletes, updates) are coded special >>> easily >>> parsed way and then reformat these XML files into the calls to the >>> predefined stored procedures etc.etc. >>> >>> Here is how it looks this saved XML(no direct correspondence with >>> presented >>> above batch T-SQL update) : >>> >>> - >> xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" >>> xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> >>> - >>> - >>> - >> rs:writeunknown="true" >>> rs:basecatalog="Northwind" rs:basetable="Categories1" >>> rs:basecolumn="CategoryID"> >>> >> rs:fixedlength="true" rs:maybenull="false" /> >>> >>> - >> rs:writeunknown="true" >>> rs:basecatalog="Northwind" rs:basetable="Categories1" >>> rs:basecolumn="CategoryName"> >>> >>> >>> - >> rs:writeunknown="true" rs:basecatalog="Northwind" >>> rs:basetable="Categories1" >>> rs:basecolumn="Description"> >>> >> /> >>> >>> >>> >>> >>> - >>> >>> >>> >>> >> Description="Cheeses" >>> /> >>> >> Description="Breads, >>> crackers, pasta, and cereal" /> >>> >>> >>> >>> - >>> - >>> >>> >>> >>> >>> - >>> - >>> >>> >>> >>> >>> >> Description="Inserted2" >>> /> >>> - >>> >> /> >>> >>> - >>> >>> >>> >>> >>> >>> I do not post code here now because I wanted to experiment more and >>> because >>> it would be useful if somebody else tries to repeat the "trick" >>> described >>> above - if it will work for them then a whole set of new opportunities >>> to >>> use MS Access as a real development tool will be opened.... >>> >>> I will post code after additional tests within one-two weeks when it >>> will >>> become clear that it works. >>> >>> Please post any links here if you think that my posted information looks >>> like "wheel reinvention" or you think it doesn't have practical >>> application >>> because of this or that several limitations etc.etc. >>> >>> Thank you. >>> >>> Shamil >>> >>> P.S. I have installed on my PC: >>> >>> - MS Windows 2003 Server SP1 >>> - MS Office 2003/MS Access 2003 SP1 >>> - MS SQL 2000 SP3a >>> - MDAC 2.8 >>> - NET Framework 1.1 and 2.0 >>> - Visual Studio 2003 and 2005 >>> - I have also MS SQL Server 2005 Express edition but I didn't experiment >>> with it >>> >>> P. P.S. Yes, I didn't talk about identity(autonumber) fields - I >>> generally >>> use GUIDs for PKs. >>> To properly manage numeric identity values some more tricks are needed - >>> I'd >>> be grateful if somebody post information on this subject >>> (updategram/diffgram XML is a direct solution here probably - and >>> serialized/saved ADODB batch update can be converted into diffgrams by >>> using >>> XSLT or VB(A) or VB.NET/C#/C++ code etc.) >>> >> >> <<< tail skipped >>> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Lambert.Heenan at AIG.com Mon Mar 13 09:57:23 2006 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Mon, 13 Mar 2006 09:57:23 -0600 Subject: [AccessD] Discovering Access version at runtime - was Access XP forms bound to ADO recordsets Message-ID: <1D7828CDB8350747AFE9D69E0E90DA1F1E888E83@xlivmbx21.aig.com> "Public compiler constants can only be created in the user interface. I wonder what that means?" If you declare a compiler consent in a module like this #Const Foo = 1 Then "Foo" is only visible in the module it is declared in. If you need a conditional compiler constant that is globally visible in all modules, then you need to declare it though the menus (that's what "in the user interface" means). To do so open any module and then select the application Properties option on the module Tools menu. You will see a dialog box which has a textbox labeled "Conditional Compiler Arguments" and you can enter a list of such arguments like this Foo = 1 : Bar = 2 Notice the colon is used as a delimiter. You can only declare constants with simple integer values. You can then use these compiler arguments in any code module. Here's a trivial example. Sub CheckCompilerArgs() #If Foo = 1 Then Debug.Print "Foo = 1" #End If #If Bar = 1 Then Debug.Print "Bar = 1" #End If #If Bar = 2 Then Debug.Print "Bar = 2" #End If End Sub Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Michael R Mattys Sent: Sunday, March 12, 2006 11:13 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Discovering Access version at runtime - was Access XP forms bound to ADO recordsets Conditional compilation doesn't quite seem to meet the task, but I noticed this enigmatic statement in help: "Public compiler constants can only be created in the user interface." I wonder what that means? So then, the only other alternative that comes to mind is to use mde libraries for each version and invoke one or the other based upon the value of acSysCmdAccessVer. Michael R. Mattys MapPoint Developer www.mattysconsulting.com ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Sunday, March 12, 2006 7:12 PM Subject: [AccessD] Discovering Access version at runtime - was Access XP forms bound to ADO recordsets > >and for MS Access 2000 this feature doesn't work. > > And this brings up to an important question, can a framework > dynamically configure to use code based on the version? > > I use the same framework for A2K and above. The reason I cut off at > A2K that raisevents do not work in A97 and I make some use of > RaiseEvents in the framework. Now we have code which works in AXP but > not A2K and below. So I > would like to carve this stuff out and only load it if the version being > run > under is AXP or above. A quick Google search does not come up with > anything. > > If this can be done, XP also supports form event sinks in two > different class modules without the page faults that A2K would trigger > if you tried that, so it might work well to place these event sinks > out in a completely separate class and instantiate that class only if > the version was XP or above. > > Thoughts about this? > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Friday, March 10, 2006 7:36 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > John, > > I did try ADODB disconnected recordsets with MS Access XP/2003 MDBs > and > they > seems to be working rather well. > > That is a surprise here because the book "Microsoft Access Developer's > Guide > to SQL Server", which I read before states this can't be done. But the > book > I have is for MS Access 2000/MS SQL 2000 - and for MS Access 2000 this > feature doesn't work. I don't have a new edition of the book - if it > exists > the authors may have written about this new useful feature.... > > I hope I'm not mistaken - I did recheck many times - yes, it seems to > work! > Please verify.... > > In P.S. of this message there is a sample code, which basicaly works > OK > but > which needs more investigations - it doesn't yet process all the use > cases. > This code is for [authors] table from [pubs] sample database. It can work > with both MS SQL and MS Access BEs use: > > - BindFormToSQLADORecordset - to connect to MS SQL BE and > > - BindFormToJetADORecordset to connect to MS Access BE. > > I did check with MS SQL profiler - communication with MS SQL BE is > minimal and connection is used only when database operation is in > progress - i.e. on short period of time for properly organized > communication with BE database. > > If additional investigations/testing will show that this simple method > works > for all the required use cases then that's "what doctor ordered." - I mean > you can relax and happily continue staying in your comfortable "bounders > camp" for quite some time... (Although I'd recommend to use GUIDs for PKs) > > It would be also very useful to make it working in disconnected > optimistic batch update mode but I doubt it's possible - I'd be happy > somebody will present here a sample how similar simple method can be > used in disconnected optimistic batch mode. > > Shamil > > P.S. > > 1. create new mdb > 2. connect to [authors] table from [pubs] MS SQL sample database 3. > use > make > table query to clone [dbo_authors] to local MS Access table [authors] 4. > close sample database 5. open sample database in shared mode 6. create > form > for [authors] table 7. removed form's recordsource 8. put the following > code > into form's module (edit connection strings if > needed) > 9. open form in normal view (to switch MS SQL/Jet backend > comment/uncommented the code lines in Form_Load sub) 10. Enjoy! > > Private mrst As ADODB.Recordset > Private mcnn As ADODB.Connection > > Private mcolDeletedRowsIds As New Collection > > Private Sub Form_Load() > 'BindFormToSQLADORecordset > BindFormToJetADORecordset > End Sub > > Private Sub Form_BeforeUpdate(Cancel As Integer) > UpdateBE > End Sub > > Private Sub Form_BeforeInsert(Cancel As Integer) > mrst.AddNew > End Sub > > Private Sub Form_Delete(Cancel As Integer) > If mcolDeletedRowsIds.Count = 0 Then > mcolDeletedRowsIds.Add mrst!au_id.Value > Else > mcolDeletedRowsIds.Add mrst!au_id.Value, , 1 > End If > End Sub > > Private Sub Form_Current() > Dim strSql As String > Dim i As Integer > If mcolDeletedRowsIds.Count > 0 Then > For i = mcolDeletedRowsIds.Count To 1 Step -1 > strSql = "delete from [authors] where au_id = '" & _ > mcolDeletedRowsIds.Item(i) & "'" > mcnn.Execute strSql > mcolDeletedRowsIds.Remove i > Next i > End If > End Sub > > Private Sub Form_Unload(Cancel As Integer) On Error Resume Next > mrst.Close > mcnn.Close > End Sub > > Private Sub BindFormToSQLADORecordset() > Dim strSql As String > Dim strCnn As String > Set mcnn = New ADODB.Connection > strCnn = "Provider=SQLOLEDB.1;" & _ > "Server=(local);" & _ > "Database=Pubs;" & _ > "Integrated Security = SSPI" > mcnn.Open strCnn > > strSql = "select * from [authors]" > Set mrst = New ADODB.Recordset > mrst.CursorLocation = adUseClient > > mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic > > mrst.ActiveConnection = Nothing > > Set Me.Recordset = mrst > End Sub > > Private Sub UpdateBE() > Set mrst.ActiveConnection = mcnn > mrst.UpdateBatch adAffectCurrent > Set mrst.ActiveConnection = Nothing > End Sub > > Private Sub BindFormToJetADORecordset() > Dim strSql As String > Dim strCnn As String > Set mcnn = New ADODB.Connection > strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ > "Data Source=" & CurrentDb.Name & _ > ";User Id=admin;Password=;" > mcnn.Open strCnn > > strSql = "select * from [authors]" > Set mrst = New ADODB.Recordset > mrst.CursorLocation = adUseClient > > mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic > > Set mrst.ActiveConnection = Nothing > > Set Me.Recordset = mrst > End Sub > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From rl_stewart at highstream.net Mon Mar 13 11:00:42 2006 From: rl_stewart at highstream.net (Robert L. Stewart) Date: Mon, 13 Mar 2006 12:00:42 -0500 Subject: [AccessD] A2003: Running SQL SPROCS from Access In-Reply-To: References: Message-ID: <1142269242.4415a53a92380@webmail.highstream.net> The simplest is a pass through query. exec uspProcName or exec uspProcName 'param1', 'param2' where the exec statement is the SQL in the query. Robert L. Stewart The Dyson Group International Software for the Non-profit Enterprise Expanding your Sphere of Knowledge Quoting accessd-request at databaseadvisors.com: > Date: Mon, 13 Mar 2006 13:03:57 +1100 > From: "Darren DICK" > Subject: [AccessD] A2003: Running SQL SPROCS from Access > To: "AccessD" > Message-ID: > <20060313020401.LAHV3168.omta02ps.mx.bigpond.com at DENZILLAP> > Content-Type: text/plain; charset="us-ascii" > > Cross posted to dba-SQL Server list > > Hi All > Once I have made a connection to an SQL dB > Is there a way to execute SPROCS in that dB > > Special code or special syntax etc? > > Indeed - is there even a special connection routine needed - given the latest > threads > on connecting with updatable connections (ADOB) > > Many thanks in advance > > DD From cfoust at infostatsystems.com Mon Mar 13 11:03:54 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Mon, 13 Mar 2006 09:03:54 -0800 Subject: [AccessD] Access XP forms bound to ADO recordsets Message-ID: John, RecordsetClone is DAO. With ADO, you can clone a recordset, but it is a new recordset and can't be used the way you use recordsetclone. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Monday, March 13, 2006 4:43 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access XP forms bound to ADO recordsets What I am asking though is whether RecordsetClone still exists, and is somehow populated from whatever data source the form is bound to? After binding to an ADO recordset, attempts to access RecordsetClone throw an error "Type mismatch" on the line of code Set mrst = mfrm.RecordsetClone Mrst is defined in the class header as a DAO recordset. I might be able to get away with generalizing mrst to an object. NOTE: I tried that, and while the "Set" now works, the objects have different methods so any code using the object has to have different code paths written. So apparently RecordsetClone is indeed initialized as an ADO recordset which makes all of my DAO specific code (FindFirst for example) throw a runtime error if encountered. If I am going to do this, I will need to branch my code based on the Access Version as well as whether I actually used the ADO recordset code. >Please do not spend a lot of time on it now or at least do not plan to broadly use it in your development until Luckily, in my framework, I can turn on and off capabilities by examining SysVars. It does sound like the instability objections were from an early adopter. Like most things in Software, trying to use any specific feature in Access in the early stages of its introduction can be risky. It is possible (and hopefully true) that they found and fixed the bugs causing such instability. One of the problems with influential early adopters is that people read their warnings and never use a feature because they reported it unstable. If they never go back to revisit it, then it is forever labeled unstable. Perhaps it is time for other influentials (you and I and this list) to revisit this feature and see if it can be used now? John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Monday, March 13, 2006 3:20 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Does RecordsetClone become invalid? No, it doesn't, John. But it has another name. Similar method for ADODB recordsets is called Clone. > I am looking at this now. Please do not spend a lot of time on it now or at least do not plan to broadly use it in your development until it's very well tested and its limitations are clearly defined - there are rumors this feature introduce instability in MS Access work. I have doubts in that because I haven't seen any time MS Access crashes when bound to disconnected ADODB recordsets the way I described. On the other hand I did do "fight" in my work in the past with MS Access GPFs, when listboxes/comboboxes were bound to ADODB recordsets but as far as I have found this wasn't the problem with ADODB recordsets but the problem that in that case late bound DAO or ADODB recordets were used and these latter were opened in library mdb and there was a bug when DAO recordsets were used for ADP's forms and that was the cause of the floating GPF trouble or something like that. WIth this problem fixed the applications work now well for more than a year. Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 13, 2006 8:15 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > I am looking at this now. Do you know if binding to an ADO recordset > changes > the data type of the RecordsetClone. I was under the impression that > RecordsetClone was always a DAO recordset. Does RecordsetClone become > invalid? I use RecordsetClone to perform many different operations, > including syncing the form to a combo and VV. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 7:12 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > Dan, > > Yes, I have seen that - in fact I did do google before I started my > experimenting. > In KB281998 "How to bind Microsoft Access forms to ADO recordsets" > http://support.microsoft.com/kb/281998 they talk AFAIS about binding to > connected ADODB recordsets. > > The original question (as I got it) was hwo to bind to disconnected ADODB > recordsets and then implied question is: is there a simple and generic way > to translate/transfer changes from disconnected recordset to the > backend... > > As it happens there is a trick to do that described in my previous > posting. > > I did do google now additionally and I did find that the similar trick is > described already several years ago. They do it a little bit differently > but > the principle is the same - they write: > > <<< > Now, the clever tricks: > > 1. Open a static, optimistic batch recordset, disconnect it, save it to a > simple in-memory stream object, set the stream position to zero so it can > be > read from the beginning, and open a new copy of the recordset from the > stream. Now, bind one copy to the form, and start working. When you're > ready to do a batch update, first compare the 2 recordsets for changes, > and > apply any adds, changes, and deletes to the unbound recordset, then run > BatchUpdate from the unbound recordset. Note that Access sets values of > IDENTITY columns to zero, so that's an easy way to filter for added > records. > ... >>>> > > This excerpt is from this posting (watch line wraps!): > > <<< > ADP: A2K vs 2002? > From: Steve Jorgensen > Date: Sun, Jul 21 2002 7:29 pm > > http://groups.google.com/group/comp.databases.ms-access/browse_frm/threa d/17 > 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/ grou > ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3 Dima > ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3De n#f2 > 0d79536029060e >>>> > > And here is another related information: > > <<< > From: Steve Jorgensen > Date: Thurs, Nov 28 2002 11:45 pm > > http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071 f8c9 > ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UT F-8& > oe=UTF-8&rnum=2 >>>> > > So they approve that my trick is legal and is a kind of "wheel > reinwention" > - the difference of my "wheel" is that I do trasnslate changes to the > second > disconected recordset when form events fire - the disadvantage of my > method > is that it needs more tricky coding, which still needs to be well tested, > the advantage - is that as soons as the changes on the current row are > done > I can serialize second disconnected recordset to xml file and in the case > of > client app's failure batch changes will not be lost etc. > > Strange that such a valuable information first time published in summer > 2002 > about using ADODB disconnected recordsets is so rarely discussed on > Internet > - everybody in this World is abandoning "MS Access toy" and switiching to > .NET development? > > But this feature properly applied makes MS Access FEs good candidates to > be > used as true FEs - without any significant performance/locking hits on BEs > I > mean.... > > Shamil > > ----- Original Message ----- > From: "Dan Waters" > To: "'Access Developers discussion and problem solving'" > > Sent: Sunday, March 12, 2006 2:27 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> I've been reading you post with interest. Have you looked at MS KB >> 281998? >> This gives a method for an Access form to connect to SQL Server, Jet, and >> Oracle BE's and be updateable. They identify a specific provider to do >> this >> that can be used to set up bound forms. >> >> The provider is: "Microsoft.Access.OLEDB.10.0" >> >> I have not tried this, but thought you might be interested. >> >> Dan Waters >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >> Salakhetdinov >> Sent: Saturday, March 11, 2006 5:04 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> John at all, >> >> I did make some more experimenting and it happens that MS Access 2003 >> (and >> probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with >> disconnected updatable ADODB recordsets with both MS Access and MS SQL >> backends. >> >> I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access >> backend >> and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. >> >> Some more testing/experimenting is needed but I did do quite some tests >> and >> they worked OK. >> >> As I wrote already this feature is new for me and a (big) surprise - this >> is >> a functionality I have been waiting for 8+ years since 1997 when we made >> here a custom framework to work with MS Access and MS SQL in disconnected >> mode, but it was rather heavyweight and because of the bugs in MS Access >> I >> decided to not make it broadly available.... >> >> Basically this means that MS Access forms can be used in bound mode with >> very low performance hit to the MS Access and MS SQL backends - the same >> way >> ADODB disconnected recordsets are used in n-tier applications. >> >> The programming of form's events processing is relatively simple and it >> should be possible to generalize it to make a simple lightweight >> framework >> in case back-end database(s) follow systematic naming conventions and >> database models design principles. >> >> The "trick" is to open two ADODB recordsets: >> >> - one with batch update enabled >> - second without batch update >> >> and make them disconnected. >> >> Then bind MS Access form to the second recordset (without batch update >> enabled). >> >> (I did experiemnet with recordsets having several source rows as a >> generic >> case to see are there any chances to use MS Access subforms in bound >> editable mode with disconnected ADODB recordsets) >> >> When MS Access form fires insert, update, delete events all the changes >> can >> be easily translated from the second recordset (where these changes are >> made >> "automagically" because MS Access form is bound to it) to the first >> recordset. >> >> On form close(or using special button) first recordset can be reconnected >> to >> the backend and batch update applied. (Of course in the case of special >> button to apply batch changes the two disconnected recordsets have to be >> resynchronized after updates). >> >> etc. >> >> Here is how "automagically" generated by ADODB batch update looks in the >> case of MS SQL backend (Info obtained from MS SQL profiler, line breaks >> are >> inserted manually to make it readable): >> >> exec sp_executesql >> >> N'UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE >> "CategoryID"=@P4 >> AND "CategoryName"=@P5; >> >> DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND >> "CategoryName"=@P7; >> >> UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE >> "CategoryID"=@P11 AND "CategoryName"=@P12; >> >> INSERT INTO "Northwind".."Categories" >> ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', >> >> N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 >> nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 >> nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', >> >> 99, N'CatName', N'Updated category description', >> 99, N'CatName', >> 66, N'DelCatName', >> 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', >> 662, N'newCatName', N'new Cat description' >> >> Live connection to the back-end is needed only on opening of the source >> recordsets and on applying batch changes. Therefore connections can be >> pooled/should be possible to pool (I didn't experiment here) and to share >> them between several (many) front-end applications/clients if these >> connections are opened using ActiveX DCOM servers running on server >> PCs/.NET >> Remoting(?) objects. As well as actual disconnected recordset creation >> and >> reconnection and backend update can be executed on (Web) server side - >> depending on whatever is used on backend.... >> >> Yes, I know dynamic SPs accessing database tables directly do not look >> nice >> but there could be many ways to make it working differently using >> predefined >> stored procedures (e.g. by serializing ADODB recordset into XML file(s) >> where all the updates (inserts, deletes, updates) are coded special >> easily >> parsed way and then reformat these XML files into the calls to the >> predefined stored procedures etc.etc. >> >> Here is how it looks this saved XML(no direct correspondence with >> presented >> above batch T-SQL update) : >> >> - > xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" >> xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> >> - >> - >> - > rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryID"> >> > rs:fixedlength="true" rs:maybenull="false" /> >> >> - > rs:writeunknown="true" >> rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryName"> >> >> >> - > rs:writeunknown="true" rs:basecatalog="Northwind" >> rs:basetable="Categories1" >> rs:basecolumn="Description"> >> >> >> >> >> >> - >> >> >> >> > Description="Cheeses" >> /> >> >> >> >> >> - >> - >> >> >> >> >> - >> - >> >> >> >> >> > /> >> - >> > /> >> >> - >> >> >> >> >> >> I do not post code here now because I wanted to experiment more and >> because >> it would be useful if somebody else tries to repeat the "trick" described >> above - if it will work for them then a whole set of new opportunities to >> use MS Access as a real development tool will be opened.... >> >> I will post code after additional tests within one-two weeks when it will >> become clear that it works. >> >> Please post any links here if you think that my posted information looks >> like "wheel reinvention" or you think it doesn't have practical >> application >> because of this or that several limitations etc.etc. >> >> Thank you. >> >> Shamil >> >> P.S. I have installed on my PC: >> >> - MS Windows 2003 Server SP1 >> - MS Office 2003/MS Access 2003 SP1 >> - MS SQL 2000 SP3a >> - MDAC 2.8 >> - NET Framework 1.1 and 2.0 >> - Visual Studio 2003 and 2005 >> - I have also MS SQL Server 2005 Express edition but I didn't experiment >> with it >> >> P. P.S. Yes, I didn't talk about identity(autonumber) fields - I >> generally >> use GUIDs for PKs. >> To properly manage numeric identity values some more tricks are needed - >> I'd >> be grateful if somebody post information on this subject >> (updategram/diffgram XML is a direct solution here probably - and >> serialized/saved ADODB batch update can be converted into diffgrams by >> using >> XSLT or VB(A) or VB.NET/C#/C++ code etc.) >> > > <<< tail skipped >>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Mon Mar 13 11:07:43 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Mon, 13 Mar 2006 09:07:43 -0800 Subject: [AccessD] Discovering Access version at runtime -wasAccessXPforms bound to ADO recordsets Message-ID: John, What you want is DBEngine(0)(0).Version Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Sunday, March 12, 2006 8:48 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Discovering Access version at runtime -wasAccessXPforms bound to ADO recordsets LOL, Thanks Stuart. Now if I could only find the FM. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stuart McLachlan Sent: Sunday, March 12, 2006 10:52 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Discovering Access version at runtime - wasAccessXPforms bound to ADO recordsets On 12 Mar 2006 at 22:18, John Colby wrote: > >John, you want to check the version and then load code based on the > version? > > Yes, the ACCESS version. I have found stuff about checking the > registry, but this really only addresses what is INSTALLED, not what > is currently running. > RTFM? :-) Version Returns a String indicating the version number of the currently installed copy of Microsoft Access. Read-only. expression.Version expression Required. An expression that returns one of the objects in the Applies To list. Example The following example displays the version and build number of the currently-installed copy of Microsoft Access. MsgBox "You are currently running Microsoft Access, " _ & " version " & Application.Version & ", build " _ & Application.Build & "." -- Stuart -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Mon Mar 13 11:11:26 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Mon, 13 Mar 2006 09:11:26 -0800 Subject: [AccessD] Access XP forms bound to ADO recordsets Message-ID: Shamil, I'm just dipping a toe in here quickly before I get back to work. Have you tried using an unbound form with a disconnected recordset? I swear I've done this, but I'll have to look for a demo. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Saturday, March 11, 2006 4:12 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Dan, Yes, I have seen that - in fact I did do google before I started my experimenting. In KB281998 "How to bind Microsoft Access forms to ADO recordsets" http://support.microsoft.com/kb/281998 they talk AFAIS about binding to connected ADODB recordsets. The original question (as I got it) was hwo to bind to disconnected ADODB recordsets and then implied question is: is there a simple and generic way to translate/transfer changes from disconnected recordset to the backend... As it happens there is a trick to do that described in my previous posting. I did do google now additionally and I did find that the similar trick is described already several years ago. They do it a little bit differently but the principle is the same - they write: <<< Now, the clever tricks: 1. Open a static, optimistic batch recordset, disconnect it, save it to a simple in-memory stream object, set the stream position to zero so it can be read from the beginning, and open a new copy of the recordset from the stream. Now, bind one copy to the form, and start working. When you're ready to do a batch update, first compare the 2 recordsets for changes, and apply any adds, changes, and deletes to the unbound recordset, then run BatchUpdate from the unbound recordset. Note that Access sets values of IDENTITY columns to zero, so that's an easy way to filter for added records. ... >>> This excerpt is from this posting (watch line wraps!): <<< ADP: A2K vs 2002? From: Steve Jorgensen Date: Sun, Jul 21 2002 7:29 pm http://groups.google.com/group/comp.databases.ms-access/browse_frm/threa d/1753dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&pr ev=/groups%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset% 26safe%3Dimages%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr %3D%26hl%3Den#f20d79536029060e >>> And here is another related information: <<< From: Steve Jorgensen Date: Thurs, Nov 28 2002 11:45 pm http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071 f8c9?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&i e=UTF-8&oe=UTF-8&rnum=2 >>> So they approve that my trick is legal and is a kind of "wheel reinwention" - the difference of my "wheel" is that I do trasnslate changes to the second disconected recordset when form events fire - the disadvantage of my method is that it needs more tricky coding, which still needs to be well tested, the advantage - is that as soons as the changes on the current row are done I can serialize second disconnected recordset to xml file and in the case of client app's failure batch changes will not be lost etc. Strange that such a valuable information first time published in summer 2002 about using ADODB disconnected recordsets is so rarely discussed on Internet - everybody in this World is abandoning "MS Access toy" and switiching to .NET development? But this feature properly applied makes MS Access FEs good candidates to be used as true FEs - without any significant performance/locking hits on BEs I mean.... Shamil ----- Original Message ----- From: "Dan Waters" To: "'Access Developers discussion and problem solving'" Sent: Sunday, March 12, 2006 2:27 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > I've been reading you post with interest. Have you looked at MS KB > 281998? > This gives a method for an Access form to connect to SQL Server, Jet, and > Oracle BE's and be updateable. They identify a specific provider to do > this > that can be used to set up bound forms. > > The provider is: "Microsoft.Access.OLEDB.10.0" > > I have not tried this, but thought you might be interested. > > Dan Waters > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 5:04 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > John at all, > > I did make some more experimenting and it happens that MS Access 2003 (and > probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with > disconnected updatable ADODB recordsets with both MS Access and MS SQL > backends. > > I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access backend > and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. > > Some more testing/experimenting is needed but I did do quite some tests > and > they worked OK. > > As I wrote already this feature is new for me and a (big) surprise - this > is > a functionality I have been waiting for 8+ years since 1997 when we made > here a custom framework to work with MS Access and MS SQL in disconnected > mode, but it was rather heavyweight and because of the bugs in MS Access I > decided to not make it broadly available.... > > Basically this means that MS Access forms can be used in bound mode with > very low performance hit to the MS Access and MS SQL backends - the same > way > ADODB disconnected recordsets are used in n-tier applications. > > The programming of form's events processing is relatively simple and it > should be possible to generalize it to make a simple lightweight framework > in case back-end database(s) follow systematic naming conventions and > database models design principles. > > The "trick" is to open two ADODB recordsets: > > - one with batch update enabled > - second without batch update > > and make them disconnected. > > Then bind MS Access form to the second recordset (without batch update > enabled). > > (I did experiemnet with recordsets having several source rows as a generic > case to see are there any chances to use MS Access subforms in bound > editable mode with disconnected ADODB recordsets) > > When MS Access form fires insert, update, delete events all the changes > can > be easily translated from the second recordset (where these changes are > made > "automagically" because MS Access form is bound to it) to the first > recordset. > > On form close(or using special button) first recordset can be reconnected > to > the backend and batch update applied. (Of course in the case of special > button to apply batch changes the two disconnected recordsets have to be > resynchronized after updates). > > etc. > > Here is how "automagically" generated by ADODB batch update looks in the > case of MS SQL backend (Info obtained from MS SQL profiler, line breaks > are > inserted manually to make it readable): > > exec sp_executesql > > N'UPDATE "Northwind".."Categories" SET > "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE > "CategoryID"=@P4 > AND "CategoryName"=@P5; > > DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND > "CategoryName"=@P7; > > UPDATE "Northwind".."Categories" SET > "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE > "CategoryID"=@P11 AND "CategoryName"=@P12; > > INSERT INTO "Northwind".."Categories" > ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', > > N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 > nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 > nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', > > 99, N'CatName', N'Updated category description', > 99, N'CatName', > 66, N'DelCatName', > 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', > 662, N'newCatName', N'new Cat description' > > Live connection to the back-end is needed only on opening of the source > recordsets and on applying batch changes. Therefore connections can be > pooled/should be possible to pool (I didn't experiment here) and to share > them between several (many) front-end applications/clients if these > connections are opened using ActiveX DCOM servers running on server > PCs/.NET > Remoting(?) objects. As well as actual disconnected recordset creation and > reconnection and backend update can be executed on (Web) server side - > depending on whatever is used on backend.... > > Yes, I know dynamic SPs accessing database tables directly do not look > nice > but there could be many ways to make it working differently using > predefined > stored procedures (e.g. by serializing ADODB recordset into XML file(s) > where all the updates (inserts, deletes, updates) are coded special easily > parsed way and then reformat these XML files into the calls to the > predefined stored procedures etc.etc. > > Here is how it looks this saved XML(no direct correspondence with > presented > above batch T-SQL update) : > > - xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" > xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> > - > - > - rs:basecatalog="Northwind" rs:basetable="Categories1" > rs:basecolumn="CategoryID"> > rs:fixedlength="true" rs:maybenull="false" /> > > - rs:writeunknown="true" > rs:basecatalog="Northwind" rs:basetable="Categories1" > rs:basecolumn="CategoryName"> > > > - rs:writeunknown="true" rs:basecatalog="Northwind" > rs:basetable="Categories1" > rs:basecolumn="Description"> > > > > > > - > > > > /> > > > > > - > - > > > > > - > - > > > > > /> > - > /> > > - > > > > > > I do not post code here now because I wanted to experiment more and > because > it would be useful if somebody else tries to repeat the "trick" described > above - if it will work for them then a whole set of new opportunities to > use MS Access as a real development tool will be opened.... > > I will post code after additional tests within one-two weeks when it will > become clear that it works. > > Please post any links here if you think that my posted information looks > like "wheel reinvention" or you think it doesn't have practical > application > because of this or that several limitations etc.etc. > > Thank you. > > Shamil > > P.S. I have installed on my PC: > > - MS Windows 2003 Server SP1 > - MS Office 2003/MS Access 2003 SP1 > - MS SQL 2000 SP3a > - MDAC 2.8 > - NET Framework 1.1 and 2.0 > - Visual Studio 2003 and 2005 > - I have also MS SQL Server 2005 Express edition but I didn't experiment > with it > > P. P.S. Yes, I didn't talk about identity(autonumber) fields - I generally > use GUIDs for PKs. > To properly manage numeric identity values some more tricks are needed - > I'd > be grateful if somebody post information on this subject > (updategram/diffgram XML is a direct solution here probably - and > serialized/saved ADODB batch update can be converted into diffgrams by > using > XSLT or VB(A) or VB.NET/C#/C++ code etc.) > <<< tail skipped >>> -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Mon Mar 13 12:23:27 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Mon, 13 Mar 2006 13:23:27 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: Message-ID: <006c01c646cb$3a0c0710$647aa8c0@ColbyM6805> Charlotte, In fact, when the form binds to an ADO recordset, RecordsetClone "becomes" an ADO recordset. I dimmed an object and set the object to the RecordsetClone, and the resulting object has the properties / methods of an ADO recordset. I did not try dimming an ADODB.Recordset and setting that to the RecordsetClone, but I will try it. It appears that Access morphs RecordsetClone to whatever recordset type is required. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Monday, March 13, 2006 12:04 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets John, RecordsetClone is DAO. With ADO, you can clone a recordset, but it is a new recordset and can't be used the way you use recordsetclone. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Monday, March 13, 2006 4:43 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access XP forms bound to ADO recordsets What I am asking though is whether RecordsetClone still exists, and is somehow populated from whatever data source the form is bound to? After binding to an ADO recordset, attempts to access RecordsetClone throw an error "Type mismatch" on the line of code Set mrst = mfrm.RecordsetClone Mrst is defined in the class header as a DAO recordset. I might be able to get away with generalizing mrst to an object. NOTE: I tried that, and while the "Set" now works, the objects have different methods so any code using the object has to have different code paths written. So apparently RecordsetClone is indeed initialized as an ADO recordset which makes all of my DAO specific code (FindFirst for example) throw a runtime error if encountered. If I am going to do this, I will need to branch my code based on the Access Version as well as whether I actually used the ADO recordset code. >Please do not spend a lot of time on it now or at least do not plan to broadly use it in your development until Luckily, in my framework, I can turn on and off capabilities by examining SysVars. It does sound like the instability objections were from an early adopter. Like most things in Software, trying to use any specific feature in Access in the early stages of its introduction can be risky. It is possible (and hopefully true) that they found and fixed the bugs causing such instability. One of the problems with influential early adopters is that people read their warnings and never use a feature because they reported it unstable. If they never go back to revisit it, then it is forever labeled unstable. Perhaps it is time for other influentials (you and I and this list) to revisit this feature and see if it can be used now? John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Monday, March 13, 2006 3:20 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Does RecordsetClone become invalid? No, it doesn't, John. But it has another name. Similar method for ADODB recordsets is called Clone. > I am looking at this now. Please do not spend a lot of time on it now or at least do not plan to broadly use it in your development until it's very well tested and its limitations are clearly defined - there are rumors this feature introduce instability in MS Access work. I have doubts in that because I haven't seen any time MS Access crashes when bound to disconnected ADODB recordsets the way I described. On the other hand I did do "fight" in my work in the past with MS Access GPFs, when listboxes/comboboxes were bound to ADODB recordsets but as far as I have found this wasn't the problem with ADODB recordsets but the problem that in that case late bound DAO or ADODB recordets were used and these latter were opened in library mdb and there was a bug when DAO recordsets were used for ADP's forms and that was the cause of the floating GPF trouble or something like that. WIth this problem fixed the applications work now well for more than a year. Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 13, 2006 8:15 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > I am looking at this now. Do you know if binding to an ADO recordset > changes the data type of the RecordsetClone. I was under the > impression that RecordsetClone was always a DAO recordset. Does > RecordsetClone become invalid? I use RecordsetClone to perform many > different operations, including syncing the form to a combo and VV. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 7:12 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > Dan, > > Yes, I have seen that - in fact I did do google before I started my > experimenting. > In KB281998 "How to bind Microsoft Access forms to ADO recordsets" > http://support.microsoft.com/kb/281998 they talk AFAIS about binding to > connected ADODB recordsets. > > The original question (as I got it) was hwo to bind to disconnected ADODB > recordsets and then implied question is: is there a simple and generic way > to translate/transfer changes from disconnected recordset to the > backend... > > As it happens there is a trick to do that described in my previous > posting. > > I did do google now additionally and I did find that the similar trick is > described already several years ago. They do it a little bit differently > but > the principle is the same - they write: > > <<< > Now, the clever tricks: > > 1. Open a static, optimistic batch recordset, disconnect it, save it to a > simple in-memory stream object, set the stream position to zero so it can > be > read from the beginning, and open a new copy of the recordset from the > stream. Now, bind one copy to the form, and start working. When you're > ready to do a batch update, first compare the 2 recordsets for changes, > and > apply any adds, changes, and deletes to the unbound recordset, then run > BatchUpdate from the unbound recordset. Note that Access sets values of > IDENTITY columns to zero, so that's an easy way to filter for added > records. > ... >>>> > > This excerpt is from this posting (watch line wraps!): > > <<< > ADP: A2K vs 2002? > From: Steve Jorgensen > Date: Sun, Jul 21 2002 7:29 pm > > http://groups.google.com/group/comp.databases.ms-access/browse_frm/threa d/17 > 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/ grou > ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3 Dima > ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3De n#f2 > 0d79536029060e >>>> > > And here is another related information: > > <<< > From: Steve Jorgensen > Date: Thurs, Nov 28 2002 11:45 pm > > http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071 f8c9 > ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UT F-8& > oe=UTF-8&rnum=2 >>>> > > So they approve that my trick is legal and is a kind of "wheel > reinwention" > - the difference of my "wheel" is that I do trasnslate changes to the > second disconected recordset when form events fire - the disadvantage > of my method is that it needs more tricky coding, which still needs to > be well tested, > the advantage - is that as soons as the changes on the current row are > done > I can serialize second disconnected recordset to xml file and in the case > of > client app's failure batch changes will not be lost etc. > > Strange that such a valuable information first time published in summer > 2002 > about using ADODB disconnected recordsets is so rarely discussed on > Internet > - everybody in this World is abandoning "MS Access toy" and switiching to > .NET development? > > But this feature properly applied makes MS Access FEs good candidates to > be > used as true FEs - without any significant performance/locking hits on BEs > I > mean.... > > Shamil > > ----- Original Message ----- > From: "Dan Waters" > To: "'Access Developers discussion and problem solving'" > > Sent: Sunday, March 12, 2006 2:27 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> I've been reading you post with interest. Have you looked at MS KB >> 281998? >> This gives a method for an Access form to connect to SQL Server, Jet, and >> Oracle BE's and be updateable. They identify a specific provider to do >> this >> that can be used to set up bound forms. >> >> The provider is: "Microsoft.Access.OLEDB.10.0" >> >> I have not tried this, but thought you might be interested. >> >> Dan Waters >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >> Salakhetdinov >> Sent: Saturday, March 11, 2006 5:04 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> John at all, >> >> I did make some more experimenting and it happens that MS Access 2003 >> (and >> probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with >> disconnected updatable ADODB recordsets with both MS Access and MS SQL >> backends. >> >> I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access >> backend and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. >> >> Some more testing/experimenting is needed but I did do quite some tests >> and >> they worked OK. >> >> As I wrote already this feature is new for me and a (big) surprise - this >> is >> a functionality I have been waiting for 8+ years since 1997 when we made >> here a custom framework to work with MS Access and MS SQL in disconnected >> mode, but it was rather heavyweight and because of the bugs in MS Access >> I >> decided to not make it broadly available.... >> >> Basically this means that MS Access forms can be used in bound mode with >> very low performance hit to the MS Access and MS SQL backends - the same >> way >> ADODB disconnected recordsets are used in n-tier applications. >> >> The programming of form's events processing is relatively simple and it >> should be possible to generalize it to make a simple lightweight >> framework in case back-end database(s) follow systematic naming >> conventions and database models design principles. >> >> The "trick" is to open two ADODB recordsets: >> >> - one with batch update enabled >> - second without batch update >> >> and make them disconnected. >> >> Then bind MS Access form to the second recordset (without batch update >> enabled). >> >> (I did experiemnet with recordsets having several source rows as a >> generic case to see are there any chances to use MS Access subforms >> in bound editable mode with disconnected ADODB recordsets) >> >> When MS Access form fires insert, update, delete events all the changes >> can >> be easily translated from the second recordset (where these changes are >> made >> "automagically" because MS Access form is bound to it) to the first >> recordset. >> >> On form close(or using special button) first recordset can be reconnected >> to >> the backend and batch update applied. (Of course in the case of special >> button to apply batch changes the two disconnected recordsets have to be >> resynchronized after updates). >> >> etc. >> >> Here is how "automagically" generated by ADODB batch update looks in the >> case of MS SQL backend (Info obtained from MS SQL profiler, line breaks >> are >> inserted manually to make it readable): >> >> exec sp_executesql >> >> N'UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE >> "CategoryID"=@P4 >> AND "CategoryName"=@P5; >> >> DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND >> "CategoryName"=@P7; >> >> UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE >> "CategoryID"=@P11 AND "CategoryName"=@P12; >> >> INSERT INTO "Northwind".."Categories" >> ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', >> >> N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 >> nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 >> nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', >> >> 99, N'CatName', N'Updated category description', 99, N'CatName', 66, >> N'DelCatName', 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', >> 662, N'newCatName', N'new Cat description' >> >> Live connection to the back-end is needed only on opening of the source >> recordsets and on applying batch changes. Therefore connections can be >> pooled/should be possible to pool (I didn't experiment here) and to share >> them between several (many) front-end applications/clients if these >> connections are opened using ActiveX DCOM servers running on server >> PCs/.NET >> Remoting(?) objects. As well as actual disconnected recordset creation >> and >> reconnection and backend update can be executed on (Web) server side - >> depending on whatever is used on backend.... >> >> Yes, I know dynamic SPs accessing database tables directly do not look >> nice >> but there could be many ways to make it working differently using >> predefined stored procedures (e.g. by serializing ADODB recordset >> into XML file(s) >> where all the updates (inserts, deletes, updates) are coded special >> easily parsed way and then reformat these XML files into the calls to >> the predefined stored procedures etc.etc. >> >> Here is how it looks this saved XML(no direct correspondence with >> presented above batch T-SQL update) : >> >> - > xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" >> xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> >> - >> - >> - > rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryID"> >> > rs:fixedlength="true" rs:maybenull="false" /> >> - > rs:writeunknown="true" >> rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryName"> >> >> >> - > rs:writeunknown="true" rs:basecatalog="Northwind" >> rs:basetable="Categories1" >> rs:basecolumn="Description"> >> >> >> >> >> >> - >> >> > CategoryID="3" CategoryName="Confections" Description="Desserts, >> candies, and sweet breads" /> >> > Description="Cheeses" >> /> >> >> >> >> >> - >> - >> >> >> >> >> - >> - >> >> >> >> >> > /> >> - >> > /> >> >> - >> >> >> >> >> >> I do not post code here now because I wanted to experiment more and >> because it would be useful if somebody else tries to repeat the >> "trick" described >> above - if it will work for them then a whole set of new opportunities to >> use MS Access as a real development tool will be opened.... >> >> I will post code after additional tests within one-two weeks when it will >> become clear that it works. >> >> Please post any links here if you think that my posted information looks >> like "wheel reinvention" or you think it doesn't have practical >> application because of this or that several limitations etc.etc. >> >> Thank you. >> >> Shamil >> >> P.S. I have installed on my PC: >> >> - MS Windows 2003 Server SP1 >> - MS Office 2003/MS Access 2003 SP1 >> - MS SQL 2000 SP3a >> - MDAC 2.8 >> - NET Framework 1.1 and 2.0 >> - Visual Studio 2003 and 2005 >> - I have also MS SQL Server 2005 Express edition but I didn't experiment >> with it >> >> P. P.S. Yes, I didn't talk about identity(autonumber) fields - I >> generally use GUIDs for PKs. >> To properly manage numeric identity values some more tricks are needed - >> I'd >> be grateful if somebody post information on this subject >> (updategram/diffgram XML is a direct solution here probably - and >> serialized/saved ADODB batch update can be converted into diffgrams by >> using >> XSLT or VB(A) or VB.NET/C#/C++ code etc.) >> > > <<< tail skipped >>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Mon Mar 13 12:27:55 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Mon, 13 Mar 2006 13:27:55 -0500 Subject: [AccessD] Discovering Access version at runtime-wasAccessXPforms bound to ADO recordsets In-Reply-To: Message-ID: <006d01c646cb$d9a0fe70$647aa8c0@ColbyM6805> So many ways to do anything. Thanks, John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Monday, March 13, 2006 12:08 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Discovering Access version at runtime-wasAccessXPforms bound to ADO recordsets John, What you want is DBEngine(0)(0).Version Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Sunday, March 12, 2006 8:48 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Discovering Access version at runtime -wasAccessXPforms bound to ADO recordsets LOL, Thanks Stuart. Now if I could only find the FM. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stuart McLachlan Sent: Sunday, March 12, 2006 10:52 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Discovering Access version at runtime - wasAccessXPforms bound to ADO recordsets On 12 Mar 2006 at 22:18, John Colby wrote: > >John, you want to check the version and then load code based on the > version? > > Yes, the ACCESS version. I have found stuff about checking the > registry, but this really only addresses what is INSTALLED, not what > is currently running. > RTFM? :-) Version Returns a String indicating the version number of the currently installed copy of Microsoft Access. Read-only. expression.Version expression Required. An expression that returns one of the objects in the Applies To list. Example The following example displays the version and build number of the currently-installed copy of Microsoft Access. MsgBox "You are currently running Microsoft Access, " _ & " version " & Application.Version & ", build " _ & Application.Build & "." -- Stuart -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Mon Mar 13 12:44:10 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Mon, 13 Mar 2006 21:44:10 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <200603131535.k2DFZpu46826@ultradnt.com> Message-ID: <004401c646d1$1363e1e0$6501a8c0@Nant> > Doing unbound in a "header" record (invoice, for instance) is pretty > straightforward, especially when starting with a bound form and then > deleting the record source property Steve, Myself and John are bounders and we are very serious guys ;) I haven't asked John to approve this statement but I expect he will agree - am I right, John? :) So we are talking here about bound forms (and reports) but bound to ADODB recordsets. Just to make it clear what is discussed in this thread - this is a technique partially described here - http://support.microsoft.com/kb/281998. The difference we are talking about is that we are "exploring the waters" of MS Access forms bound to DISCONNECTED ADODB recordsets. The purpose to do that is to have backend DB(s)unlocked (not even touched by MS Access FE) while the extracted data are edited in MS Access form with subform(s) when both form and its subform(s) may have potentially many rows, which we can edit using built-in MS Access features and then post ALL the changes back at once in an ADODB "AUTOMAGIC" BATH UPDATE or in manually prepared batch update in one transaction etc. (There are other implied very useful features as serializing/transmitting/deserializing/storing/.. batch updates, having light-weight MS Access FEs etc. - but all that will make sense to discuss only when the main technique will start to work stable enough to be used in real life applications.) > I had the best device ever created for holding columns > and rows of data: Access' own Tables! True - I did write such code a long ago for MS Access 97, many others did do that - the difference we're talking about is that we wanted to use bound forms but we do not want to be bound to MS Access (local) tables and we wanted to have as little as possible custom coding and if have such coding then rather generic and flexible and scalable. > and also requires home-grown locking (I > added a bit field to invoice to indicate "in use"), Yes, it will need to use something like that of course - and this is always needed for the optimistic locking, e.g. when one is working in fully unbound mode in VB6 or C#/VB.NET/C++.... Shamil ----- Original Message ----- From: "Steve Conklin" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 13, 2006 6:36 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >I have been following this thread with great interest. When faced with >this > issue, I have gone completely the opposite direction - that is not > bleeding > edge but back to Access basics. This was in an Access FE, MSSQL BE. > > Doing unbound in a "header" record (invoice, for instance) is pretty > straightforward, especially when starting with a bound form and then > deleting the record source property, so all controls have the same name as > fields. The details in the subform (invoice line-items) are another > matter. > After several failed attempts at a disconnected ADO recordset, I thought > about arrays, dictionaries, collections, converting somehow ADO to DOA at > runtime, but finally came back to Access iteslf - I had the best device > ever > created for holding columns and rows of data: > Access' own Tables! > > They provide nearly code-free storage, easy creation of new rows, are > easily > displayed in bound sub forms, etc. > I appended all the tbl_invoice_details to tbl_invoice_details_local - > which > has the exact same structure, except that the pk-autonumber field in the > local is neither. It is a long with a default of 0 (indicates new when > writing back). Also added a y/n field to indicate "deleted" (sub form > filters for deleted=0). This is decidedly low-tech as compared to > serializing XML streams and such, and also requires home-grown locking (I > added a bit field to invoice to indicate "in use"), but it does work by > virtue of staying in Access sweet-spot rather than venturing in to > uncharted > waters. > > > Steve > <<< tail skipped>>> From shamil at users.mns.ru Mon Mar 13 13:04:56 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Mon, 13 Mar 2006 22:04:56 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: Message-ID: <004501c646d1$1395ee60$6501a8c0@Nant> > Have you tried using an unbound form with > a disconnected recordset? Charlotte, Yes, bind a form to ADODB even CONNECTED recordsets works - it's described here - http://support.microsoft.com/kb/281998. Binding a form to ADODB DISCONNECTED recordset also works but changes can't be submitted to BE without "clever tricks", which were mentioned here. And these "clever tricks" as Steve Jorgensen found several years ago put "MS Access on the knees" - in fact kill it completely often without even any error message - in the case VBA code is used to set values of MS Access forms bound to disconnected ADODB recordsets when these recordsets are created from MS SQL back-end data. I think I have found a workaround, which lets to bypass this limitation. I'm testing it now here. I will post the source code for this "crash" test tomorrow. So far there is "some light in the end of the tunnel" - I did run in total ~50000 forms' openings, data changes VIA CONTROLS, back-end updates, form closing for four different forms of Northwind sample app, all bound to disconnected ADODB recordsets getting opened/closed automatically in five running on one PC MS Access mdbs, two of which were talking to MS SQL BE and three of which were talking to MS Access BE.... The results are promising - the applications DID NOT CRASH. But they stopped in the end with strange error message: <+ Run-time error '3011'. The Microsoft Jet database engine could not find the object ''. Make sure the object exists and that you spell its name and the path name correctly. -> This error message was raised for DoCmd.Openform with legal parameters etc. I have to make some more fine grained tests and run them more before publishing them to not involve you and others into meaningless adventure... Shamil ----- Original Message ----- From: "Charlotte Foust" To: "Access Developers discussion and problem solving" Sent: Monday, March 13, 2006 8:11 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > I'm just dipping a toe in here quickly before I get back to work. Have > you tried using an unbound form with a disconnected recordset? I swear > I've done this, but I'll have to look for a demo. > > > Charlotte Foust > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 4:12 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > Dan, > > Yes, I have seen that - in fact I did do google before I started my > experimenting. > In KB281998 "How to bind Microsoft Access forms to ADO recordsets" > http://support.microsoft.com/kb/281998 they talk AFAIS about binding to > connected ADODB recordsets. > > The original question (as I got it) was hwo to bind to disconnected > ADODB recordsets and then implied question is: is there a simple and > generic way to translate/transfer changes from disconnected recordset to > the backend... > > As it happens there is a trick to do that described in my previous > posting. > > I did do google now additionally and I did find that the similar trick > is described already several years ago. They do it a little bit > differently but the principle is the same - they write: > > <<< > Now, the clever tricks: > > 1. Open a static, optimistic batch recordset, disconnect it, save it to > a simple in-memory stream object, set the stream position to zero so it > can be read from the beginning, and open a new copy of the recordset > from the stream. Now, bind one copy to the form, and start working. > When you're ready to do a batch update, first compare the 2 recordsets > for changes, and apply any adds, changes, and deletes to the unbound > recordset, then run BatchUpdate from the unbound recordset. Note that > Access sets values of IDENTITY columns to zero, so that's an easy way to > filter for added records. > ... >>>> > > This excerpt is from this posting (watch line wraps!): > > <<< > ADP: A2K vs 2002? > From: Steve Jorgensen > Date: Sun, Jul 21 2002 7:29 pm > > http://groups.google.com/group/comp.databases.ms-access/browse_frm/threa > d/1753dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&pr > ev=/groups%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset% > 26safe%3Dimages%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr > %3D%26hl%3Den#f20d79536029060e >>>> > > And here is another related information: > > <<< > From: Steve Jorgensen > Date: Thurs, Nov 28 2002 11:45 pm > > http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071 > f8c9?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&i > e=UTF-8&oe=UTF-8&rnum=2 >>>> > > So they approve that my trick is legal and is a kind of "wheel > reinwention" - the difference of my "wheel" is that I do trasnslate > changes to the second disconected recordset when form events fire - the > disadvantage of my method is that it needs more tricky coding, which > still needs to be well tested, the advantage - is that as soons as the > changes on the current row are done I can serialize second disconnected > recordset to xml file and in the case of client app's failure batch > changes will not be lost etc. > > Strange that such a valuable information first time published in summer > 2002 about using ADODB disconnected recordsets is so rarely discussed on > Internet - everybody in this World is abandoning "MS Access toy" and > switiching to .NET development? > > But this feature properly applied makes MS Access FEs good candidates to > be used as true FEs - without any significant performance/locking hits > on BEs I mean.... > > Shamil > > ----- Original Message ----- > From: "Dan Waters" > To: "'Access Developers discussion and problem solving'" > > Sent: Sunday, March 12, 2006 2:27 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> I've been reading you post with interest. Have you looked at MS KB >> 281998? >> This gives a method for an Access form to connect to SQL Server, Jet, > and >> Oracle BE's and be updateable. They identify a specific provider to > do >> this >> that can be used to set up bound forms. >> >> The provider is: "Microsoft.Access.OLEDB.10.0" >> >> I have not tried this, but thought you might be interested. >> >> Dan Waters >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >> Salakhetdinov >> Sent: Saturday, March 11, 2006 5:04 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> John at all, >> >> I did make some more experimenting and it happens that MS Access 2003 > (and >> probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with >> disconnected updatable ADODB recordsets with both MS Access and MS SQL >> backends. >> >> I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access > backend >> and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. >> >> Some more testing/experimenting is needed but I did do quite some > tests >> and >> they worked OK. >> >> As I wrote already this feature is new for me and a (big) surprise - > this >> is >> a functionality I have been waiting for 8+ years since 1997 when we > made >> here a custom framework to work with MS Access and MS SQL in > disconnected >> mode, but it was rather heavyweight and because of the bugs in MS > Access I >> decided to not make it broadly available.... >> >> Basically this means that MS Access forms can be used in bound mode > with >> very low performance hit to the MS Access and MS SQL backends - the > same >> way >> ADODB disconnected recordsets are used in n-tier applications. >> >> The programming of form's events processing is relatively simple and > it >> should be possible to generalize it to make a simple lightweight > framework >> in case back-end database(s) follow systematic naming conventions and >> database models design principles. >> >> The "trick" is to open two ADODB recordsets: >> >> - one with batch update enabled >> - second without batch update >> >> and make them disconnected. >> >> Then bind MS Access form to the second recordset (without batch update >> enabled). >> >> (I did experiemnet with recordsets having several source rows as a > generic >> case to see are there any chances to use MS Access subforms in bound >> editable mode with disconnected ADODB recordsets) >> >> When MS Access form fires insert, update, delete events all the > changes >> can >> be easily translated from the second recordset (where these changes > are >> made >> "automagically" because MS Access form is bound to it) to the first >> recordset. >> >> On form close(or using special button) first recordset can be > reconnected >> to >> the backend and batch update applied. (Of course in the case of > special >> button to apply batch changes the two disconnected recordsets have to > be >> resynchronized after updates). >> >> etc. >> >> Here is how "automagically" generated by ADODB batch update looks in > the >> case of MS SQL backend (Info obtained from MS SQL profiler, line > breaks >> are >> inserted manually to make it readable): >> >> exec sp_executesql >> >> N'UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE >> "CategoryID"=@P4 >> AND "CategoryName"=@P5; >> >> DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND >> "CategoryName"=@P7; >> >> UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE >> "CategoryID"=@P11 AND "CategoryName"=@P12; >> >> INSERT INTO "Northwind".."Categories" >> ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', >> >> N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 > int, at P7 >> nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 >> nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', >> >> 99, N'CatName', N'Updated category description', >> 99, N'CatName', >> 66, N'DelCatName', >> 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', >> 662, N'newCatName', N'new Cat description' >> >> Live connection to the back-end is needed only on opening of the > source >> recordsets and on applying batch changes. Therefore connections can be >> pooled/should be possible to pool (I didn't experiment here) and to > share >> them between several (many) front-end applications/clients if these >> connections are opened using ActiveX DCOM servers running on server >> PCs/.NET >> Remoting(?) objects. As well as actual disconnected recordset creation > and >> reconnection and backend update can be executed on (Web) server side - >> depending on whatever is used on backend.... >> >> Yes, I know dynamic SPs accessing database tables directly do not look >> nice >> but there could be many ways to make it working differently using >> predefined >> stored procedures (e.g. by serializing ADODB recordset into XML > file(s) >> where all the updates (inserts, deletes, updates) are coded special > easily >> parsed way and then reformat these XML files into the calls to the >> predefined stored procedures etc.etc. >> >> Here is how it looks this saved XML(no direct correspondence with >> presented >> above batch T-SQL update) : >> >> - > xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" >> xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> >> - >> - >> - rs:writeunknown="true" >> rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryID"> >> > rs:fixedlength="true" rs:maybenull="false" /> >> >> - > rs:writeunknown="true" >> rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryName"> >> /> >> >> - > rs:writeunknown="true" rs:basecatalog="Northwind" >> rs:basetable="Categories1" >> rs:basecolumn="Description"> >> /> >> >> >> >> >> - >> >> >> Description="Desserts, >> candies, and sweet breads" /> >> Description="Cheeses" >> /> >> Description="Breads, >> crackers, pasta, and cereal" /> >> Description="Prepared >> meats" /> >> >> >> - >> - >> >> >> >> >> - >> - >> >> >> >> >> Description="Inserted2" >> /> >> - >> Description="inserted 3" >> /> >> >> - >> /> >> >> >> >> >> I do not post code here now because I wanted to experiment more and >> because >> it would be useful if somebody else tries to repeat the "trick" > described >> above - if it will work for them then a whole set of new opportunities > to >> use MS Access as a real development tool will be opened.... >> >> I will post code after additional tests within one-two weeks when it > will >> become clear that it works. >> >> Please post any links here if you think that my posted information > looks >> like "wheel reinvention" or you think it doesn't have practical >> application >> because of this or that several limitations etc.etc. >> >> Thank you. >> >> Shamil >> >> P.S. I have installed on my PC: >> >> - MS Windows 2003 Server SP1 >> - MS Office 2003/MS Access 2003 SP1 >> - MS SQL 2000 SP3a >> - MDAC 2.8 >> - NET Framework 1.1 and 2.0 >> - Visual Studio 2003 and 2005 >> - I have also MS SQL Server 2005 Express edition but I didn't > experiment >> with it >> >> P. P.S. Yes, I didn't talk about identity(autonumber) fields - I > generally >> use GUIDs for PKs. >> To properly manage numeric identity values some more tricks are needed > - >> I'd >> be grateful if somebody post information on this subject >> (updategram/diffgram XML is a direct solution here probably - and >> serialized/saved ADODB batch update can be converted into diffgrams by >> using >> XSLT or VB(A) or VB.NET/C#/C++ code etc.) >> > > <<< tail skipped >>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Mon Mar 13 13:02:32 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Mon, 13 Mar 2006 11:02:32 -0800 Subject: [AccessD] Access XP forms bound to ADO recordsets Message-ID: That must be new because I know it didn't do that in 2000 and I haven't been allowed to work in ADO much in XP. Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Monday, March 13, 2006 10:23 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Charlotte, In fact, when the form binds to an ADO recordset, RecordsetClone "becomes" an ADO recordset. I dimmed an object and set the object to the RecordsetClone, and the resulting object has the properties / methods of an ADO recordset. I did not try dimming an ADODB.Recordset and setting that to the RecordsetClone, but I will try it. It appears that Access morphs RecordsetClone to whatever recordset type is required. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Monday, March 13, 2006 12:04 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets John, RecordsetClone is DAO. With ADO, you can clone a recordset, but it is a new recordset and can't be used the way you use recordsetclone. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Monday, March 13, 2006 4:43 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access XP forms bound to ADO recordsets What I am asking though is whether RecordsetClone still exists, and is somehow populated from whatever data source the form is bound to? After binding to an ADO recordset, attempts to access RecordsetClone throw an error "Type mismatch" on the line of code Set mrst = mfrm.RecordsetClone Mrst is defined in the class header as a DAO recordset. I might be able to get away with generalizing mrst to an object. NOTE: I tried that, and while the "Set" now works, the objects have different methods so any code using the object has to have different code paths written. So apparently RecordsetClone is indeed initialized as an ADO recordset which makes all of my DAO specific code (FindFirst for example) throw a runtime error if encountered. If I am going to do this, I will need to branch my code based on the Access Version as well as whether I actually used the ADO recordset code. >Please do not spend a lot of time on it now or at least do not plan to broadly use it in your development until Luckily, in my framework, I can turn on and off capabilities by examining SysVars. It does sound like the instability objections were from an early adopter. Like most things in Software, trying to use any specific feature in Access in the early stages of its introduction can be risky. It is possible (and hopefully true) that they found and fixed the bugs causing such instability. One of the problems with influential early adopters is that people read their warnings and never use a feature because they reported it unstable. If they never go back to revisit it, then it is forever labeled unstable. Perhaps it is time for other influentials (you and I and this list) to revisit this feature and see if it can be used now? John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Monday, March 13, 2006 3:20 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Does RecordsetClone become invalid? No, it doesn't, John. But it has another name. Similar method for ADODB recordsets is called Clone. > I am looking at this now. Please do not spend a lot of time on it now or at least do not plan to broadly use it in your development until it's very well tested and its limitations are clearly defined - there are rumors this feature introduce instability in MS Access work. I have doubts in that because I haven't seen any time MS Access crashes when bound to disconnected ADODB recordsets the way I described. On the other hand I did do "fight" in my work in the past with MS Access GPFs, when listboxes/comboboxes were bound to ADODB recordsets but as far as I have found this wasn't the problem with ADODB recordsets but the problem that in that case late bound DAO or ADODB recordets were used and these latter were opened in library mdb and there was a bug when DAO recordsets were used for ADP's forms and that was the cause of the floating GPF trouble or something like that. WIth this problem fixed the applications work now well for more than a year. Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 13, 2006 8:15 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > I am looking at this now. Do you know if binding to an ADO recordset > changes the data type of the RecordsetClone. I was under the > impression that RecordsetClone was always a DAO recordset. Does > RecordsetClone become invalid? I use RecordsetClone to perform many > different operations, including syncing the form to a combo and VV. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 7:12 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > Dan, > > Yes, I have seen that - in fact I did do google before I started my > experimenting. > In KB281998 "How to bind Microsoft Access forms to ADO recordsets" > http://support.microsoft.com/kb/281998 they talk AFAIS about binding to > connected ADODB recordsets. > > The original question (as I got it) was hwo to bind to disconnected ADODB > recordsets and then implied question is: is there a simple and generic way > to translate/transfer changes from disconnected recordset to the > backend... > > As it happens there is a trick to do that described in my previous > posting. > > I did do google now additionally and I did find that the similar trick is > described already several years ago. They do it a little bit differently > but > the principle is the same - they write: > > <<< > Now, the clever tricks: > > 1. Open a static, optimistic batch recordset, disconnect it, save it to a > simple in-memory stream object, set the stream position to zero so it can > be > read from the beginning, and open a new copy of the recordset from the > stream. Now, bind one copy to the form, and start working. When you're > ready to do a batch update, first compare the 2 recordsets for changes, > and > apply any adds, changes, and deletes to the unbound recordset, then run > BatchUpdate from the unbound recordset. Note that Access sets values of > IDENTITY columns to zero, so that's an easy way to filter for added > records. > ... >>>> > > This excerpt is from this posting (watch line wraps!): > > <<< > ADP: A2K vs 2002? > From: Steve Jorgensen > Date: Sun, Jul 21 2002 7:29 pm > > http://groups.google.com/group/comp.databases.ms-access/browse_frm/threa d/17 > 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/ grou > ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3 Dima > ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3De n#f2 > 0d79536029060e >>>> > > And here is another related information: > > <<< > From: Steve Jorgensen > Date: Thurs, Nov 28 2002 11:45 pm > > http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071 f8c9 > ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UT F-8& > oe=UTF-8&rnum=2 >>>> > > So they approve that my trick is legal and is a kind of "wheel > reinwention" > - the difference of my "wheel" is that I do trasnslate changes to the > second disconected recordset when form events fire - the disadvantage > of my method is that it needs more tricky coding, which still needs to > be well tested, > the advantage - is that as soons as the changes on the current row are > done > I can serialize second disconnected recordset to xml file and in the case > of > client app's failure batch changes will not be lost etc. > > Strange that such a valuable information first time published in summer > 2002 > about using ADODB disconnected recordsets is so rarely discussed on > Internet > - everybody in this World is abandoning "MS Access toy" and switiching to > .NET development? > > But this feature properly applied makes MS Access FEs good candidates to > be > used as true FEs - without any significant performance/locking hits on BEs > I > mean.... > > Shamil > > ----- Original Message ----- > From: "Dan Waters" > To: "'Access Developers discussion and problem solving'" > > Sent: Sunday, March 12, 2006 2:27 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> I've been reading you post with interest. Have you looked at MS KB >> 281998? >> This gives a method for an Access form to connect to SQL Server, Jet, and >> Oracle BE's and be updateable. They identify a specific provider to do >> this >> that can be used to set up bound forms. >> >> The provider is: "Microsoft.Access.OLEDB.10.0" >> >> I have not tried this, but thought you might be interested. >> >> Dan Waters >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >> Salakhetdinov >> Sent: Saturday, March 11, 2006 5:04 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> John at all, >> >> I did make some more experimenting and it happens that MS Access 2003 >> (and >> probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with >> disconnected updatable ADODB recordsets with both MS Access and MS SQL >> backends. >> >> I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access >> backend and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. >> >> Some more testing/experimenting is needed but I did do quite some tests >> and >> they worked OK. >> >> As I wrote already this feature is new for me and a (big) surprise - this >> is >> a functionality I have been waiting for 8+ years since 1997 when we made >> here a custom framework to work with MS Access and MS SQL in disconnected >> mode, but it was rather heavyweight and because of the bugs in MS Access >> I >> decided to not make it broadly available.... >> >> Basically this means that MS Access forms can be used in bound mode with >> very low performance hit to the MS Access and MS SQL backends - the same >> way >> ADODB disconnected recordsets are used in n-tier applications. >> >> The programming of form's events processing is relatively simple and it >> should be possible to generalize it to make a simple lightweight >> framework in case back-end database(s) follow systematic naming >> conventions and database models design principles. >> >> The "trick" is to open two ADODB recordsets: >> >> - one with batch update enabled >> - second without batch update >> >> and make them disconnected. >> >> Then bind MS Access form to the second recordset (without batch update >> enabled). >> >> (I did experiemnet with recordsets having several source rows as a >> generic case to see are there any chances to use MS Access subforms >> in bound editable mode with disconnected ADODB recordsets) >> >> When MS Access form fires insert, update, delete events all the changes >> can >> be easily translated from the second recordset (where these changes are >> made >> "automagically" because MS Access form is bound to it) to the first >> recordset. >> >> On form close(or using special button) first recordset can be reconnected >> to >> the backend and batch update applied. (Of course in the case of special >> button to apply batch changes the two disconnected recordsets have to be >> resynchronized after updates). >> >> etc. >> >> Here is how "automagically" generated by ADODB batch update looks in the >> case of MS SQL backend (Info obtained from MS SQL profiler, line breaks >> are >> inserted manually to make it readable): >> >> exec sp_executesql >> >> N'UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE >> "CategoryID"=@P4 >> AND "CategoryName"=@P5; >> >> DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND >> "CategoryName"=@P7; >> >> UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE >> "CategoryID"=@P11 AND "CategoryName"=@P12; >> >> INSERT INTO "Northwind".."Categories" >> ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', >> >> N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 >> nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 >> nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', >> >> 99, N'CatName', N'Updated category description', 99, N'CatName', 66, >> N'DelCatName', 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', >> 662, N'newCatName', N'new Cat description' >> >> Live connection to the back-end is needed only on opening of the source >> recordsets and on applying batch changes. Therefore connections can be >> pooled/should be possible to pool (I didn't experiment here) and to share >> them between several (many) front-end applications/clients if these >> connections are opened using ActiveX DCOM servers running on server >> PCs/.NET >> Remoting(?) objects. As well as actual disconnected recordset creation >> and >> reconnection and backend update can be executed on (Web) server side - >> depending on whatever is used on backend.... >> >> Yes, I know dynamic SPs accessing database tables directly do not look >> nice >> but there could be many ways to make it working differently using >> predefined stored procedures (e.g. by serializing ADODB recordset >> into XML file(s) >> where all the updates (inserts, deletes, updates) are coded special >> easily parsed way and then reformat these XML files into the calls to >> the predefined stored procedures etc.etc. >> >> Here is how it looks this saved XML(no direct correspondence with >> presented above batch T-SQL update) : >> >> - > xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" >> xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> >> - >> - >> - > rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryID"> >> > rs:fixedlength="true" rs:maybenull="false" /> >> - > rs:writeunknown="true" >> rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryName"> >> >> >> - > rs:writeunknown="true" rs:basecatalog="Northwind" >> rs:basetable="Categories1" >> rs:basecolumn="Description"> >> >> >> >> >> >> - >> >> > CategoryID="3" CategoryName="Confections" Description="Desserts, >> candies, and sweet breads" /> >> > Description="Cheeses" >> /> >> >> >> >> >> - >> - >> >> >> >> >> - >> - >> >> >> >> >> > /> >> - >> > /> >> >> - >> >> >> >> >> >> I do not post code here now because I wanted to experiment more and >> because it would be useful if somebody else tries to repeat the >> "trick" described >> above - if it will work for them then a whole set of new opportunities to >> use MS Access as a real development tool will be opened.... >> >> I will post code after additional tests within one-two weeks when it will >> become clear that it works. >> >> Please post any links here if you think that my posted information looks >> like "wheel reinvention" or you think it doesn't have practical >> application because of this or that several limitations etc.etc. >> >> Thank you. >> >> Shamil >> >> P.S. I have installed on my PC: >> >> - MS Windows 2003 Server SP1 >> - MS Office 2003/MS Access 2003 SP1 >> - MS SQL 2000 SP3a >> - MDAC 2.8 >> - NET Framework 1.1 and 2.0 >> - Visual Studio 2003 and 2005 >> - I have also MS SQL Server 2005 Express edition but I didn't experiment >> with it >> >> P. P.S. Yes, I didn't talk about identity(autonumber) fields - I >> generally use GUIDs for PKs. >> To properly manage numeric identity values some more tricks are needed - >> I'd >> be grateful if somebody post information on this subject >> (updategram/diffgram XML is a direct solution here probably - and >> serialized/saved ADODB batch update can be converted into diffgrams by >> using >> XSLT or VB(A) or VB.NET/C#/C++ code etc.) >> > > <<< tail skipped >>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From martyconnelly at shaw.ca Mon Mar 13 13:35:41 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Mon, 13 Mar 2006 11:35:41 -0800 Subject: [AccessD] Discovering Access version at runtime - was AccessXPforms bound to ADO recordsets References: <004501c6464c$d0f19570$647aa8c0@ColbyM6805> Message-ID: <4415C98D.5010903@shaw.ca> How about doing it this way. Run a vbs script from a desktop shortcut. Or double click vbs file from windows explorer or even shell to it. Assuming that vb scripting allowed. You can also open various versions of Access in code below via Set AcApp = CreateObject("Access.Application.8") 'Access 97 Set AcApp = CreateObject("Access.Application.11") 'Access 2003 You can create a VB script file with this code and start your app using this. (Code is from an MS article) http://support.microsoft.com/?kbid=235422 'File myVersion.vbs Const cDatabaseToOpen = "C:\.mdb" On Error Resume Next Dim AcApp 'if multiple Access versions on machine this will open last version opened Set AcApp = CreateObject("Access.Application") If AcApp.Version >= 10 Then AcApp.AutomationSecurity = 1 ' msoAutomationSecurityLow End If AcApp.Visible = True 'open your access application AcApp.OpenCurrentDatabase cDatabaseToOpen If AcApp.CurrentProject.FullName <> "" Then AcApp.UserControl = True Else AcApp.Quit MsgBox "Failed to open '" & cDatabaseToOpen & "'." End If John Colby wrote: >>John, you want to check the version and then load code based on the >> >> >version? > >Yes, the ACCESS version. I have found stuff about checking the registry, >but this really only addresses what is INSTALLED, not what is currently >running. > > >John W. Colby >www.ColbyConsulting.com > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins >Sent: Sunday, March 12, 2006 7:33 PM >To: 'Access Developers discussion and problem solving' >Subject: Re: [AccessD] Discovering Access version at runtime - was >AccessXPforms bound to ADO recordsets > >John, you want to check the version and then load code based on the version? > > >Susan H. > >of RaiseEvents in the framework. Now we have code which works in AXP but >not A2K and below. So I would like to carve this stuff out and only load it >if the version being run under is AXP or above. A quick Google search does >not come up with anything. > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com > > > -- Marty Connelly Victoria, B.C. Canada From shamil at users.mns.ru Mon Mar 13 13:50:59 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Mon, 13 Mar 2006 22:50:59 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <005601c6469b$ad1ef440$647aa8c0@ColbyM6805> Message-ID: <002a01c646d7$768357f0$6501a8c0@Nant> > binding to an ADO recordset, attempts to access RecordsetClone throw an > error "Type mismatch" on the line of code > > Set mrst = mfrm.RecordsetClone John, I didn't get it first, sorry - I thought you're asking about ADODB.Recordset cloning using ADODB.Recordset object not MS Access form. Yes, you're right MS Access form bound to ADODB recordset returns this recordset object reference in the case: Set mrst = mfrm.RecordsetClone Here is the code to safely differentiate DAO and ADODB recordsets: Private Function IsDAORecordset(ByRef rrst As Object) As Boolean On Error GoTo HandleErr IsDAORecordset = IsNumeric(rrst.Type) Exit Function HandleErr: IsDAORecordset = False End Function Be careful to not occasionally use (similarily named and having the same quantity of parameters) DAO.Recordsets' methods with ADODB recordsets - these are the source of strange floating errors, which sometimes results if GPF.... The best would be to test in code, is returned by form's Recordsetclone recordset DAO.Recordset or ADODB.Recordset and then fork to the code, which was tested for every recordset type using early (compile time) binding. i.e. you'd better NOT use late binding for recordset objects' methods (exception getting recordset reference from form's Recordsetclone) in your framework to not have unpredictable side effects. "Implements" feature could be of good use here for effective compile time binding. I did "fight" with this issue of form's and combo-/list-box recordset object type morphing when writing and debugging code for mdb add-ins used with both MDB and ADPs. Having been solved it works now for more than a year without any troubles in this area. Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 13, 2006 3:43 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > What I am asking though is whether RecordsetClone still exists, and is > somehow populated from whatever data source the form is bound to? After > binding to an ADO recordset, attempts to access RecordsetClone throw an > error "Type mismatch" on the line of code > > Set mrst = mfrm.RecordsetClone > > Mrst is defined in the class header as a DAO recordset. > > I might be able to get away with generalizing mrst to an object. > > NOTE: I tried that, and while the "Set" now works, the objects have > different methods so any code using the object has to have different code > paths written. So apparently RecordsetClone is indeed initialized as an > ADO > recordset which makes all of my DAO specific code (FindFirst for example) > throw a runtime error if encountered. If I am going to do this, I will > need > to branch my code based on the Access Version as well as whether I > actually > used the ADO recordset code. > >>Please do not spend a lot of time on it now or at least do not plan to > broadly use it in your development until > > Luckily, in my framework, I can turn on and off capabilities by examining > SysVars. It does sound like the instability objections were from an early > adopter. Like most things in Software, trying to use any specific feature > in Access in the early stages of its introduction can be risky. It is > possible (and hopefully true) that they found and fixed the bugs causing > such instability. One of the problems with influential early adopters is > that people read their warnings and never use a feature because they > reported it unstable. If they never go back to revisit it, then it is > forever labeled unstable. > > Perhaps it is time for other influentials (you and I and this list) to > revisit this feature and see if it can be used now? > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Monday, March 13, 2006 3:20 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > >> Does RecordsetClone become invalid? > No, it doesn't, John. > But it has another name. > Similar method for ADODB recordsets is called Clone. > >> I am looking at this now. > Please do not spend a lot of time on it now or at least do not plan to > broadly use it in your development until it's very well tested and its > limitations are clearly defined - there are rumors this feature introduce > instability in MS Access work. I have doubts in that because I haven't > seen > any time MS Access crashes when bound to disconnected ADODB recordsets the > way I described. > > On the other hand I did do "fight" in my work in the past with MS Access > GPFs, when listboxes/comboboxes were bound to ADODB recordsets but as far > as > I have found this wasn't the problem with ADODB recordsets but the problem > that in that case late bound DAO or ADODB recordets were used and these > latter were opened in library mdb and there was a bug when DAO recordsets > were used for ADP's forms and that was the cause of the floating GPF > trouble > or something like that. WIth this problem fixed the applications work now > well for more than a year. > > Shamil > > ----- Original Message ----- > From: "John Colby" > To: "'Access Developers discussion and problem solving'" > > Sent: Monday, March 13, 2006 8:15 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> I am looking at this now. Do you know if binding to an ADO recordset >> changes >> the data type of the RecordsetClone. I was under the impression that >> RecordsetClone was always a DAO recordset. Does RecordsetClone become >> invalid? I use RecordsetClone to perform many different operations, >> including syncing the form to a combo and VV. >> >> >> John W. Colby >> www.ColbyConsulting.com >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >> Salakhetdinov >> Sent: Saturday, March 11, 2006 7:12 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> Dan, >> >> Yes, I have seen that - in fact I did do google before I started my >> experimenting. >> In KB281998 "How to bind Microsoft Access forms to ADO recordsets" >> http://support.microsoft.com/kb/281998 they talk AFAIS about binding to >> connected ADODB recordsets. >> >> The original question (as I got it) was hwo to bind to disconnected ADODB >> recordsets and then implied question is: is there a simple and generic >> way >> to translate/transfer changes from disconnected recordset to the >> backend... >> >> As it happens there is a trick to do that described in my previous >> posting. >> >> I did do google now additionally and I did find that the similar trick is >> described already several years ago. They do it a little bit differently >> but >> the principle is the same - they write: >> >> <<< >> Now, the clever tricks: >> >> 1. Open a static, optimistic batch recordset, disconnect it, save it to >> a >> simple in-memory stream object, set the stream position to zero so it can >> be >> read from the beginning, and open a new copy of the recordset from the >> stream. Now, bind one copy to the form, and start working. When you're >> ready to do a batch update, first compare the 2 recordsets for changes, >> and >> apply any adds, changes, and deletes to the unbound recordset, then run >> BatchUpdate from the unbound recordset. Note that Access sets values of >> IDENTITY columns to zero, so that's an easy way to filter for added >> records. >> ... >>>>> >> >> This excerpt is from this posting (watch line wraps!): >> >> <<< >> ADP: A2K vs 2002? >> From: Steve Jorgensen >> Date: Sun, Jul 21 2002 7:29 pm >> >> > http://groups.google.com/group/comp.databases.ms-access/browse_frm/thread/17 >> > 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/grou >> > ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3Dima >> > ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3Den#f2 >> 0d79536029060e >>>>> >> >> And here is another related information: >> >> <<< >> From: Steve Jorgensen >> Date: Thurs, Nov 28 2002 11:45 pm >> >> > http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071f8c9 >> > ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UTF-8& >> oe=UTF-8&rnum=2 >>>>> >> >> So they approve that my trick is legal and is a kind of "wheel >> reinwention" >> - the difference of my "wheel" is that I do trasnslate changes to the >> second >> disconected recordset when form events fire - the disadvantage of my >> method >> is that it needs more tricky coding, which still needs to be well tested, >> the advantage - is that as soons as the changes on the current row are >> done >> I can serialize second disconnected recordset to xml file and in the case >> of >> client app's failure batch changes will not be lost etc. >> >> Strange that such a valuable information first time published in summer >> 2002 >> about using ADODB disconnected recordsets is so rarely discussed on >> Internet >> - everybody in this World is abandoning "MS Access toy" and switiching to >> .NET development? >> >> But this feature properly applied makes MS Access FEs good candidates to >> be >> used as true FEs - without any significant performance/locking hits on >> BEs > >> I >> mean.... >> >> Shamil >> >> ----- Original Message ----- >> From: "Dan Waters" >> To: "'Access Developers discussion and problem solving'" >> >> Sent: Sunday, March 12, 2006 2:27 AM >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> >>> Shamil, >>> >>> I've been reading you post with interest. Have you looked at MS KB >>> 281998? >>> This gives a method for an Access form to connect to SQL Server, Jet, >>> and >>> Oracle BE's and be updateable. They identify a specific provider to do >>> this >>> that can be used to set up bound forms. >>> >>> The provider is: "Microsoft.Access.OLEDB.10.0" >>> >>> I have not tried this, but thought you might be interested. >>> >>> Dan Waters >>> >>> >>> -----Original Message----- >>> From: accessd-bounces at databaseadvisors.com >>> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >>> Salakhetdinov >>> Sent: Saturday, March 11, 2006 5:04 PM >>> To: Access Developers discussion and problem solving >>> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >>> >>> John at all, >>> >>> I did make some more experimenting and it happens that MS Access 2003 >>> (and >>> probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with >>> disconnected updatable ADODB recordsets with both MS Access and MS SQL >>> backends. >>> >>> I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access >>> backend >>> and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. >>> >>> Some more testing/experimenting is needed but I did do quite some tests >>> and >>> they worked OK. >>> >>> As I wrote already this feature is new for me and a (big) surprise - >>> this >>> is >>> a functionality I have been waiting for 8+ years since 1997 when we made >>> here a custom framework to work with MS Access and MS SQL in >>> disconnected >>> mode, but it was rather heavyweight and because of the bugs in MS Access >>> I >>> decided to not make it broadly available.... >>> >>> Basically this means that MS Access forms can be used in bound mode with >>> very low performance hit to the MS Access and MS SQL backends - the same >>> way >>> ADODB disconnected recordsets are used in n-tier applications. >>> >>> The programming of form's events processing is relatively simple and it >>> should be possible to generalize it to make a simple lightweight >>> framework >>> in case back-end database(s) follow systematic naming conventions and >>> database models design principles. >>> >>> The "trick" is to open two ADODB recordsets: >>> >>> - one with batch update enabled >>> - second without batch update >>> >>> and make them disconnected. >>> >>> Then bind MS Access form to the second recordset (without batch update >>> enabled). >>> >>> (I did experiemnet with recordsets having several source rows as a >>> generic >>> case to see are there any chances to use MS Access subforms in bound >>> editable mode with disconnected ADODB recordsets) >>> >>> When MS Access form fires insert, update, delete events all the changes >>> can >>> be easily translated from the second recordset (where these changes are >>> made >>> "automagically" because MS Access form is bound to it) to the first >>> recordset. >>> >>> On form close(or using special button) first recordset can be >>> reconnected >>> to >>> the backend and batch update applied. (Of course in the case of special >>> button to apply batch changes the two disconnected recordsets have to be >>> resynchronized after updates). >>> >>> etc. >>> >>> Here is how "automagically" generated by ADODB batch update looks in the >>> case of MS SQL backend (Info obtained from MS SQL profiler, line breaks >>> are >>> inserted manually to make it readable): >>> >>> exec sp_executesql >>> >>> N'UPDATE "Northwind".."Categories" SET >>> "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE >>> "CategoryID"=@P4 >>> AND "CategoryName"=@P5; >>> >>> DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND >>> "CategoryName"=@P7; >>> >>> UPDATE "Northwind".."Categories" SET >>> "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE >>> "CategoryID"=@P11 AND "CategoryName"=@P12; >>> >>> INSERT INTO "Northwind".."Categories" >>> ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', >>> >>> N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 >>> int, at P7 >>> nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 >>> nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', >>> >>> 99, N'CatName', N'Updated category description', >>> 99, N'CatName', >>> 66, N'DelCatName', >>> 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', >>> 662, N'newCatName', N'new Cat description' >>> >>> Live connection to the back-end is needed only on opening of the source >>> recordsets and on applying batch changes. Therefore connections can be >>> pooled/should be possible to pool (I didn't experiment here) and to >>> share >>> them between several (many) front-end applications/clients if these >>> connections are opened using ActiveX DCOM servers running on server >>> PCs/.NET >>> Remoting(?) objects. As well as actual disconnected recordset creation >>> and >>> reconnection and backend update can be executed on (Web) server side - >>> depending on whatever is used on backend.... >>> >>> Yes, I know dynamic SPs accessing database tables directly do not look >>> nice >>> but there could be many ways to make it working differently using >>> predefined >>> stored procedures (e.g. by serializing ADODB recordset into XML file(s) >>> where all the updates (inserts, deletes, updates) are coded special >>> easily >>> parsed way and then reformat these XML files into the calls to the >>> predefined stored procedures etc.etc. >>> >>> Here is how it looks this saved XML(no direct correspondence with >>> presented >>> above batch T-SQL update) : >>> >>> - >> xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" >>> xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> >>> - >>> - >>> - >> rs:writeunknown="true" >>> rs:basecatalog="Northwind" rs:basetable="Categories1" >>> rs:basecolumn="CategoryID"> >>> >> rs:fixedlength="true" rs:maybenull="false" /> >>> >>> - >> rs:writeunknown="true" >>> rs:basecatalog="Northwind" rs:basetable="Categories1" >>> rs:basecolumn="CategoryName"> >>> >>> >>> - >> rs:writeunknown="true" rs:basecatalog="Northwind" >>> rs:basetable="Categories1" >>> rs:basecolumn="Description"> >>> >> /> >>> >>> >>> >>> >>> - >>> >>> >>> >>> >> Description="Cheeses" >>> /> >>> >> Description="Breads, >>> crackers, pasta, and cereal" /> >>> >>> >>> >>> - >>> - >>> >>> >>> >>> >>> - >>> - >>> >>> >>> >>> >>> >> Description="Inserted2" >>> /> >>> - >>> >> /> >>> >>> - >>> >>> >>> >>> >>> >>> I do not post code here now because I wanted to experiment more and >>> because >>> it would be useful if somebody else tries to repeat the "trick" >>> described >>> above - if it will work for them then a whole set of new opportunities >>> to >>> use MS Access as a real development tool will be opened.... >>> >>> I will post code after additional tests within one-two weeks when it >>> will >>> become clear that it works. >>> >>> Please post any links here if you think that my posted information looks >>> like "wheel reinvention" or you think it doesn't have practical >>> application >>> because of this or that several limitations etc.etc. >>> >>> Thank you. >>> >>> Shamil >>> >>> P.S. I have installed on my PC: >>> >>> - MS Windows 2003 Server SP1 >>> - MS Office 2003/MS Access 2003 SP1 >>> - MS SQL 2000 SP3a >>> - MDAC 2.8 >>> - NET Framework 1.1 and 2.0 >>> - Visual Studio 2003 and 2005 >>> - I have also MS SQL Server 2005 Express edition but I didn't experiment >>> with it >>> >>> P. P.S. Yes, I didn't talk about identity(autonumber) fields - I >>> generally >>> use GUIDs for PKs. >>> To properly manage numeric identity values some more tricks are needed - >>> I'd >>> be grateful if somebody post information on this subject >>> (updategram/diffgram XML is a direct solution here probably - and >>> serialized/saved ADODB batch update can be converted into diffgrams by >>> using >>> XSLT or VB(A) or VB.NET/C#/C++ code etc.) >>> >> >> <<< tail skipped >>> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From mwp.reid at qub.ac.uk Mon Mar 13 13:51:36 2006 From: mwp.reid at qub.ac.uk (Martin Reid) Date: Mon, 13 Mar 2006 19:51:36 -0000 Subject: [AccessD] Access XP forms bound to ADO recordsets - Trim Replies References: <000e01c643aa$e82b2200$647aa8c0@ColbyM6805><05f501c644a3$d1643080$6501a8c0@Nant> <001e01c64560$4fbcd470$6501a8c0@Nant> Message-ID: Great thread but would you mind trimming the replies as they are getting held up by the list limit. Martin New MOD (<: Martin WP Reid Training and Assessment Unit Riddle Hall Belfast tel: 02890 974477 From shamil at users.mns.ru Mon Mar 13 14:19:48 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Mon, 13 Mar 2006 23:19:48 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets - Trim Replies References: <000e01c643aa$e82b2200$647aa8c0@ColbyM6805><05f501c644a3$d1643080$6501a8c0@Nant><001e01c64560$4fbcd470$6501a8c0@Nant> Message-ID: <003301c646db$7d378310$6501a8c0@Nant> Sorry, Martin, I forgot to trim my message this time. I usually do trim messages by cutting all their stuff except the last message in the thread I reply to. Shamil ----- Original Message ----- From: "Martin Reid" To: "Access Developers discussion and problem solving" Sent: Monday, March 13, 2006 10:51 PM Subject: [AccessD] Access XP forms bound to ADO recordsets - Trim Replies Great thread but would you mind trimming the replies as they are getting held up by the list limit. Martin New MOD (<: Martin WP Reid Training and Assessment Unit Riddle Hall Belfast tel: 02890 974477 -------------------------------------------------------------------------------- > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From jwcolby at ColbyConsulting.com Mon Mar 13 16:47:22 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Mon, 13 Mar 2006 17:47:22 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <004401c646d1$1363e1e0$6501a8c0@Nant> Message-ID: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805> >I haven't asked John to approve this statement but I expect he will agree So true, very serious. ;-) John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Monday, March 13, 2006 1:44 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Doing unbound in a "header" record (invoice, for instance) is pretty > straightforward, especially when starting with a bound form and then > deleting the record source property Steve, Myself and John are bounders and we are very serious guys ;) I haven't asked John to approve this statement but I expect he will agree - am I right, John? :) So we are talking here about bound forms (and reports) but bound to ADODB recordsets. Just to make it clear what is discussed in this thread - this is a technique partially described here - http://support.microsoft.com/kb/281998. The difference we are talking about is that we are "exploring the waters" of MS Access forms bound to DISCONNECTED ADODB recordsets. The purpose to do that is to have backend DB(s)unlocked (not even touched by MS Access FE) while the extracted data are edited in MS Access form with subform(s) when both form and its subform(s) may have potentially many rows, which we can edit using built-in MS Access features and then post ALL the changes back at once in an ADODB "AUTOMAGIC" BATH UPDATE or in manually prepared batch update in one transaction etc. (There are other implied very useful features as serializing/transmitting/deserializing/storing/.. batch updates, having light-weight MS Access FEs etc. - but all that will make sense to discuss only when the main technique will start to work stable enough to be used in real life applications.) > I had the best device ever created for holding columns and rows of > data: Access' own Tables! True - I did write such code a long ago for MS Access 97, many others did do that - the difference we're talking about is that we wanted to use bound forms but we do not want to be bound to MS Access (local) tables and we wanted to have as little as possible custom coding and if have such coding then rather generic and flexible and scalable. > and also requires home-grown locking (I added a bit field to invoice > to indicate "in use"), Yes, it will need to use something like that of course - and this is always needed for the optimistic locking, e.g. when one is working in fully unbound mode in VB6 or C#/VB.NET/C++.... Shamil From shamil at users.mns.ru Tue Mar 14 00:01:13 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Tue, 14 Mar 2006 09:01:13 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805> Message-ID: <001301c6472c$d5602960$6501a8c0@Nant> Yes, we're serious :) - here is promised first version of the crash test: http://smsconsulting.spb.ru/download/tests/a2dds.htm It seems to work well. Enjoy! Shamil P.S. That wasn't easy night!.... ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Tuesday, March 14, 2006 1:47 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > >I haven't asked John to approve this statement but I expect he will agree > > So true, very serious. ;-) > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Monday, March 13, 2006 1:44 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > >> Doing unbound in a "header" record (invoice, for instance) is pretty >> straightforward, especially when starting with a bound form and then >> deleting the record source property > Steve, > > Myself and John are bounders and we are very serious guys ;) I haven't > asked > John to approve this statement but I expect he will agree - am I right, > John? :) > > So we are talking here about bound forms (and reports) but bound to ADODB > recordsets. > Just to make it clear what is discussed in this thread - this is a > technique partially described here - > http://support.microsoft.com/kb/281998. > > The difference we are talking about is that we are "exploring the waters" > of > MS Access forms bound to DISCONNECTED ADODB recordsets. The purpose to do > that is to have backend DB(s)unlocked (not even touched by MS Access FE) > while the extracted data are edited in MS Access form with subform(s) when > both form and its subform(s) may have potentially many rows, which we can > edit using built-in MS Access features and then post ALL the changes back > at > once in an ADODB "AUTOMAGIC" BATH UPDATE or in manually prepared batch > update in one transaction etc. (There are other implied very useful > features > as serializing/transmitting/deserializing/storing/.. batch updates, having > light-weight MS Access FEs etc. - but all that will make sense to discuss > only when the main technique will start to work stable enough to be used > in > real life applications.) > >> I had the best device ever created for holding columns and rows of >> data: Access' own Tables! > True - I did write such code a long ago for MS Access 97, many others did > do > that - the difference we're talking about is that we wanted to use bound > forms but we do not want to be bound to MS Access (local) tables and we > wanted to have as little as possible custom coding and if have such coding > then rather generic and flexible and scalable. > >> and also requires home-grown locking (I added a bit field to invoice >> to indicate "in use"), > Yes, it will need to use something like that of course - and this is > always > needed for the optimistic locking, e.g. when one is working in fully > unbound > mode in VB6 or C#/VB.NET/C++.... > > Shamil > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From shamil at users.mns.ru Tue Mar 14 04:26:50 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Tue, 14 Mar 2006 13:26:50 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805> <001301c6472c$d5602960$6501a8c0@Nant> Message-ID: <001001c64751$d4b89ef0$6501a8c0@Nant> Hi All, Just wanted to note that if technique presented here http://smsconsulting.spb.ru/download/tests/a2dds.htm will not work stable there will be another 100% safe workaround to try - a combination of what Steve Conklin mentioned and what presented in the crash test - I mean (dynamically created) local tables in temp databases, which get filled from ADODB disconnected recorset(s) and which MS Access forms are (dynamically) bound too. And here there could be two ways to mirror additions, editions and deletions made via forms on local tables to corresponding ADODB disconnected recordsets to reconnect and to batch update backend DB(s): 1. use special IsNew, IsEdited, IsDeleted flags in local tables and to analyze these flags to mirror changes to ADODB disconnected recordset when Apply/Save button is clicked; 2. use instant mirroring when MS Access form's data change related events fire as it's done in the sample (although it's not finished yet) The latter may need less coding than the former, but the former looks straightforward and promise to be more simple to test - what I personally do not like with the first method is that is has to use IsDeleted flag and all the queries have to be "aware" of that. The latter also promise to work (a bit) quicker. Steve, do you use something like technique N1 outlined above? FYI: the technique from crash test will not work stable with MS Access 2000 for sure - the Recordset property is missing in MS Access 2000 for combo- and list-boxes, but I don't have the latest service pack/release for MS Access 2000 - maybe it fixes this problem.... Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 14, 2006 9:01 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Yes, we're serious :) - here is promised first version of the crash test: > > http://smsconsulting.spb.ru/download/tests/a2dds.htm > > It seems to work well. > > Enjoy! > > Shamil > > P.S. That wasn't easy night!.... > > ----- Original Message ----- > From: "John Colby" > To: "'Access Developers discussion and problem solving'" > > Sent: Tuesday, March 14, 2006 1:47 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> >I haven't asked John to approve this statement but I expect he will >> >agree >> >> So true, very serious. ;-) >> >> >> John W. Colby >> www.ColbyConsulting.com >> >> <<< tail skipped >>> From jwcolby at ColbyConsulting.com Tue Mar 14 08:54:56 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Tue, 14 Mar 2006 09:54:56 -0500 Subject: [AccessD] MSSQL conversion In-Reply-To: <000001c643b0$708e31f0$0200a8c0@danwaters> Message-ID: <00ae01c64777$439c87d0$647aa8c0@ColbyM6805> I would like to thank all those who responded to my email re experience in converting an Access Application to use SQL Server as the BE. I have not yet made a decision on how to handle this specific opportunity. I am keeping all responses in a dedicated email directory so that I have them available as I look at how to handle this. I'm afraid that I am so swamped right now that I am not able to answer each of you individually, but I do thank you for sending me your information. We in AccessD have discussed building a virtual consulting company before, where we shared work that we were unable to efficiently handle ourselves. This is the first time where I have had an excess of work, a nice place to be but at the same time a strain on me and my clients. I hope that I can start working with some of you to handle my overflow when it happens and develop a backup system that allows me to get the work done in a timely manner even when I can't do it directly myself. Thanks again for your responses. John W. Colby www.ColbyConsulting.com From shamil at users.mns.ru Tue Mar 14 11:18:20 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Tue, 14 Mar 2006 20:18:20 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant> <001001c64751$d4b89ef0$6501a8c0@Nant> Message-ID: <007101c6478b$4c9e8040$6501a8c0@Nant> Hi All, New version of crash test published at http://smsconsulting.spb.ru/download/tests/a2dds.htm Previous had bug when working with MS SQL. Sorry for any inconvenience, I will prepare .adp version of the test now and then give it a break.... Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 14, 2006 1:26 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > Just wanted to note that if technique presented here > http://smsconsulting.spb.ru/download/tests/a2dds.htm will not work stable > there will be another 100% safe workaround to try - a combination of what > Steve Conklin mentioned and what presented in the crash test - I mean > (dynamically created) local tables in temp databases, which get filled > from > ADODB disconnected recorset(s) and which MS Access forms are (dynamically) > bound too. And here there could be two ways to mirror additions, editions > and deletions made via forms on local tables to corresponding ADODB > disconnected recordsets to reconnect and to batch update backend DB(s): > > 1. use special IsNew, IsEdited, IsDeleted flags in local tables and to > analyze these flags to mirror changes to ADODB disconnected recordset when > Apply/Save button is clicked; > 2. use instant mirroring when MS Access form's data change related events > fire as it's done in the sample (although it's not finished yet) > > The latter may need less coding than the former, but the former looks > straightforward and promise to be more simple to test - what I personally > do > not like with the first method is that is has to use IsDeleted flag and > all > the queries have to be "aware" of that. The latter also promise to work (a > bit) quicker. > > Steve, do you use something like technique N1 outlined above? > > FYI: the technique from crash test will not work stable with MS Access > 2000 > for sure - the Recordset property is missing in MS Access 2000 for combo- > and list-boxes, but I don't have the latest service pack/release for MS > Access 2000 - maybe it fixes this problem.... > > Shamil <<< tail skipped>>> From shamil at users.mns.ru Tue Mar 14 14:09:21 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Tue, 14 Mar 2006 23:09:21 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant> <007101c6478b$4c9e8040$6501a8c0@Nant> Message-ID: <001201c647a3$3283af10$6501a8c0@Nant> Hi All, ADP version of crash test added here http://smsconsulting.spb.ru/download/tests/a2dds.htm . In fact both mdb and ADP use the same code, which forks in some points on runtime depending on project type it runs in... Within future days/weeks will be coming: - lightweight framework code stored in a library mdb/adp - adding/fixing functionality for MS Access reports - adding/fixing functionality for new rows additions; - adding/fixing functionality for rows deletions. - ... This test/sample still may get stuck somewhere unexpectedly because the "dark unexplored waters" we're trying to glide on may have sharp stones, which can severely damage and sink our lightweight framework/ship... Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 14, 2006 8:18 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > New version of crash test published at > http://smsconsulting.spb.ru/download/tests/a2dds.htm > Previous had bug when working with MS SQL. > Sorry for any inconvenience, > I will prepare .adp version of the test now and then give it a break.... > > Shamil > > ----- Original Message ----- > From: "Shamil Salakhetdinov" > To: "Access Developers discussion and problem solving" > > Sent: Tuesday, March 14, 2006 1:26 PM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Hi All, >> >> Just wanted to note that if technique presented here >> http://smsconsulting.spb.ru/download/tests/a2dds.htm will not work stable >> there will be another 100% safe workaround to try - a combination of what >> Steve Conklin mentioned and what presented in the crash test - I mean >> (dynamically created) local tables in temp databases, which get filled >> from >> ADODB disconnected recorset(s) and which MS Access forms are >> (dynamically) >> bound too. And here there could be two ways to mirror additions, editions >> and deletions made via forms on local tables to corresponding ADODB >> disconnected recordsets to reconnect and to batch update backend DB(s): >> >> 1. use special IsNew, IsEdited, IsDeleted flags in local tables and to >> analyze these flags to mirror changes to ADODB disconnected recordset >> when >> Apply/Save button is clicked; >> 2. use instant mirroring when MS Access form's data change related events >> fire as it's done in the sample (although it's not finished yet) >> >> The latter may need less coding than the former, but the former looks >> straightforward and promise to be more simple to test - what I personally >> do >> not like with the first method is that is has to use IsDeleted flag and >> all >> the queries have to be "aware" of that. The latter also promise to work >> (a >> bit) quicker. >> >> Steve, do you use something like technique N1 outlined above? >> >> FYI: the technique from crash test will not work stable with MS Access >> 2000 >> for sure - the Recordset property is missing in MS Access 2000 for >> combo- >> and list-boxes, but I don't have the latest service pack/release for MS >> Access 2000 - maybe it fixes this problem.... >> >> Shamil > <<< tail skipped>>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Tue Mar 14 19:59:57 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Tue, 14 Mar 2006 20:59:57 -0500 Subject: [AccessD] Parent form PK changed (VALUE) Message-ID: <000001c647d4$2a0901b0$647aa8c0@ColbyM6805> Is there a way (built into Access) to tell if the parent form record changed from the subform? IOW, in the case of a M-M table, implemented in a subform, one of the fields of the M-M would be the parent ID. tblCompany CO_ID CO_Name CO_Etc tblPeople PE_ID PE_Lname PE_Fname PE_Etc tblEmployees EM_ID EM_IDPE EM_IDCO If the parent form is the company, the child form is the employee, the "link" is the EM_IDCO with a combo representing the people. I want to monitor when the parent ID changes (CO_ID) from the subform sfrmEmployee. I know that the subform control has a Link Child Field / Link Master Field pair of properties, but is there a property that feeds the VALUE of the Link Master Field into the subform for it's use? The subform filters its recordset based on the Link Master Field VALUE so it must be able to see it. In fact all I want to know is THAT the Link Master Field VALUE changed so that I can requery a dependent combo in the child form. John W. Colby www.ColbyConsulting.com From jmhecht at earthlink.net Tue Mar 14 22:48:43 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Tue, 14 Mar 2006 20:48:43 -0800 Subject: [AccessD] Parent form PK changed (VALUE) In-Reply-To: <000001c647d4$2a0901b0$647aa8c0@ColbyM6805> Message-ID: <001501c647eb$bcf27210$6701a8c0@HPLaptop> John, Isn't there an old value and new value you can check in the before or after update of the field? Joe Hecht jmhecht at earthlink.net -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Tuesday, March 14, 2006 6:00 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Parent form PK changed (VALUE) Is there a way (built into Access) to tell if the parent form record changed from the subform? IOW, in the case of a M-M table, implemented in a subform, one of the fields of the M-M would be the parent ID. tblCompany CO_ID CO_Name CO_Etc tblPeople PE_ID PE_Lname PE_Fname PE_Etc tblEmployees EM_ID EM_IDPE EM_IDCO If the parent form is the company, the child form is the employee, the "link" is the EM_IDCO with a combo representing the people. I want to monitor when the parent ID changes (CO_ID) from the subform sfrmEmployee. I know that the subform control has a Link Child Field / Link Master Field pair of properties, but is there a property that feeds the VALUE of the Link Master Field into the subform for it's use? The subform filters its recordset based on the Link Master Field VALUE so it must be able to see it. In fact all I want to know is THAT the Link Master Field VALUE changed so that I can requery a dependent combo in the child form. John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From joeget at vgernet.net Wed Mar 15 01:14:45 2006 From: joeget at vgernet.net (John Eget) Date: Wed, 15 Mar 2006 02:14:45 -0500 Subject: [AccessD] Memo field on report Message-ID: <001101c64800$30e12860$cbc2f63f@JOHN> All I have several make table queries to make a selection of data for a report. One of the fields (Remarks) is a Memo field. When displayed on the report, the memo field is limited in size and does not display all of the text in the memo field. Does anyone have an idea? It is almost as if the memo field is being displayed as a text field John From joeget at vgernet.net Wed Mar 15 01:15:22 2006 From: joeget at vgernet.net (John Eget) Date: Wed, 15 Mar 2006 02:15:22 -0500 Subject: [AccessD] Memo field on report Message-ID: <001501c64800$3d22d290$cbc2f63f@JOHN> All I have several make table queries to make a selection of data for a report. One of the fields (Remarks) is a Memo field. When displayed on the report, the memo field is limited in size and does not display all of the text in the memo field. Does anyone have an idea? It is almost as if the memo field is being displayed as a text field John From Chris.Foote at uk.thalesgroup.com Wed Mar 15 01:26:09 2006 From: Chris.Foote at uk.thalesgroup.com (Foote, Chris) Date: Wed, 15 Mar 2006 07:26:09 -0000 Subject: [AccessD] Memo field on report Message-ID: <7303A459C921B5499AF732CCEEAD2B7F3E6C36@craws161660.int.rdel.co.uk> Good morning John! Have you checked that the "Can Grow" parameter for your relevant control on the report is set to "Yes"? Regards Chris F > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget > Sent: Wednesday, March 15, 2006 7:15 AM > To: AccessD at databaseadvisors.com > Subject: [AccessD] Memo field on report > > > All > I have several make table queries to make a selection of data > for a report. One of the fields (Remarks) is a Memo field. > When displayed on the report, the memo field is limited in > size and does not display all of the text in the memo field. > Does anyone have an idea? It is almost as if the memo field > is being displayed as a text field > John > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From joeget at vgernet.net Wed Mar 15 01:35:03 2006 From: joeget at vgernet.net (John Eget) Date: Wed, 15 Mar 2006 02:35:03 -0500 Subject: [AccessD] Memo field on report References: <7303A459C921B5499AF732CCEEAD2B7F3E6C36@craws161660.int.rdel.co.uk> Message-ID: <000801c64802$fceaf970$cbc2f63f@JOHN> Good Morning to you also. Absolutely! That was one of the very first things that I checked ----- Original Message ----- From: "Foote, Chris" To: "'Access Developers discussion and problem solving'" Sent: Wednesday, March 15, 2006 2:26 AM Subject: Re: [AccessD] Memo field on report > Good morning John! > > Have you checked that the "Can Grow" parameter for your relevant control > on > the report is set to "Yes"? > > Regards > Chris F > >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget >> Sent: Wednesday, March 15, 2006 7:15 AM >> To: AccessD at databaseadvisors.com >> Subject: [AccessD] Memo field on report >> >> >> All >> I have several make table queries to make a selection of data >> for a report. One of the fields (Remarks) is a Memo field. >> When displayed on the report, the memo field is limited in >> size and does not display all of the text in the memo field. >> Does anyone have an idea? It is almost as if the memo field >> is being displayed as a text field >> John >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From joeget at vgernet.net Wed Mar 15 01:39:23 2006 From: joeget at vgernet.net (John Eget) Date: Wed, 15 Mar 2006 02:39:23 -0500 Subject: [AccessD] User security Message-ID: <001b01c64803$99eb8a50$cbc2f63f@JOHN> All I have been discovering lately that records are being edited by other individuals than generated the record. All records are tagged with an individuals name. Is there a simple way to insure that records cannot be edited by another individual. I tried going thru the security wizard but got side tracked with all of the options and was not successful John From joeget at vgernet.net Wed Mar 15 01:39:42 2006 From: joeget at vgernet.net (John Eget) Date: Wed, 15 Mar 2006 02:39:42 -0500 Subject: [AccessD] User security Message-ID: <002201c64803$a309ad60$cbc2f63f@JOHN> All I have been discovering lately that records are being edited by other individuals than generated the record. All records are tagged with an individuals name. Is there a simple way to insure that records cannot be edited by another individual. I tried going thru the security wizard but got side tracked with all of the options and was not successful John From andy at minstersystems.co.uk Wed Mar 15 01:41:00 2006 From: andy at minstersystems.co.uk (Andy Lacey) Date: Wed, 15 Mar 2006 07:41:00 -0000 Subject: [AccessD] Memo field on report In-Reply-To: <7303A459C921B5499AF732CCEEAD2B7F3E6C36@craws161660.int.rdel.co.uk> Message-ID: <002e01c64803$ce8089f0$c1c10c54@minster33c3r25> You'll also need CanGrow set Yes for the section the control's in. -- Andy Lacey http://www.minstersystems.co.uk > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of > Foote, Chris > Sent: 15 March 2006 07:26 > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Memo field on report > > > Good morning John! > > Have you checked that the "Can Grow" parameter for your > relevant control on the report is set to "Yes"? > > Regards > Chris F > > > -----Original Message----- > > From: accessd-bounces at databaseadvisors.com > > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget > > Sent: Wednesday, March 15, 2006 7:15 AM > > To: AccessD at databaseadvisors.com > > Subject: [AccessD] Memo field on report > > > > > > All > > I have several make table queries to make a selection of data > > for a report. One of the fields (Remarks) is a Memo field. > > When displayed on the report, the memo field is limited in > > size and does not display all of the text in the memo field. > > Does anyone have an idea? It is almost as if the memo field > > is being displayed as a text field > > John > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > From Chris.Foote at uk.thalesgroup.com Wed Mar 15 01:44:25 2006 From: Chris.Foote at uk.thalesgroup.com (Foote, Chris) Date: Wed, 15 Mar 2006 07:44:25 -0000 Subject: [AccessD] Memo field on report Message-ID: <7303A459C921B5499AF732CCEEAD2B7F3E6C37@craws161660.int.rdel.co.uk> Ok John! Is the "Can Grow" parameter for the section that contains the control set to "Yes"? Regards Chris F > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget > Sent: Wednesday, March 15, 2006 7:35 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Memo field on report > > > Good Morning to you also. > > Absolutely! That was one of the very first things that I checked > > ----- Original Message ----- > From: "Foote, Chris" > To: "'Access Developers discussion and problem solving'" > > Sent: Wednesday, March 15, 2006 2:26 AM > Subject: Re: [AccessD] Memo field on report > > > > Good morning John! > > > > Have you checked that the "Can Grow" parameter for your > relevant control > > on > > the report is set to "Yes"? > > > > Regards > > Chris F > > > >> -----Original Message----- > >> From: accessd-bounces at databaseadvisors.com > >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget > >> Sent: Wednesday, March 15, 2006 7:15 AM > >> To: AccessD at databaseadvisors.com > >> Subject: [AccessD] Memo field on report > >> > >> > >> All > >> I have several make table queries to make a selection of data > >> for a report. One of the fields (Remarks) is a Memo field. > >> When displayed on the report, the memo field is limited in > >> size and does not display all of the text in the memo field. > >> Does anyone have an idea? It is almost as if the memo field > >> is being displayed as a text field > >> John From joeget at vgernet.net Wed Mar 15 01:48:19 2006 From: joeget at vgernet.net (John Eget) Date: Wed, 15 Mar 2006 02:48:19 -0500 Subject: [AccessD] Memo field on report References: <7303A459C921B5499AF732CCEEAD2B7F3E6C37@craws161660.int.rdel.co.uk> Message-ID: <003101c64804$d720d500$cbc2f63f@JOHN> Absolutely, the detail section is also set to grow. ----- Original Message ----- From: "Foote, Chris" To: "'Access Developers discussion and problem solving'" Sent: Wednesday, March 15, 2006 2:44 AM Subject: Re: [AccessD] Memo field on report > Ok John! > > Is the "Can Grow" parameter for the section that contains the control set > to > "Yes"? > > Regards > Chris F > >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget >> Sent: Wednesday, March 15, 2006 7:35 AM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Memo field on report >> >> >> Good Morning to you also. >> >> Absolutely! That was one of the very first things that I checked >> >> ----- Original Message ----- >> From: "Foote, Chris" >> To: "'Access Developers discussion and problem solving'" >> >> Sent: Wednesday, March 15, 2006 2:26 AM >> Subject: Re: [AccessD] Memo field on report >> >> >> > Good morning John! >> > >> > Have you checked that the "Can Grow" parameter for your >> relevant control >> > on >> > the report is set to "Yes"? >> > >> > Regards >> > Chris F >> > >> >> -----Original Message----- >> >> From: accessd-bounces at databaseadvisors.com >> >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget >> >> Sent: Wednesday, March 15, 2006 7:15 AM >> >> To: AccessD at databaseadvisors.com >> >> Subject: [AccessD] Memo field on report >> >> >> >> >> >> All >> >> I have several make table queries to make a selection of data >> >> for a report. One of the fields (Remarks) is a Memo field. >> >> When displayed on the report, the memo field is limited in >> >> size and does not display all of the text in the memo field. >> >> Does anyone have an idea? It is almost as if the memo field >> >> is being displayed as a text field >> >> John > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From Chris.Foote at uk.thalesgroup.com Wed Mar 15 01:55:19 2006 From: Chris.Foote at uk.thalesgroup.com (Foote, Chris) Date: Wed, 15 Mar 2006 07:55:19 -0000 Subject: [AccessD] Memo field on report Message-ID: <7303A459C921B5499AF732CCEEAD2B7F3E6C38@craws161660.int.rdel.co.uk> That's me out of ideas then ;-) I assume that you've checked that the temporary tables contain the Remarks contents and that this is not being truncated somewhere other than the report? Andy? Any other ideas? Chris F > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget > Sent: Wednesday, March 15, 2006 7:48 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Memo field on report > > > Absolutely, the detail section is also set to grow. > ----- Original Message ----- > From: "Foote, Chris" > To: "'Access Developers discussion and problem solving'" > > Sent: Wednesday, March 15, 2006 2:44 AM > Subject: Re: [AccessD] Memo field on report > > > > Ok John! > > > > Is the "Can Grow" parameter for the section that contains > the control set > > to > > "Yes"? > > > > Regards > > Chris F > > > >> -----Original Message----- > >> From: accessd-bounces at databaseadvisors.com > >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget > >> Sent: Wednesday, March 15, 2006 7:35 AM > >> To: Access Developers discussion and problem solving > >> Subject: Re: [AccessD] Memo field on report > >> > >> > >> Good Morning to you also. > >> > >> Absolutely! That was one of the very first things that I checked > >> > >> ----- Original Message ----- > >> From: "Foote, Chris" > >> To: "'Access Developers discussion and problem solving'" > >> > >> Sent: Wednesday, March 15, 2006 2:26 AM > >> Subject: Re: [AccessD] Memo field on report > >> > >> > >> > Good morning John! > >> > > >> > Have you checked that the "Can Grow" parameter for your > >> relevant control > >> > on > >> > the report is set to "Yes"? > >> > > >> > Regards > >> > Chris F > >> > > >> >> -----Original Message----- > >> >> From: accessd-bounces at databaseadvisors.com > >> >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf > Of John Eget > >> >> Sent: Wednesday, March 15, 2006 7:15 AM > >> >> To: AccessD at databaseadvisors.com > >> >> Subject: [AccessD] Memo field on report > >> >> > >> >> > >> >> All > >> >> I have several make table queries to make a selection of data > >> >> for a report. One of the fields (Remarks) is a Memo field. > >> >> When displayed on the report, the memo field is limited in > >> >> size and does not display all of the text in the memo field. > >> >> Does anyone have an idea? It is almost as if the memo field > >> >> is being displayed as a text field > >> >> John > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From andy at minstersystems.co.uk Wed Mar 15 02:06:09 2006 From: andy at minstersystems.co.uk (Andy Lacey) Date: Wed, 15 Mar 2006 08:06:09 -0000 Subject: [AccessD] Memo field on report In-Reply-To: <7303A459C921B5499AF732CCEEAD2B7F3E6C38@craws161660.int.rdel.co.uk> Message-ID: <000001c64807$51957c80$c1c10c54@minster33c3r25> Hard to imagine. If you run the recordsource of the report as a straight select query can you definitely see all of the data in this memo, ie is it definitely the report that's doing this? Andy > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of > Foote, Chris > Sent: 15 March 2006 07:55 > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Memo field on report > > > That's me out of ideas then ;-) > > I assume that you've checked that the temporary tables > contain the Remarks contents and that this is not being > truncated somewhere other than the report? > > Andy? Any other ideas? > > Chris F > > > -----Original Message----- > > From: accessd-bounces at databaseadvisors.com > > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget > > Sent: Wednesday, March 15, 2006 7:48 AM > > To: Access Developers discussion and problem solving > > Subject: Re: [AccessD] Memo field on report > > > > > > Absolutely, the detail section is also set to grow. > > ----- Original Message ----- > > From: "Foote, Chris" > > To: "'Access Developers discussion and problem solving'" > > > > Sent: Wednesday, March 15, 2006 2:44 AM > > Subject: Re: [AccessD] Memo field on report > > > > > > > Ok John! > > > > > > Is the "Can Grow" parameter for the section that contains > > the control set > > > to > > > "Yes"? > > > > > > Regards > > > Chris F > > > > > >> -----Original Message----- > > >> From: accessd-bounces at databaseadvisors.com > > >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf > Of John Eget > > >> Sent: Wednesday, March 15, 2006 7:35 AM > > >> To: Access Developers discussion and problem solving > > >> Subject: Re: [AccessD] Memo field on report > > >> > > >> > > >> Good Morning to you also. > > >> > > >> Absolutely! That was one of the very first things that I checked > > >> > > >> ----- Original Message ----- > > >> From: "Foote, Chris" > > >> To: "'Access Developers discussion and problem solving'" > > >> > > >> Sent: Wednesday, March 15, 2006 2:26 AM > > >> Subject: Re: [AccessD] Memo field on report > > >> > > >> > > >> > Good morning John! > > >> > > > >> > Have you checked that the "Can Grow" parameter for your > > >> relevant control > > >> > on > > >> > the report is set to "Yes"? > > >> > > > >> > Regards > > >> > Chris F > > >> > > > >> >> -----Original Message----- > > >> >> From: accessd-bounces at databaseadvisors.com > > >> >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf > > Of John Eget > > >> >> Sent: Wednesday, March 15, 2006 7:15 AM > > >> >> To: AccessD at databaseadvisors.com > > >> >> Subject: [AccessD] Memo field on report > > >> >> > > >> >> > > >> >> All > > >> >> I have several make table queries to make a selection of data > > >> >> for a report. One of the fields (Remarks) is a Memo > field. When > > >> >> displayed on the report, the memo field is limited in > size and > > >> >> does not display all of the text in the memo field. > Does anyone > > >> >> have an idea? It is almost as if the memo field is being > > >> >> displayed as a text field John > > > -- > > > AccessD mailing list > > > AccessD at databaseadvisors.com > > > http://databaseadvisors.com/mailman/listinfo/accessd > > > Website: http://www.databaseadvisors.com > > > > > > > > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > From joeget at vgernet.net Wed Mar 15 02:44:59 2006 From: joeget at vgernet.net (John Eget) Date: Wed, 15 Mar 2006 03:44:59 -0500 Subject: [AccessD] Memo field on report References: <7303A459C921B5499AF732CCEEAD2B7F3E6C38@craws161660.int.rdel.co.uk> Message-ID: <000a01c6480c$c2163300$cbc2f63f@JOHN> my final query has the total option enabled and that is truncating the memo field. so now i know ----- Original Message ----- From: "Foote, Chris" To: "'Access Developers discussion and problem solving'" Sent: Wednesday, March 15, 2006 2:55 AM Subject: Re: [AccessD] Memo field on report > That's me out of ideas then ;-) > > I assume that you've checked that the temporary tables contain the Remarks > contents and that this is not being truncated somewhere other than the > report? > > Andy? Any other ideas? > > Chris F > >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget >> Sent: Wednesday, March 15, 2006 7:48 AM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Memo field on report >> >> >> Absolutely, the detail section is also set to grow. >> ----- Original Message ----- >> From: "Foote, Chris" >> To: "'Access Developers discussion and problem solving'" >> >> Sent: Wednesday, March 15, 2006 2:44 AM >> Subject: Re: [AccessD] Memo field on report >> >> >> > Ok John! >> > >> > Is the "Can Grow" parameter for the section that contains >> the control set >> > to >> > "Yes"? >> > >> > Regards >> > Chris F >> > >> >> -----Original Message----- >> >> From: accessd-bounces at databaseadvisors.com >> >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget >> >> Sent: Wednesday, March 15, 2006 7:35 AM >> >> To: Access Developers discussion and problem solving >> >> Subject: Re: [AccessD] Memo field on report >> >> >> >> >> >> Good Morning to you also. >> >> >> >> Absolutely! That was one of the very first things that I checked >> >> >> >> ----- Original Message ----- >> >> From: "Foote, Chris" >> >> To: "'Access Developers discussion and problem solving'" >> >> >> >> Sent: Wednesday, March 15, 2006 2:26 AM >> >> Subject: Re: [AccessD] Memo field on report >> >> >> >> >> >> > Good morning John! >> >> > >> >> > Have you checked that the "Can Grow" parameter for your >> >> relevant control >> >> > on >> >> > the report is set to "Yes"? >> >> > >> >> > Regards >> >> > Chris F >> >> > >> >> >> -----Original Message----- >> >> >> From: accessd-bounces at databaseadvisors.com >> >> >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf >> Of John Eget >> >> >> Sent: Wednesday, March 15, 2006 7:15 AM >> >> >> To: AccessD at databaseadvisors.com >> >> >> Subject: [AccessD] Memo field on report >> >> >> >> >> >> >> >> >> All >> >> >> I have several make table queries to make a selection of data >> >> >> for a report. One of the fields (Remarks) is a Memo field. >> >> >> When displayed on the report, the memo field is limited in >> >> >> size and does not display all of the text in the memo field. >> >> >> Does anyone have an idea? It is almost as if the memo field >> >> >> is being displayed as a text field >> >> >> John >> > -- >> > AccessD mailing list >> > AccessD at databaseadvisors.com >> > http://databaseadvisors.com/mailman/listinfo/accessd >> > Website: http://www.databaseadvisors.com >> > >> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From Chris.Foote at uk.thalesgroup.com Wed Mar 15 02:54:35 2006 From: Chris.Foote at uk.thalesgroup.com (Foote, Chris) Date: Wed, 15 Mar 2006 08:54:35 -0000 Subject: [AccessD] Memo field on report Message-ID: <7303A459C921B5499AF732CCEEAD2B7F3E6C39@craws161660.int.rdel.co.uk> Ah ha! Glad you are now sorted John! Regards Chris F > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget > Sent: Wednesday, March 15, 2006 8:45 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Memo field on report > > > my final query has the total option enabled and that is > truncating the memo > field. > > so now i know > > > ----- Original Message ----- > From: "Foote, Chris" > To: "'Access Developers discussion and problem solving'" > > Sent: Wednesday, March 15, 2006 2:55 AM > Subject: Re: [AccessD] Memo field on report > > > > That's me out of ideas then ;-) > > > > I assume that you've checked that the temporary tables > contain the Remarks > > contents and that this is not being truncated somewhere > other than the > > report? > > > > Andy? Any other ideas? > > > > Chris F > From shamil at users.mns.ru Wed Mar 15 03:14:55 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Wed, 15 Mar 2006 12:14:55 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant> <001201c647a3$3283af10$6501a8c0@Nant> Message-ID: <001101c64810$f9ad0420$6501a8c0@Nant> Hi All, New version of tests is now available at http://smsconsulting.spb.ru/download/tests/a2dds.htm . It uses library mdb as it was planned and it has some other improvements. Some users report they have problems with MS Access XP. I did test on my main development PC and it worked OK with MS Access XP. Your additional feedback on this subject would be very useful to fix the problem and to improve the tests! Thank you. Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 14, 2006 11:09 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > ADP version of crash test added here > http://smsconsulting.spb.ru/download/tests/a2dds.htm . > > In fact both mdb and ADP use the same code, which forks in some points on > runtime depending on project type it runs in... > > Within future days/weeks will be coming: > > - lightweight framework code stored in a library mdb/adp > - adding/fixing functionality for MS Access reports > - adding/fixing functionality for new rows additions; > - adding/fixing functionality for rows deletions. > - ... > > This test/sample still may get stuck somewhere unexpectedly because the > "dark unexplored waters" we're trying to glide on may have sharp stones, > which can severely damage and sink our lightweight framework/ship... > > Shamil > <<< tail skipped >>> From joeget at vgernet.net Wed Mar 15 03:18:31 2006 From: joeget at vgernet.net (John Eget) Date: Wed, 15 Mar 2006 04:18:31 -0500 Subject: [AccessD] Memo field on report References: <7303A459C921B5499AF732CCEEAD2B7F3E6C39@craws161660.int.rdel.co.uk> Message-ID: <001701c64811$70ee7f00$cbc2f63f@JOHN> had to do summation on report, thanks for the hint. it made a difference ----- Original Message ----- From: "Foote, Chris" To: "'Access Developers discussion and problem solving'" Sent: Wednesday, March 15, 2006 3:54 AM Subject: Re: [AccessD] Memo field on report > Ah ha! > > Glad you are now sorted John! > > Regards > Chris F > >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget >> Sent: Wednesday, March 15, 2006 8:45 AM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Memo field on report >> >> >> my final query has the total option enabled and that is >> truncating the memo >> field. >> >> so now i know >> >> >> ----- Original Message ----- >> From: "Foote, Chris" >> To: "'Access Developers discussion and problem solving'" >> >> Sent: Wednesday, March 15, 2006 2:55 AM >> Subject: Re: [AccessD] Memo field on report >> >> >> > That's me out of ideas then ;-) >> > >> > I assume that you've checked that the temporary tables >> contain the Remarks >> > contents and that this is not being truncated somewhere >> other than the >> > report? >> > >> > Andy? Any other ideas? >> > >> > Chris F >> > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From pcs at azizaz.com Wed Mar 15 03:49:48 2006 From: pcs at azizaz.com (Borge Hansen) Date: Wed, 15 Mar 2006 19:49:48 +1000 Subject: [AccessD] Memo field on report References: <7303A459C921B5499AF732CCEEAD2B7F3E6C39@craws161660.int.rdel.co.uk> Message-ID: <0b4c01c64815$cca730e0$fa10a8c0@Albatross> I have experienced something similar (memo field being truncated) when using a number of query steps in order to get the recordsource for a report. What I did was to leave the memo field out from the 'query steps' and then use a join between the source table for the memo field and the resulting query from the query steps. regards borge > > > > my final query has the total option enabled and that is > > truncating the memo > > field. > > From stuart at lexacorp.com.pg Wed Mar 15 03:59:14 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Wed, 15 Mar 2006 19:59:14 +1000 Subject: [AccessD] User security In-Reply-To: <002201c64803$a309ad60$cbc2f63f@JOHN> Message-ID: <44187212.21017.CAF5998@stuart.lexacorp.com.pg> On 15 Mar 2006 at 2:39, John Eget wrote: > All > I have been discovering lately that records are being edited by other > individuals than generated the record. All records are tagged with an > individuals name. Is there a simple way to insure that records cannot be > edited by another individual. I tried going thru the security wizard but > got side tracked with all of the options and was not successful John -- > AccessD mailing list AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd Website: > http://www.databaseadvisors.com In the BeforeUpdate of the form, compare the original individuals name with the current username and set Cancel = True with an appropriate message if they are not the same. -- Stuart From ecritt1 at alltel.net Wed Mar 15 05:55:40 2006 From: ecritt1 at alltel.net (Penn White) Date: Wed, 15 Mar 2006 06:55:40 -0500 Subject: [AccessD] Using Multidimensional Arrays References: <010501c641d1$fd330f30$0302a8c0@pennp4> Message-ID: <001401c64827$61fd6a40$0302a8c0@pennp4> Just to be complete for the archives, I thought I'd post my solution to this problem. Thanks very much to all who offered advice and got me thinking and exploring several new ways of doing things, especially using Custom Collection Classes which I didn't actually need here but will definitely use in future develpment tasks. Some references I found useful were the following: 1. Using Custom Collection Classes in Access http://www.databaseadvisors.com/newsletters/newsletter200503/0503usingcustomcollections/using%20custom%20collections%20in%20microsoft%20access.htm 2. How to Programmatically Export Items to Microsoft Access http://support.microsoft.com/?kbid=253794 3. Ten Tips for Microsoft Outlook Developers http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnout2k2/html/odc_novoltips.asp *************** CODE *************** Function Fn_CreateRecipList(ctlList As Control) As String ' 1. Creates Recipient string for 'SendObject' email. ' 2. Verifies that there is a Contact in Outlook for each Recipient. ' 3. If Contact in Outlook, verifies Email Address is current. ' Note: I have my own Error Handling routine so just substitute it with your own. Dim varItem As Variant Dim strRecip1 As String Dim strFirst1 As String Dim strLast1 As String Dim strEmail1 As String Dim strRecip As String ' Set up Outlook objects. Dim ol As New Outlook.Application Dim olCi As Outlook.ContactItem Dim cf As Outlook.MAPIFolder Dim olns As Outlook.NameSpace Dim olItems As Outlook.Items On Error GoTo Err_Fn_CreateRecipList ' Revised Error Handler Set ol = CreateObject("Outlook.Application") Set olns = ol.GetNamespace("MAPI") Set cf = olns.GetDefaultFolder(olFolderContacts) Set olItems = cf.Items For Each varItem In ctlList.ItemsSelected strFirst1 = ctlList.Column(3, varItem) strLast1 = ctlList.Column(2, varItem) If strFirst1 = "" And strLast1 = "" Then strRecip1 = ctlList.Column(1, varItem) strLast1 = strRecip1 Else strRecip1 = strFirst1 & " " & strLast1 End If strEmail1 = Fn_CreateOLEmail(ctlList.Column(4, varItem)) Set olCi = cf.Items.Find("[FullName] = '" & strRecip1 & "'") If TypeName(olCi) = "Nothing" Then ' Add Contact Set olCi = ol.CreateItem(olContactItem) olCi.FirstName = strFirst1 olCi.LastName = strLast1 olCi.Email1Address = strEmail1 olCi.Save Else ' Verify Email Address If olCi.Email1Address <> strEmail1 Then olCi.Email1Address = strEmail1 olCi.Save End If End If If Fn_IsNothing(strRecip) Then strRecip = strRecip1 Else strRecip = strRecip & "; " & strRecip1 End If Next varItem Fn_CreateRecipList = strRecip Exit_Fn_CreateRecipList: Set olCi = Nothing Set olItems = Nothing Set cf = Nothing Set olns = Nothing Set ol = Nothing Exit Function Err_Fn_CreateRecipList: Select Case Err.Number Case 0 Resume Next Case Else If Fn_ShowGenericErrorMsg("M_MiscFunctions", "Fn_CreateRecipList", Err.Number, Err.Description) = True Then Stop Resume Else Resume Exit_Fn_CreateRecipList End If End Select End Function From Gustav at cactus.dk Wed Mar 15 08:02:36 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 15 Mar 2006 15:02:36 +0100 Subject: [AccessD] Memo field on report Message-ID: Hi John First thing to do is to add one or two linefeed to prevent this. It's an old bug, I don't if it is still present. Try, in your query, concatenating the output memo field with a couple of linefeeds: MemoOut: [myMemoField] & Chr(13) & Chr(10) & Chr(13) & Chr(10) If that doesn't help, extract the memo field record by record: http://databaseadvisors.com/pipermail/accessd/2003-December/018123.html /gustav >>> joeget at vgernet.net 15-03-2006 08:15:22 >>> All I have several make table queries to make a selection of data for a report. One of the fields (Remarks) is a Memo field. When displayed on the report, the memo field is limited in size and does not display all of the text in the memo field. Does anyone have an idea? It is almost as if the memo field is being displayed as a text field John From rusty.hammond at cpiqpc.com Wed Mar 15 09:05:20 2006 From: rusty.hammond at cpiqpc.com (rusty.hammond at cpiqpc.com) Date: Wed, 15 Mar 2006 09:05:20 -0600 Subject: [AccessD] Parent form PK changed (VALUE) Message-ID: <8301C8A868251E4C8ECD3D4FFEA40F8A154F8578@cpixchng-1.cpiqpc.net> John, Could you use the OnCurrent property of the parent form to requery the combo on the subform or maybe the AfterUpdate property of the Master field? -----Original Message----- From: John Colby [mailto:jwcolby at colbyconsulting.com] Sent: Tuesday, March 14, 2006 8:00 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Parent form PK changed (VALUE) Is there a way (built into Access) to tell if the parent form record changed from the subform? IOW, in the case of a M-M table, implemented in a subform, one of the fields of the M-M would be the parent ID. tblCompany CO_ID CO_Name CO_Etc tblPeople PE_ID PE_Lname PE_Fname PE_Etc tblEmployees EM_ID EM_IDPE EM_IDCO If the parent form is the company, the child form is the employee, the "link" is the EM_IDCO with a combo representing the people. I want to monitor when the parent ID changes (CO_ID) from the subform sfrmEmployee. I know that the subform control has a Link Child Field / Link Master Field pair of properties, but is there a property that feeds the VALUE of the Link Master Field into the subform for it's use? The subform filters its recordset based on the Link Master Field VALUE so it must be able to see it. In fact all I want to know is THAT the Link Master Field VALUE changed so that I can requery a dependent combo in the child form. John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com ********************************************************************** WARNING: All e-mail sent to and from this address will be received, scanned or otherwise recorded by the CPI Qualified Plan Consultants, Inc. corporate e-mail system and is subject to archival, monitoring or review by, and/or disclosure to, someone other than the recipient. ********************************************************************** From cfoust at infostatsystems.com Wed Mar 15 10:32:16 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Wed, 15 Mar 2006 08:32:16 -0800 Subject: [AccessD] Parent form PK changed (VALUE) Message-ID: If the parent and child forms are linked, the link is between the recordsets or between the recordset on the child and unbound controls on the parent. It's essentially a join, so they don't need to read one another's values. Probably the simplest way to do it would be to store a module level value in the subform in the current event and then check it in each OnCurrent to see if it matches the Parent value. If not, change it to the new value and requery your combo. It would be even simpler to just requery it in the Current event, but that could lead to requerying it unnecessarily. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Tuesday, March 14, 2006 6:00 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Parent form PK changed (VALUE) Is there a way (built into Access) to tell if the parent form record changed from the subform? IOW, in the case of a M-M table, implemented in a subform, one of the fields of the M-M would be the parent ID. tblCompany CO_ID CO_Name CO_Etc tblPeople PE_ID PE_Lname PE_Fname PE_Etc tblEmployees EM_ID EM_IDPE EM_IDCO If the parent form is the company, the child form is the employee, the "link" is the EM_IDCO with a combo representing the people. I want to monitor when the parent ID changes (CO_ID) from the subform sfrmEmployee. I know that the subform control has a Link Child Field / Link Master Field pair of properties, but is there a property that feeds the VALUE of the Link Master Field into the subform for it's use? The subform filters its recordset based on the Link Master Field VALUE so it must be able to see it. In fact all I want to know is THAT the Link Master Field VALUE changed so that I can requery a dependent combo in the child form. John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bheid at appdevgrp.com Wed Mar 15 10:38:07 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Wed, 15 Mar 2006 11:38:07 -0500 Subject: [AccessD] [SPAM SUSPECT] User security In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D6B112@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D35104@ADGSERVER> Have you locked out table access? That is, disable the F11 key and hide the database window. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Eget Sent: Wednesday, March 15, 2006 2:39 AM To: Access Developers discussion and problem solving Subject: [SPAM SUSPECT] [AccessD] User security Importance: Low All I have been discovering lately that records are being edited by other individuals than generated the record. All records are tagged with an individuals name. Is there a simple way to insure that records cannot be edited by another individual. I tried going thru the security wizard but got side tracked with all of the options and was not successful John From ewaldt at gdls.com Wed Mar 15 10:58:49 2006 From: ewaldt at gdls.com (ewaldt at gdls.com) Date: Wed, 15 Mar 2006 11:58:49 -0500 Subject: [AccessD] (no subject) In-Reply-To: Message-ID: I have a form with a list of options of like type, each with its own checkbox (think "listbox" with multi-select enabled, but the boss wanted checkboxes). When a checkbox is checked, I want a listbox to appear with corresponding choices from another table. I then need to be able to capture what has been chosen. Remember that the user can choose more than one checkbox, but will then choose only one (if any) from among the choices in the corresponding listbox. I hope this is clear. Any help will be appreciated. TIA, Tom Ewald This is an e-mail from General Dynamics Land Systems. It is for the intended recipient only and may contain confidential and privileged information. No one else may read, print, store, copy, forward or act in reliance on it or its attachments. If you are not the intended recipient, please return this message to the sender and delete the message and any attachments from your computer. Your cooperation is appreciated. From Lambert.Heenan at AIG.com Wed Mar 15 11:04:29 2006 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Wed, 15 Mar 2006 11:04:29 -0600 Subject: [AccessD] User security Message-ID: <1D7828CDB8350747AFE9D69E0E90DA1F1E8895D1@xlivmbx21.aig.com> "All records are tagged with an individuals name" do you mean you are storing the user's LAN ID with each record as it is created? If so then in your forms' OnCurrent Events you can check the user's LAN ID again and if it differs from the stored ID in the record deny write access. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Eget Sent: Wednesday, March 15, 2006 2:39 AM To: Access Developers discussion and problem solving Subject: [AccessD] User security All I have been discovering lately that records are being edited by other individuals than generated the record. All records are tagged with an individuals name. Is there a simple way to insure that records cannot be edited by another individual. I tried going thru the security wizard but got side tracked with all of the options and was not successful John -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From reuben at gfconsultants.com Wed Mar 15 11:13:43 2006 From: reuben at gfconsultants.com (Reuben Cummings) Date: Wed, 15 Mar 2006 12:13:43 -0500 Subject: [AccessD] (no subject) In-Reply-To: Message-ID: I would simply hide and unhide all the listboxes on the form right next the corresponding check box. Only show the list boxes when the appropriate check box is picked. Reuben Cummings GFC, LLC 812.523.1017 > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of > ewaldt at gdls.com > Sent: Wednesday, March 15, 2006 11:59 AM > To: accessd at databaseadvisors.com > Subject: [AccessD] (no subject) > > > I have a form with a list of options of like type, each with its own > checkbox (think "listbox" with multi-select enabled, but the boss wanted > checkboxes). > > When a checkbox is checked, I want a listbox to appear with corresponding > choices from another table. I then need to be able to capture > what has been > chosen. Remember that the user can choose more than one checkbox, but will > then choose only one (if any) from among the choices in the corresponding > listbox. > > I hope this is clear. Any help will be appreciated. > > TIA, > > Tom Ewald > > > > > This is an e-mail from General Dynamics Land Systems. It is for > the intended recipient only and may contain confidential and > privileged information. No one else may read, print, store, > copy, forward or act in reliance on it or its attachments. If > you are not the intended recipient, please return this message to > the sender and delete the message and any attachments from your > computer. Your cooperation is appreciated. > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From JRojas at tnco-inc.com Wed Mar 15 11:56:26 2006 From: JRojas at tnco-inc.com (Joe Rojas) Date: Wed, 15 Mar 2006 12:56:26 -0500 Subject: [AccessD] Regular Expressions? Message-ID: <758E92433C4F3740B67BE4DD369AF5771569FF@ex2k3.corp.tnco-inc.com> How can I add the ability to use regular expression in Access 2000? **Background** We are performing data conversion from our old MRP system to our new ERP system and we are using Access to massage the data in between the two systems. One of the decisions that we made was to go from all capital letters in our part number descriptions to proper case. At first I thought I would just convert each word to proper case but then I noticed that some of our descriptions look like "24CM 10MM ADAPTOR SLEEVE LG" and we would like the resulting text to look like "24CM 10MM Adaptor Sleeve LG" not "24cm Adaptor Sleeve Lg". My best guess is to use regular expressions to identify most patterns and then probably go over the data manual to make sure we didn't miss anything. Anyone have a better idea? Thanks, Joe Rojas IT Manager TNCO, Inc. 781-447-6661 x7506 jrojas at tnco-inc.com From Jdemarco at hudsonhealthplan.org Wed Mar 15 12:14:18 2006 From: Jdemarco at hudsonhealthplan.org (Jim DeMarco) Date: Wed, 15 Mar 2006 13:14:18 -0500 Subject: [AccessD] Regular Expressions? Message-ID: <08F823FD83787D4BA0B99CA580AD3C74030C61CE@TTNEXCHCL2.hshhp.com> Joe, Not sure what you'd be using RegEx for? AFAIK they won't format your data just find items that match a pattern. Jim DeMarco -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Joe Rojas Sent: Wednesday, March 15, 2006 12:56 PM To: Access Developers discussion and problem solving Subject: [AccessD] Regular Expressions? How can I add the ability to use regular expression in Access 2000? **Background** We are performing data conversion from our old MRP system to our new ERP system and we are using Access to massage the data in between the two systems. One of the decisions that we made was to go from all capital letters in our part number descriptions to proper case. At first I thought I would just convert each word to proper case but then I noticed that some of our descriptions look like "24CM 10MM ADAPTOR SLEEVE LG" and we would like the resulting text to look like "24CM 10MM Adaptor Sleeve LG" not "24cm Adaptor Sleeve Lg". My best guess is to use regular expressions to identify most patterns and then probably go over the data manual to make sure we didn't miss anything. Anyone have a better idea? Thanks, Joe Rojas IT Manager TNCO, Inc. 781-447-6661 x7506 jrojas at tnco-inc.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************************** "This electronic message is intended to be for the use only of the named recipient, and may contain information from Hudson Health Plan (HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". *********************************************************************************** From Gustav at cactus.dk Wed Mar 15 12:14:22 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 15 Mar 2006 19:14:22 +0100 Subject: [AccessD] Regular Expressions? Message-ID: Hi Joe Perhaps you could apply ProperCase first and then use Replace to change strings like " Lg" with " LG". That depends, but the method is very simple and no normal word begins with LG. Notice that if 24 and 10 are centimeters resp. millimeters, cm and mm are the correct units, not CM or MM. /gustav >>> JRojas at tnco-inc.com 15-03-2006 18:56:26 >>> How can I add the ability to use regular expression in Access 2000? **Background** We are performing data conversion from our old MRP system to our new ERP system and we are using Access to massage the data in between the two systems. One of the decisions that we made was to go from all capital letters in our part number descriptions to proper case. At first I thought I would just convert each word to proper case but then I noticed that some of our descriptions look like "24CM 10MM ADAPTOR SLEEVE LG" and we would like the resulting text to look like "24CM 10MM Adaptor Sleeve LG" not "24cm Adaptor Sleeve Lg". My best guess is to use regular expressions to identify most patterns and then probably go over the data manual to make sure we didn't miss anything. Anyone have a better idea? Thanks, Joe Rojas IT Manager TNCO, Inc. 781-447-6661 x7506 jrojas at tnco-inc.com From JRojas at tnco-inc.com Wed Mar 15 12:43:20 2006 From: JRojas at tnco-inc.com (Joe Rojas) Date: Wed, 15 Mar 2006 13:43:20 -0500 Subject: [AccessD] Regular Expressions? Message-ID: <758E92433C4F3740B67BE4DD369AF577156A00@ex2k3.corp.tnco-inc.com> Good point. I should have included the rest of my logic. I plan on checking to see if each word matches a particular pattern and if it does then I would NOT convert to proper case else I would convert. Thanks, Joe Rojas IT Manager TNCO, Inc. 781-447-6661 x7506 jrojas at tnco-inc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Jim DeMarco Sent: Wednesday, March 15, 2006 1:14 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Regular Expressions? Joe, Not sure what you'd be using RegEx for? AFAIK they won't format your data just find items that match a pattern. Jim DeMarco -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Joe Rojas Sent: Wednesday, March 15, 2006 12:56 PM To: Access Developers discussion and problem solving Subject: [AccessD] Regular Expressions? How can I add the ability to use regular expression in Access 2000? **Background** We are performing data conversion from our old MRP system to our new ERP system and we are using Access to massage the data in between the two systems. One of the decisions that we made was to go from all capital letters in our part number descriptions to proper case. At first I thought I would just convert each word to proper case but then I noticed that some of our descriptions look like "24CM 10MM ADAPTOR SLEEVE LG" and we would like the resulting text to look like "24CM 10MM Adaptor Sleeve LG" not "24cm Adaptor Sleeve Lg". My best guess is to use regular expressions to identify most patterns and then probably go over the data manual to make sure we didn't miss anything. Anyone have a better idea? Thanks, Joe Rojas IT Manager TNCO, Inc. 781-447-6661 x7506 jrojas at tnco-inc.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************************** "This electronic message is intended to be for the use only of the named recipient, and may contain information from Hudson Health Plan (HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". *********************************************************************************** -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From martyconnelly at shaw.ca Wed Mar 15 12:43:42 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Wed, 15 Mar 2006 10:43:42 -0800 Subject: [AccessD] Performance Listview References: Message-ID: <4418605E.1020908@shaw.ca> You might have a look through Stepan Lebans site, he has about a dozen examples of various listbox methods One is a class that does row colouring. Whether it's faster dunno. http://www.lebans.com http://www.lebans.com/listboxenhanced.htm Other ideas and methods Combos with Tens of Thousands of Records http://allenbrowne.com/ser-32.html E-business2start.com - Marcel Vreuls wrote: >Hi, > >In order to make my A2k more attractive and user friendly i have replaced the standard Listview with the comm.contr. Listview from MS. >I populate the listview by selecting a DAO.recordset and than use the .ADD listitems functions to add the records to the listview. After that i call a function which colors the rows accordnig to a certain value in the subitems. >It works fine but I notice that this goes very slow particularly the coloring of the rows. When i fill the listview with 500 records the filling takes about 5 seconds but the coloring 30 seconds. > >Any tips, ideas how ik can make it faster. > >I have a database with about 20.000 orders in it. Customers would like to have a listview which shows ALL orders so they can sort, filter etc. This i can not support performance wise with this solution. The standard listview of access is much and much faster. > > >Thanx, marcel > > >------------------------------------------------------------------------ > >No virus found in this incoming message. >Checked by AVG Free Edition. >Version: 7.1.375 / Virus Database: 268.2.1/278 - Release Date: 09/03/2006 > > -- Marty Connelly Victoria, B.C. Canada From martyconnelly at shaw.ca Wed Mar 15 12:49:49 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Wed, 15 Mar 2006 10:49:49 -0800 Subject: [AccessD] User security References: <002201c64803$a309ad60$cbc2f63f@JOHN> Message-ID: <441861CD.30706@shaw.ca> Maybe some ideas here Enabling/Disabling controls, based on User Security http://allenbrowne.com/ser-15.html John Eget wrote: >All >I have been discovering lately that records are being edited by other individuals than generated the record. All records are tagged with an individuals name. Is there a simple way to insure that records cannot be edited by another individual. I tried going thru the security wizard but got side tracked with all of the options and was not successful >John > > -- Marty Connelly Victoria, B.C. Canada From Gustav at cactus.dk Wed Mar 15 12:59:44 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 15 Mar 2006 19:59:44 +0100 Subject: [AccessD] Regular Expressions? Message-ID: Hi Joe You could use astrWord = Split(strField, " ") to create an array with the words of the field. Then it is easy and quite fast to perform that check. /gustav >>> JRojas at tnco-inc.com 15-03-2006 19:43:20 >>> Good point. I should have included the rest of my logic. I plan on checking to see if each word matches a particular pattern and if it does then I would NOT convert to proper case else I would convert. From ewaldt at gdls.com Wed Mar 15 13:46:12 2006 From: ewaldt at gdls.com (ewaldt at gdls.com) Date: Wed, 15 Mar 2006 14:46:12 -0500 Subject: [AccessD] Checkbox/Combo box questions In-Reply-To: Message-ID: I have a group of several checkboxes, all selecting members of the same table; this is the type of information that would usually be represented in a multi-select combo box, but the boss wanted it to be in this format. When a checkbox is clicked to add a checkmark, I need a combo box to come up, showing options available (from another table) to that particular checkbox. I need to save the choice (if any), and then allow the user to select another checkbox and go through the process again. Of course, I need the information to be captured. Let?s say we have 3 families: The Smiths, Joneses, and Browns. Here are their members: Smith: Sam, Sally, Sue Jones: John, Joan, Jim Brown: Bob, Barb, Bill, Brenda If checkboxes are labeled with last names, and the user checks Smith, I want the combo box to display Sam, Sally, and Sue, so that the user can choose one of them; let?s say Sam. The user can then select Jones or Brown, and have the appropriate first names show up; let?s assume it?s Barb Brown. When it?s finished, I should have Sam Smith and Barb Brown available to be inserted into the database as the choices for this iteration. Families (last names) and individuals (first names) are in different tables, with the individuals table having a secondary key to the families table. I have the checkboxes; I can create the combo box. I?d like to use the same combo box for all choices and repopulate it based on the checkbox choice; otherwise, the combo boxes would take up way too much room (I have over 30 checkboxes). Also, I?m not really sure how to capture the information, since reusing the combo box would disallow just capturing the data when the user is finished (previous choices would have been deleted). Any suggestions? TIA, Tom Ewald This is an e-mail from General Dynamics Land Systems. It is for the intended recipient only and may contain confidential and privileged information. No one else may read, print, store, copy, forward or act in reliance on it or its attachments. If you are not the intended recipient, please return this message to the sender and delete the message and any attachments from your computer. Your cooperation is appreciated. From cyx5 at cdc.gov Wed Mar 15 13:46:49 2006 From: cyx5 at cdc.gov (Nicholson, Karen) Date: Wed, 15 Mar 2006 14:46:49 -0500 Subject: [AccessD] Dying on Code Here Message-ID: Help Me! I can not get this stupid code to work. Private Sub cmdRunImport_Click() Dim cnn As ADODB.Connection Set cnn = CurrentProject.Connection Dim strTableName As String Dim strFieldName As String Dim srfFieldNameChg As String Dim ctl As Control Dim ctlName As String I am trying to capture the field names and values of over 30 fields on a form, pass those names and values into a procedure to then *run around my database* and update every table that contains the field name with the captured value. This database is a total un-normalized mess and the option of normalizing does not happen to be an option at this time. I got the code to work for just one field. It is fine. I then tried to put a value on the "tag" for each required field on the form, but I can't seem to call it from within this code. Any ideas on how I can store the required fields and make this thing pump through the records? Aughghghg!!!!! Private Sub cmdRunImport_Click() Dim cnn As ADODB.Connection Set cnn = CurrentProject.Connection Dim strTableName As String Dim strFieldName As String Dim srfFieldNameChg As String Dim ctl As Control Dim ctlName As String Dim i As Integer Dim j As Integer For i = 0 To CurrentDb.TableDefs.Count - 1 For j = 0 To CurrentDb.TableDefs(i).Fields.Count - 1 If (CurrentDb.TableDefs(i).Name Like "*SAF") Then If (CurrentDb.TableDefs(i).Fields(j).Name = ("ManufacturerCode")) Then ===>> 'Or (CurrentDb.TableDefs(i).Fields(j).Name = ("sitecode")) Then Debug.Print "Field: " & CurrentDb.TableDefs(i).Fields(j).Name Debug.Print "Table: " & CurrentDb.TableDefs(i).Name End If End If Next Next strTableName = CurrentDb.TableDefs(i).Name strFieldName = CurrentDb.TableDefs(i).Fields(j).Name strFieldNameChg = "Forms![frmRequiredFieldsReview]![" & strFieldName & "chg]" Debug.Print " Field: " & CurrentDb.TableDefs(i).Fields(j).Name Debug.Print strTableName Debug.Print strFieldName Dim sqlTest As String sqlTest = "update " & strTableName & " set " & strFieldName & " = " & strFieldNameChg DoCmd.RunSQL sqlTest Set cnn = Nothing End Sub This works just fine. But I have 26 fields to go through. It will not honor that *tag* value. I need it to loop through my 26 or so field names and print out each one above, line by line so I can insert it into SQL code for my update statement. Any ideas? Karen S. Nicholson Programmer Analyst EG&G Technical Services, Inc. Pittsburgh, PA Phone: 412-386-6649 Email: cyx5 at cdc.gov From Patricia.O'Connor at otda.state.ny.us Wed Mar 15 14:10:47 2006 From: Patricia.O'Connor at otda.state.ny.us (O'Connor, Patricia (OTDA)) Date: Wed, 15 Mar 2006 15:10:47 -0500 Subject: [AccessD] OT: Modify Office folder name without re-Installing Message-ID: <01DBAB52E30A9A4AB3D94EF8029EDBE8016B2485@EXCNYSM0A1AI.nysemail.nyenet> HI all I am asking this list cause I can't get a straight answer from work and they just want me to delete all older access versions shich I can't do right now. Is there a way to just change the folder where microsoft office is without re-installing that version? Right now I have Access 97 from Office 97 is in C:\Program Files\Microsoft Office 97\Office. Of course I wasn't around the day when they installed the Office 2000 (all) version and they put it into C:\Program Files\Microsoft Office\Office. They did not install this version well at all. I have been having quite a few problems with missing parts. We were supposed to be loading Office 2003 on my machine last week but can't figure out how to load it without deleting all the earlier versions (don't ask). I am trying to get them to just give me the disks so I can install it myself with no extra problems. Any help would be greatly appreciated. Thanks Patti ************************************************** * Patricia O'Connor * Associate Computer Programmer Analyst * OTDA - BDMA * (W) mailto:Patricia.O'Connor at otda.state.ny.us * (w) mailto:aa1160 at otda.state.ny.us ************************************************** -------------------------------------------------------- This e-mail, including any attachments, may be confidential, privileged or otherwise legally protected. It is intended only for the addressee. If you received this e-mail in error or from someone who was not authorized to send it to you, do not disseminate, copy or otherwise use this e-mail or its attachments. Please notify the sender immediately by reply e-mail and delete the e-mail from your system. From ecritt1 at alltel.net Wed Mar 15 14:22:19 2006 From: ecritt1 at alltel.net (Penn White) Date: Wed, 15 Mar 2006 15:22:19 -0500 Subject: [AccessD] Backup BE Db to CD? Message-ID: <010901c6486e$292b16d0$0302a8c0@pennp4> I would like to automate (use a command button w/VBA code) backing up of the backend database to a CD. I have searched and searched and found nothing appropriate. Perhaps it's so simple, nobody bothers to talk about it... I'm already using Neil Squires' BackupData class for backing up to a hard drive. http://www.rogersaccesslibrary.com/Otherdownload.asp?SampleName='AutoBackupDemo.zip' Any ideas greatly appreciated. Penn From bheid at appdevgrp.com Wed Mar 15 14:29:05 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Wed, 15 Mar 2006 15:29:05 -0500 Subject: [AccessD] OT: Modify Office folder name without re-Installing In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D6B1FB@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D35107@ADGSERVER> Patti, I don't know how you can rename the existing folders, but you can change the directory where the new version goes. I have Access 97, Access 2000, Office XP, and Office 2003 on my system at home. When I installed office 2003, I changed the default directory from ...\Microsoft Office\ (or whatever it is) to ...\MS Office 2003\. That lets the different versions all work well together. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of O'Connor, Patricia (OTDA) Sent: Wednesday, March 15, 2006 3:11 PM To: Access Developers discussion and problem solving Subject: [AccessD] OT: Modify Office folder name without re-Installing HI all I am asking this list cause I can't get a straight answer from work and they just want me to delete all older access versions shich I can't do right now. Is there a way to just change the folder where microsoft office is without re-installing that version? Right now I have Access 97 from Office 97 is in C:\Program Files\Microsoft Office 97\Office. Of course I wasn't around the day when they installed the Office 2000 (all) version and they put it into C:\Program Files\Microsoft Office\Office. They did not install this version well at all. I have been having quite a few problems with missing parts. We were supposed to be loading Office 2003 on my machine last week but can't figure out how to load it without deleting all the earlier versions (don't ask). I am trying to get them to just give me the disks so I can install it myself with no extra problems. Any help would be greatly appreciated. Thanks Patti From oost at e-business2start.com Wed Mar 15 14:50:51 2006 From: oost at e-business2start.com (E-business2start.com - Marcel Vreuls) Date: Wed, 15 Mar 2006 12:50:51 -0800 Subject: [AccessD] Performance Listview Message-ID: <4a0fa4dd835f3c28d6e01769d69b0a4a@e-business2start.com> Thanks, i will take a look at it -----Original message----- From: MartyConnelly martyconnelly at shaw.ca Date: Wed, 15 Mar 2006 20:47:16 -0800 To: Access Developers discussion and problem solving accessd at databaseadvisors.com Subject: Re: [AccessD] Performance Listview > You might have a look through Stepan Lebans site, he has about a dozen > examples of various listbox methods > One is a class that does row colouring. Whether it's faster dunno. > http://www.lebans.com > http://www.lebans.com/listboxenhanced.htm > Other ideas and methods > Combos with Tens of Thousands of Records > http://allenbrowne.com/ser-32.html > > E-business2start.com - Marcel Vreuls wrote: > > >Hi, > > > >In order to make my A2k more attractive and user friendly i have replaced the standard Listview with the comm.contr. Listview from MS. > >Ipopulate the listview by selecting a DAO.recordset and than use the .ADD listitems functions to add the records to the listview. After that i call a function which colors the rows accordnig to a certain value in the subitems. > >It works fine but I notice that this goes very slow particularly the coloring of the rows. When i fill the listview with 500 records the filling takes about 5 seconds but the coloring 30 seconds. > > > >Any tips, ideas how ik can make it faster. > > > >I have a database with about 20.000 orders in it. Customers would like to have a listview which shows ALL orders so they can sort, filter etc. This i can not support performance wise with this solution. The standard listview of access is much and much faster. > > > > > >Thanx, marcel > > > > > >------------------------------------------------------------------------ > > >>No virus found in this incoming message. > >Checked by AVG Free Edition. > >Version: 7.1.375 / Virus Database: 268.2.1/278 - Release Date: 09/03/2006 > > > > > > -- > Marty Connelly > Victoria, B.C. > Canada > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com _______________________________________________________________________ E: oost at e-business@start.com F: +31-84-758-0746 Dit e-mailbericht is uitsluitend bestemd voor de geadresseerde(n). Indien de e-mail bij vergissing bij u terecht is gekomen, wilt u ons dan direct bellen? Wij verzoeken u in dit geval de e-mail te vernietigen, de inhoud ervanniet te gebruiken en niet onder derden te verspreiden, omdat het bericht vertrouwelijke informatie kan bevatten, beschermd door een beroepsgeheim. Wij danken u vriendelijk voor uw medewerking. From martyconnelly at shaw.ca Wed Mar 15 15:50:42 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Wed, 15 Mar 2006 13:50:42 -0800 Subject: [AccessD] Regular Expressions? References: <08F823FD83787D4BA0B99CA580AD3C74030C61CE@TTNEXCHCL2.hshhp.com> Message-ID: <44188C32.7060004@shaw.ca> You could do simply Debug.Print StrConv("24CM 10MM ADAPTOR SLEEVE LG", vbProperCase) which doesn't quite cut it. It returns 24cm 10mm Adaptor Sleeve Lg At that point you may have to use RegEx replace to change these idiosyncracies such as '?replacetest("mm ") ' mm + space Function ReplaceTest(replStr) Dim regEx, str1 ' Create variables. str1 = "24CM 10MM ADAPTOR SLEEVE LG" Set regEx = CreateObject("VBScript.RegExp") ' Create regular expression. regEx.Global = True ' Set global applicability. regEx.Pattern = "MM " ' Set pattern. ReplaceTest = regEx.Replace(str1, replStr) ' Make replacement. End Function The VBScript RegExp object provides 3 properties and 3 methods to the user. Properties Pattern IgnoreCase Global Pattern - A string that is used to define the regular expression. This must be set before use of the regular expression object. IgnoreCase - A Boolean property that indicates if the regular expression should be tested against all possible matches in a string. By default, IgnoreCase is set to False. Global - A read-only Boolean property that indicates if the regular expression should be tested against all possible matches in a string. By default, Global is set to False. Methods Test (search-string) Replace (search-string, replace-string) Execute (search-string) Test (string) - The Test method takes a string as its argument and returns True if the regular expression can successfully be matched against the string, otherwise False is returned. Replace (search-string, replace-string) - The Replace method takes 2 strings as its arguments. If it is able to successfully match the regular expression in the search-string, then it replaces that match with the replace-string, and the new string is returned. If no matches were found, then the original search-string is returned. Execute (search-string) - The Execute method works like Replace, except that it returns a Matches collection object, containing a Match object for each successful match. It doesn't modify the original string. Regular Expressions tend to be faster than InStr or Like searches over large strings by at least a factor of 2. A help file for Regular Expressions can be found in JScript5.chm and VbScrip5.chm, these are contained in the Windows Scripting Host 2.0 Jim DeMarco wrote: >Joe, > >Not sure what you'd be using RegEx for? AFAIK they won't format your >data just find items that match a pattern. > >Jim DeMarco > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Joe Rojas >Sent: Wednesday, March 15, 2006 12:56 PM >To: Access Developers discussion and problem solving >Subject: [AccessD] Regular Expressions? > >How can I add the ability to use regular expression in Access 2000? > >**Background** >We are performing data conversion from our old MRP system to our new ERP >system and we are using Access to massage the data in between the two >systems. >One of the decisions that we made was to go from all capital letters in >our part number descriptions to proper case. At first I thought I would >just convert each word to proper case but then I noticed that some of >our descriptions look like "24CM 10MM ADAPTOR SLEEVE LG" and we would >like the resulting text to look like "24CM 10MM Adaptor Sleeve LG" not >"24cm Adaptor Sleeve Lg". >My best guess is to use regular expressions to identify most patterns >and then probably go over the data manual to make sure we didn't miss >anything. > >Anyone have a better idea? > >Thanks, >Joe Rojas >IT Manager >TNCO, Inc. >781-447-6661 x7506 >jrojas at tnco-inc.com > > > -- Marty Connelly Victoria, B.C. Canada From bchacc at san.rr.com Wed Mar 15 17:12:45 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Wed, 15 Mar 2006 15:12:45 -0800 Subject: [AccessD] Key Preview Problem Message-ID: <44189F6D.8090604@san.rr.com> Dear List: I have a tab form with four tabs. I want to set the focus in each tab by pressing the functions keys F5, F6, F7, F8. The KeyDown event is coded: Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode Case 116 Me.pgOrderNumber.SetFocus KeyCode = 0 Case 117 Me.pgReceiving.SetFocus KeyCode = 0 Case 118 Me.pgProcessing.SetFocus KeyCode = 0 Case 119 Me.pgShipping.SetFocus KeyCode = 0 End Select End Sub The first time I press one of the four function keys it works. Then, it quits. (Like if I press F7 the first time is sets the focus to pgProcessing, the second time it invokes the spell checker.) Does anyone know why this would happen? MTIA Rocky -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From ecritt1 at alltel.net Wed Mar 15 17:32:20 2006 From: ecritt1 at alltel.net (Penn White) Date: Wed, 15 Mar 2006 18:32:20 -0500 Subject: [AccessD] Checkbox/Combo box questions References: Message-ID: <005601c64888$b46a3810$0302a8c0@pennp4> I think I'd start with many-to-many tables to capture the info. Something like this might work although I haven't had time to try it out yet.: Having these tables, I'm assuming you can do the coding to re-populate the combobox based upon the checkbox selected. T_Parents Fields ParentID (autonumber) PLastName (text) PFirstName (text) T_ParentChild Fields ParentChildID (autonumber) ParentID (relates to ParentID in T_Parents) CFirstName (text) CLastName (text) T_UserSelections Fields: UserSelectionID (autonumber) ParentChildID (relates to ParentChildID in T_ParentChild) UserID (relates to UserID in T_Users) Penn P.S. I'm not a well-informed, honored MVP, just a little self-taught coder and I put this suggestion out with no little trepidation. If it helps, great. If I'm completely off base, it won't be the first time, unfortunately. From ecritt1 at alltel.net Wed Mar 15 17:45:57 2006 From: ecritt1 at alltel.net (Penn White) Date: Wed, 15 Mar 2006 18:45:57 -0500 Subject: [AccessD] Checkbox/Combo box questions References: <005601c64888$b46a3810$0302a8c0@pennp4> Message-ID: <005b01c6488a$9ba7a5e0$0302a8c0@pennp4> BTW, it seems that radio buttons might be better than checkboxes since you're going to have to clear the checkboxes after each selection or the program will get confused. You might actually want to put them all into an option group. Penn From jwcolby at ColbyConsulting.com Wed Mar 15 18:01:08 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Wed, 15 Mar 2006 19:01:08 -0500 Subject: [AccessD] Key Preview Problem In-Reply-To: <44189F6D.8090604@san.rr.com> Message-ID: <005f01c6488c$bb8e6310$647aa8c0@ColbyM6805> Rocky, Did someone call you last night re work? John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Wednesday, March 15, 2006 6:13 PM To: Access Developers discussion and problem solving Subject: [AccessD] Key Preview Problem Dear List: I have a tab form with four tabs. I want to set the focus in each tab by pressing the functions keys F5, F6, F7, F8. The KeyDown event is coded: Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode Case 116 Me.pgOrderNumber.SetFocus KeyCode = 0 Case 117 Me.pgReceiving.SetFocus KeyCode = 0 Case 118 Me.pgProcessing.SetFocus KeyCode = 0 Case 119 Me.pgShipping.SetFocus KeyCode = 0 End Select End Sub The first time I press one of the four function keys it works. Then, it quits. (Like if I press F7 the first time is sets the focus to pgProcessing, the second time it invokes the spell checker.) Does anyone know why this would happen? MTIA Rocky -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jedi at fellspt.charm.net Wed Mar 15 13:21:36 2006 From: jedi at fellspt.charm.net (Michael Bahr) Date: Wed, 15 Mar 2006 14:21:36 -0500 Subject: [AccessD] Regular Expressions? References: <758E92433C4F3740B67BE4DD369AF5771569FF@ex2k3.corp.tnco-inc.com> <20060315141458.V32400@fellspt.charm.net> Message-ID: <200603151914250916.662012EB@mail.cablespeed.com> Joe, here is a modified function that uses regular expression I created in Access 2000. I removed my specific stuff and added a couple possible patterns for you. You will need to finish the rest but this should get you going. I would strongly suggest using the debugger to step through the lines to confirm it is working. Set the following variables in the debugger: regexMatch matches(0).submatches(0) matches(0).submatches(1) myValue desc pn Change rst to match your query or table and change .Fields("zzz") at the beginning of while loop. ' ' ' Function myRegex() As Boolean Dim regex As Object Dim rst As DAO.Recordset Dim desc As String, pn As String, myValue As String Dim regexMatch As Boolean Dim matches As Variant Set rst = CurrentDb.OpenRecordset("qryYourQry") Set regex = CreateObject("VBScript.RegExp") regexMatch = True regex.Global = True regex.ignorecase = True With rst .MoveFirst While (Not .EOF) desc = .Fields("Description") pn = .Fields("PartNumber") ' one of these patterns should work for to capture ' at start of line digit-char space digit-char regex.pattern = "(^(\d+[a-z]+\s+\d+[a-z]+))" regex.pattern = "(^([0-9a-z ]+))" regexMatch = regex.test(pn) If (regexMatch) Then ' matche(s) from part number Set matches = regex.Execute(pn) ' get last match myValue = matches(0).submatches(1) ' do your work on the captured value ' save your changes in another field .Edit .Fields("Value") = myValue .Update End If .MoveNext Wend .Close End With Set regex = Nothing Set rst = Nothing End Function Goodluck, Mike... On Wed, 15 Mar 2006, Joe Rojas wrote: > How can I add the ability to use regular expression in Access 2000? > > **Background** > We are performing data conversion from our old MRP system to our new ERP system and we are using Access to massage the data in between the two systems. > One of the decisions that we made was to go from all capital letters in our part number descriptions to proper case. At first I thought I would just convert each word to proper case but then I noticed that some of our descriptions look like "24CM 10MM ADAPTOR SLEEVE LG" and we would like the resulting text to look like "24CM 10MM Adaptor Sleeve LG" not "24cm Adaptor Sleeve Lg". > My best guess is to use regular expressions to identify most patterns and then probably go over the data manual to make sure we didn't miss anything. > > Anyone have a better idea? > > Thanks, > Joe Rojas > IT Manager > TNCO, Inc. > 781-447-6661 x7506 > jrojas at tnco-inc.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From bchacc at san.rr.com Wed Mar 15 18:35:06 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Wed, 15 Mar 2006 16:35:06 -0800 Subject: [AccessD] Key Preview Problem In-Reply-To: <005f01c6488c$bb8e6310$647aa8c0@ColbyM6805> References: <005f01c6488c$bb8e6310$647aa8c0@ColbyM6805> Message-ID: <4418B2BA.7080000@san.rr.com> No. Needing work to do or having work to be done? Rocky John Colby wrote: > Rocky, > > Did someone call you last night re work? > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - > Beach Access Software > Sent: Wednesday, March 15, 2006 6:13 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Key Preview Problem > > Dear List: > > I have a tab form with four tabs. I want to set the focus in each tab by > pressing the functions keys F5, F6, F7, F8. The KeyDown event is coded: > > Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) > > Select Case KeyCode > Case 116 > Me.pgOrderNumber.SetFocus > KeyCode = 0 > Case 117 > Me.pgReceiving.SetFocus > KeyCode = 0 > Case 118 > Me.pgProcessing.SetFocus > KeyCode = 0 > Case 119 > Me.pgShipping.SetFocus > KeyCode = 0 > End Select > > End Sub > > The first time I press one of the four function keys it works. Then, it > quits. (Like if I press F7 the first time is sets the focus to > pgProcessing, the second time it invokes the spell checker.) > > Does anyone know why this would happen? > > MTIA > > Rocky > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From shamil at users.mns.ru Wed Mar 15 19:22:12 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Thu, 16 Mar 2006 04:22:12 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant> <001101c64810$f9ad0420$6501a8c0@Nant> Message-ID: <001d01c64898$0f575b90$6501a8c0@Nant> Hi All, The new version of test is available at http://smsconsulting.spb.ru/download/tests/a2dds.htm . It should now work thousands cycles I expect but I still have to test that - I will try to do that tomorrow running the tests in background mode. For MS Access XP on one of my older PCs it works not good - it results in significant memory leakage. This seems to be the problem of this MS Access XP installation/PC (Windows 2000). On my main PC(Windows 2003) where MS Access 2003 SP1 installed together with MS Access XP the tests work OK for both MS Access 2003 and MS Access XP. Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 15, 2006 12:14 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > New version of tests is now available at > http://smsconsulting.spb.ru/download/tests/a2dds.htm . > It uses library mdb as it was planned and it has some other improvements. > > Some users report they have problems with MS Access XP. > I did test on my main development PC and it worked OK with MS Access XP. > Your additional feedback on this subject would be very useful to fix the > problem and to improve the tests! > > Thank you. > > Shamil > > ----- Original Message ----- > From: "Shamil Salakhetdinov" > To: "Access Developers discussion and problem solving" > > Sent: Tuesday, March 14, 2006 11:09 PM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Hi All, >> >> ADP version of crash test added here >> http://smsconsulting.spb.ru/download/tests/a2dds.htm . >> >> In fact both mdb and ADP use the same code, which forks in some points on >> runtime depending on project type it runs in... >> >> Within future days/weeks will be coming: >> >> - lightweight framework code stored in a library mdb/adp >> - adding/fixing functionality for MS Access reports >> - adding/fixing functionality for new rows additions; >> - adding/fixing functionality for rows deletions. >> - ... >> >> This test/sample still may get stuck somewhere unexpectedly because the >> "dark unexplored waters" we're trying to glide on may have sharp stones, >> which can severely damage and sink our lightweight framework/ship... >> >> Shamil >> > <<< tail skipped >>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Wed Mar 15 19:29:33 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Wed, 15 Mar 2006 20:29:33 -0500 Subject: [AccessD] Key Preview Problem In-Reply-To: <4418B2BA.7080000@san.rr.com> Message-ID: <006801c64899$157d57d0$647aa8c0@ColbyM6805> Work to be done. He called me last night, asked where I was and when I said CT he said he needed someone local (San Diego). I gave him your info and he hung up. I didn't get his name/phone. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Wednesday, March 15, 2006 7:35 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Key Preview Problem No. Needing work to do or having work to be done? Rocky John Colby wrote: > Rocky, > > Did someone call you last night re work? > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky > Smolin - Beach Access Software > Sent: Wednesday, March 15, 2006 6:13 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Key Preview Problem > > Dear List: > > I have a tab form with four tabs. I want to set the focus in each tab > by pressing the functions keys F5, F6, F7, F8. The KeyDown event is coded: > > Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) > > Select Case KeyCode > Case 116 > Me.pgOrderNumber.SetFocus > KeyCode = 0 > Case 117 > Me.pgReceiving.SetFocus > KeyCode = 0 > Case 118 > Me.pgProcessing.SetFocus > KeyCode = 0 > Case 119 > Me.pgShipping.SetFocus > KeyCode = 0 > End Select > > End Sub > > The first time I press one of the four function keys it works. Then, > it quits. (Like if I press F7 the first time is sets the focus to > pgProcessing, the second time it invokes the spell checker.) > > Does anyone know why this would happen? > > MTIA > > Rocky > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bchacc at san.rr.com Wed Mar 15 19:39:38 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Wed, 15 Mar 2006 17:39:38 -0800 Subject: [AccessD] Key Preview Problem In-Reply-To: <006801c64899$157d57d0$647aa8c0@ColbyM6805> References: <006801c64899$157d57d0$647aa8c0@ColbyM6805> Message-ID: <4418C1DA.2080503@san.rr.com> O. OK. Thanks for the referral. Best, Rocky John Colby wrote: > Work to be done. He called me last night, asked where I was and when I said > CT he said he needed someone local (San Diego). I gave him your info and he > hung up. I didn't get his name/phone. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - > Beach Access Software > Sent: Wednesday, March 15, 2006 7:35 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Key Preview Problem > > No. Needing work to do or having work to be done? > > Rocky > > > John Colby wrote: > >> Rocky, >> >> Did someone call you last night re work? >> >> John W. Colby >> www.ColbyConsulting.com >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky >> Smolin - Beach Access Software >> Sent: Wednesday, March 15, 2006 6:13 PM >> To: Access Developers discussion and problem solving >> Subject: [AccessD] Key Preview Problem >> >> Dear List: >> >> I have a tab form with four tabs. I want to set the focus in each tab >> by pressing the functions keys F5, F6, F7, F8. The KeyDown event is >> > coded: > >> Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) >> >> Select Case KeyCode >> Case 116 >> Me.pgOrderNumber.SetFocus >> KeyCode = 0 >> Case 117 >> Me.pgReceiving.SetFocus >> KeyCode = 0 >> Case 118 >> Me.pgProcessing.SetFocus >> KeyCode = 0 >> Case 119 >> Me.pgShipping.SetFocus >> KeyCode = 0 >> End Select >> >> End Sub >> >> The first time I press one of the four function keys it works. Then, >> it quits. (Like if I press F7 the first time is sets the focus to >> pgProcessing, the second time it invokes the spell checker.) >> >> Does anyone know why this would happen? >> >> MTIA >> >> Rocky >> >> -- >> Rocky Smolin >> Beach Access Software >> 858-259-4334 >> www.e-z-mrp.com >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> >> >> > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From martyconnelly at shaw.ca Wed Mar 15 20:01:06 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Wed, 15 Mar 2006 18:01:06 -0800 Subject: [AccessD] Excel to Access Help Needed References: <20060309193404.M50407@wowway.com> Message-ID: <4418C6E2.9060006@shaw.ca> I can't think of an easy way to do this, maybe via a Group By or Pivot You might try question on this Excel-L mail list or look through their archives http://peach.ease.lsoft.com/archives/excel-l.html#SUB tewald at wowway.com wrote: >I am converting an Excel-based system to Access; in other words, flat-file to >relational. > >The main data entry Excel worksheet has data unique to the work order on the >top, followed by a list of several systems that could possibly be affected by >the work order; each system is listed on the form, and the user determines >which ones are needed. Each system, in turn, has several ways (all have the >same ways) in which it could be affected. > >Think of the lower portion as like this (in this example, Name = system): > >Name: Mary John Alex Theresa >Gender: F M M F >Age: 55 35 34 26 >Needed: N Y N Y > >And then more categories. > >Now, I have a main table for the information at the top of the form. I have >another table that includes the individual systems (names) and all of the >categories (in the example above, that would be gender, age and needed), as >well as a foreign key to the main table, so I can keep track of which work >order contained which information. Not the best example above, I suppose, >because logically gender and age would stay the same (well, gender, anyway); >in the real table, that data changes with each work order, and not all of the >systems (names) will be needed each time. > >I would like to present the users with a form similar to the Excel >spreadsheet theyre used to, so Id like to have it look like the example >above. Im drawing a blank. I hope Ive explained this well enough. > >Id appreciate any help. Id also appreciate your not telling my wife that I >told you her age. ;-) > >TIA, > >Tom Ewald > > > -- Marty Connelly Victoria, B.C. Canada From martyconnelly at shaw.ca Wed Mar 15 20:39:04 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Wed, 15 Mar 2006 18:39:04 -0800 Subject: [AccessD] Key Preview Problem References: <44189F6D.8090604@san.rr.com> Message-ID: <4418CFC8.2010501@shaw.ca> Stick this in or set in Forms properties, keypreview default is no. Private Sub Form_Load() Me.KeyPreview = True End Sub Rocky Smolin - Beach Access Software wrote: >Dear List: > >I have a tab form with four tabs. I want to set the focus in each tab >by pressing the functions keys F5, F6, F7, F8. The KeyDown event is coded: > >Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) > > Select Case KeyCode > Case 116 > Me.pgOrderNumber.SetFocus > KeyCode = 0 > Case 117 > Me.pgReceiving.SetFocus > KeyCode = 0 > Case 118 > Me.pgProcessing.SetFocus > KeyCode = 0 > Case 119 > Me.pgShipping.SetFocus > KeyCode = 0 > End Select > >End Sub > >The first time I press one of the four function keys it works. Then, it >quits. (Like if I press F7 the first time is sets the focus to >pgProcessing, the second time it invokes the spell checker.) > >Does anyone know why this would happen? > >MTIA > >Rocky > > > -- Marty Connelly Victoria, B.C. Canada From bchacc at san.rr.com Wed Mar 15 21:49:06 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Wed, 15 Mar 2006 19:49:06 -0800 Subject: [AccessD] Key Preview Problem In-Reply-To: <4418CFC8.2010501@shaw.ca> References: <44189F6D.8090604@san.rr.com> <4418CFC8.2010501@shaw.ca> Message-ID: <4418E032.9080409@san.rr.com> Marty: It's set to true in the Forms property sheet. And it does work the first time I press one of the function keys. But after that it doesn't. Rocky MartyConnelly wrote: > Stick this in or set in Forms properties, keypreview default is no. > > Private Sub Form_Load() > Me.KeyPreview = True > End Sub > > Rocky Smolin - Beach Access Software wrote: > > >> Dear List: >> >> I have a tab form with four tabs. I want to set the focus in each tab >> by pressing the functions keys F5, F6, F7, F8. The KeyDown event is coded: >> >> Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) >> >> Select Case KeyCode >> Case 116 >> Me.pgOrderNumber.SetFocus >> KeyCode = 0 >> Case 117 >> Me.pgReceiving.SetFocus >> KeyCode = 0 >> Case 118 >> Me.pgProcessing.SetFocus >> KeyCode = 0 >> Case 119 >> Me.pgShipping.SetFocus >> KeyCode = 0 >> End Select >> >> End Sub >> >> The first time I press one of the four function keys it works. Then, it >> quits. (Like if I press F7 the first time is sets the focus to >> pgProcessing, the second time it invokes the spell checker.) >> >> Does anyone know why this would happen? >> >> MTIA >> >> Rocky >> >> >> >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From martyconnelly at shaw.ca Wed Mar 15 22:07:03 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Wed, 15 Mar 2006 20:07:03 -0800 Subject: [AccessD] Key Preview Problem References: <44189F6D.8090604@san.rr.com> <4418CFC8.2010501@shaw.ca> <4418E032.9080409@san.rr.com> Message-ID: <4418E467.6050405@shaw.ca> Works for me in Access 2003 with the Form_Load method Rocky Smolin - Beach Access Software wrote: >Marty: > >It's set to true in the Forms property sheet. And it does work the >first time I press one of the function keys. But after that it doesn't. > >Rocky > > >MartyConnelly wrote: > > >>Stick this in or set in Forms properties, keypreview default is no. >> >>Private Sub Form_Load() >> Me.KeyPreview = True >>End Sub >> >>Rocky Smolin - Beach Access Software wrote: >> >> >> >> >>>Dear List: >>> >>>I have a tab form with four tabs. I want to set the focus in each tab >>>by pressing the functions keys F5, F6, F7, F8. The KeyDown event is coded: >>> >>>Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) >>> >>> Select Case KeyCode >>> Case 116 >>> Me.pgOrderNumber.SetFocus >>> KeyCode = 0 >>> Case 117 >>> Me.pgReceiving.SetFocus >>> KeyCode = 0 >>> Case 118 >>> Me.pgProcessing.SetFocus >>> KeyCode = 0 >>> Case 119 >>> Me.pgShipping.SetFocus >>> KeyCode = 0 >>> End Select >>> >>>End Sub >>> >>>The first time I press one of the four function keys it works. Then, it >>>quits. (Like if I press F7 the first time is sets the focus to >>>pgProcessing, the second time it invokes the spell checker.) >>> >>>Does anyone know why this would happen? >>> >>>MTIA >>> >>>Rocky >>> >>> >>> >>> >>> >>> >> >> >> > > > -- Marty Connelly Victoria, B.C. Canada From bchacc at san.rr.com Wed Mar 15 23:29:06 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Wed, 15 Mar 2006 21:29:06 -0800 Subject: [AccessD] Key Preview Problem In-Reply-To: <4418E467.6050405@shaw.ca> References: <44189F6D.8090604@san.rr.com> <4418CFC8.2010501@shaw.ca> <4418E032.9080409@san.rr.com> <4418E467.6050405@shaw.ca> Message-ID: <4418F7A2.2080808@san.rr.com> Marty: I put Me.KeyPreview = True in the load event. No luck. I also put it at the end of the KeyDown event (where I shouldn't need to but just to cover that base). No luck So I put Msgbox KeyCode at the beginning of the KeyDown event. The first time I press a function key it displays the code in the MsgBox. If I press any other key than the four function keys it displays they key code (Key Down event is still firing). But after pressing one of the four function keys I'm trapping (F5-F8) the event stops firing. Processes the key stroke according to the code, but then stops firing. So I comment out all of the .SetFocus and KeyCode = 0 lines and the event now keeps firing. I put back the KeyCode = 0 line and the event keeps firing. I take out the KeyCode = 0 line and put back the .SetFocus line and the event stops firing. So I've traced it down to the lines Me.pgXXX.SetFocus. When that line executes it hoses the KeyPreview property and even setting it at the end of the module doesn't help. Help! Rocky MartyConnelly wrote: > Works for me in Access 2003 with the Form_Load method > > Rocky Smolin - Beach Access Software wrote: > > >> Marty: >> >> It's set to true in the Forms property sheet. And it does work the >> first time I press one of the function keys. But after that it doesn't. >> >> Rocky >> >> >> MartyConnelly wrote: >> >> >> >>> Stick this in or set in Forms properties, keypreview default is no. >>> >>> Private Sub Form_Load() >>> Me.KeyPreview = True >>> End Sub >>> >>> Rocky Smolin - Beach Access Software wrote: >>> >>> >>> >>> >>> >>>> Dear List: >>>> >>>> I have a tab form with four tabs. I want to set the focus in each tab >>>> by pressing the functions keys F5, F6, F7, F8. The KeyDown event is coded: >>>> >>>> Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) >>>> >>>> Select Case KeyCode >>>> Case 116 >>>> Me.pgOrderNumber.SetFocus >>>> KeyCode = 0 >>>> Case 117 >>>> Me.pgReceiving.SetFocus >>>> KeyCode = 0 >>>> Case 118 >>>> Me.pgProcessing.SetFocus >>>> KeyCode = 0 >>>> Case 119 >>>> Me.pgShipping.SetFocus >>>> KeyCode = 0 >>>> End Select >>>> >>>> End Sub >>>> >>>> The first time I press one of the four function keys it works. Then, it >>>> quits. (Like if I press F7 the first time is sets the focus to >>>> pgProcessing, the second time it invokes the spell checker.) >>>> >>>> Does anyone know why this would happen? >>>> >>>> MTIA >>>> >>>> Rocky >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>> >>> >>> >>> >> >> >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From stuart at lexacorp.com.pg Thu Mar 16 01:26:36 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Thu, 16 Mar 2006 17:26:36 +1000 Subject: [AccessD] Key Preview Problem In-Reply-To: <4418F7A2.2080808@san.rr.com> References: <4418E467.6050405@shaw.ca> Message-ID: <44199FCC.7642.1149F25B@stuart.lexacorp.com.pg> On 15 Mar 2006 at 21:29, Rocky Smolin - Beach Access S wrote: > > So I've traced it down to the lines Me.pgXXX.SetFocus. When that line > executes it hoses the KeyPreview property and even setting it at the end of > the module doesn't help. > What happens if you set "me.keypreview = true" in code after the SetFocus? -- Stuart From bheid at appdevgrp.com Thu Mar 16 06:26:50 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Thu, 16 Mar 2006 07:26:50 -0500 Subject: [AccessD] Dying on Code Here In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D6B1EC@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D3510B@ADGSERVER> Karen, It looks like the problem might be that if you are using the exact code below that you are using a 'set' statement on each field. So your SQL might look something like: UPDATE sometable SET somefield="somevalue" You want to have something like: UPDATE sometable SET somefield1='somevalue1' somefield2='somevalue2' somefield3='somevalue3' ... somefieldn='somevaluen'; So, if I understand the issue correctly, you want to build the UPDATE sometable SET part first. Then loop through all of the fields and append the somefield='somevalue' (assuming text values here) strings to the end of the SQL string. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Nicholson, Karen Sent: Wednesday, March 15, 2006 2:47 PM To: accessd at databaseadvisors.com Subject: [AccessD] Dying on Code Here Help Me! I can not get this stupid code to work. Private Sub cmdRunImport_Click() Dim cnn As ADODB.Connection Set cnn = CurrentProject.Connection Dim strTableName As String Dim strFieldName As String Dim srfFieldNameChg As String Dim ctl As Control Dim ctlName As String I am trying to capture the field names and values of over 30 fields on a form, pass those names and values into a procedure to then *run around my database* and update every table that contains the field name with the captured value. This database is a total un-normalized mess and the option of normalizing does not happen to be an option at this time. I got the code to work for just one field. It is fine. I then tried to put a value on the "tag" for each required field on the form, but I can't seem to call it from within this code. Any ideas on how I can store the required fields and make this thing pump through the records? Aughghghg!!!!! Private Sub cmdRunImport_Click() Dim cnn As ADODB.Connection Set cnn = CurrentProject.Connection Dim strTableName As String Dim strFieldName As String Dim srfFieldNameChg As String Dim ctl As Control Dim ctlName As String Dim i As Integer Dim j As Integer For i = 0 To CurrentDb.TableDefs.Count - 1 For j = 0 To CurrentDb.TableDefs(i).Fields.Count - 1 If (CurrentDb.TableDefs(i).Name Like "*SAF") Then If (CurrentDb.TableDefs(i).Fields(j).Name = ("ManufacturerCode")) Then ===>> 'Or (CurrentDb.TableDefs(i).Fields(j).Name = ("sitecode")) Then Debug.Print "Field: " & CurrentDb.TableDefs(i).Fields(j).Name Debug.Print "Table: " & CurrentDb.TableDefs(i).Name End If End If Next Next strTableName = CurrentDb.TableDefs(i).Name strFieldName = CurrentDb.TableDefs(i).Fields(j).Name strFieldNameChg = "Forms![frmRequiredFieldsReview]![" & strFieldName & "chg]" Debug.Print " Field: " & CurrentDb.TableDefs(i).Fields(j).Name Debug.Print strTableName Debug.Print strFieldName Dim sqlTest As String sqlTest = "update " & strTableName & " set " & strFieldName & " = " & strFieldNameChg DoCmd.RunSQL sqlTest Set cnn = Nothing End Sub This works just fine. But I have 26 fields to go through. It will not honor that *tag* value. I need it to loop through my 26 or so field names and print out each one above, line by line so I can insert it into SQL code for my update statement. Any ideas? Karen S. Nicholson Programmer Analyst EG&G Technical Services, Inc. Pittsburgh, PA Phone: 412-386-6649 Email: cyx5 at cdc.gov -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From ecritt1 at alltel.net Thu Mar 16 07:02:12 2006 From: ecritt1 at alltel.net (Penn White) Date: Thu, 16 Mar 2006 08:02:12 -0500 Subject: [AccessD] Key Preview Problem References: <44189F6D.8090604@san.rr.com> <4418CFC8.2010501@shaw.ca><4418E032.9080409@san.rr.com> <4418E467.6050405@shaw.ca> <4418F7A2.2080808@san.rr.com> Message-ID: <00a301c648f9$d7e2a810$0302a8c0@pennp4> Just for fun (since I have a similar keydown event which has never worked either), I messed around with it using Alt-Key combinations. I used an "if intAltDown then Select Case Keycode' structure. Each case will fire one time but then it stops. So I can go from one tabbed page (pgXXX) to another, to another, to another but after I've been to all the tabbed pages once, it stops. Also, once I've been to a tabbed page using the Alt-Key combination for that tabbed page, it won't go there again unless I close the form and start over. I also tried me.setfocus, Forms!FormName.Form.SetFocus and Me.KeyPreview=True (individually and in various combinations) at the end of the procedure since the documentation says the form or control has to have the focus for the KeyDown event to work and that didn't help. It's almost as if there is a buffer that's getting filled and won't empty once you've used a KeyDown keystroke or keystroke combination. I did some research on MSDN and Google and found nothing helpful although KeyDown and KeyPress event problems seem to have been around since before ACC97. Penn From stuart at lexacorp.com.pg Thu Mar 16 07:27:54 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Thu, 16 Mar 2006 23:27:54 +1000 Subject: [AccessD] Key Preview Problem In-Reply-To: <4418F7A2.2080808@san.rr.com> References: <4418E467.6050405@shaw.ca> Message-ID: <4419F47A.8689.1294B75C@stuart.lexacorp.com.pg> On 15 Mar 2006 at 21:29, Rocky Smolin - Beach Access S wrote: > > So I've traced it down to the lines Me.pgXXX.SetFocus. When that line > executes it hoses the KeyPreview property and even setting it at the end of > the module doesn't help. > I just built a simple test application (AXP using an A2K format database). I can't reproduce your problem. The following code works perfectly for me with a Tab control with four appropriately named pages. Want to send me a zipped database with the problem form? I will see if it works here - it may be something on your PC causing it. Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode Case 116 Me.pgOrderNumber.SetFocus KeyCode = 0 Case 117 Me.pgReceiving.SetFocus KeyCode = 0 Case 118 Me.pgProcessing.SetFocus KeyCode = 0 Case 119 Me.pgShipping.SetFocus KeyCode = 0 End Select End Sub -- Stuart From cyx5 at cdc.gov Thu Mar 16 07:31:34 2006 From: cyx5 at cdc.gov (Nicholson, Karen) Date: Thu, 16 Mar 2006 08:31:34 -0500 Subject: [AccessD] Dying on Code Here Message-ID: I worked some more on this last night. This is the database from he**. There are over 60 tables, all flat, a mess. The first thing I do is search the database and find those tables that end in SAF. That narrows my problem down to about 19 tables I need to be concerned with. Then, I extract the field names from those 19 tables and print those. But I really only want to get the field names of about 20 fields, not the gazillions that are in each table. So, I guess I need to build an array, a collection, something, to hold only 20 field names to update. I have the code working, but when I call the field names from the tables, I get every field name. I just want to get the field names that may be in the above 20 field names, that of course, are not listed anywhere except on my form. The ones on my form that I am looking for have been tagged with an "N" in the tag control of the field. I can not seem to reference just these 20 fields with the "N". This is running horribly slow, of course, but at least I am almost there. Dim cnn As ADODB.Connection Set cnn = CurrentProject.Connection Dim strTableName As String Dim strFieldName As String Dim srfFieldNameChg As String Dim ctl As Control Dim ctlName As String Dim strSQLTest As String Dim i As Integer Dim j As Integer Dim k As Integer For i = 0 To CurrentDb.TableDefs.Count - 1 If (CurrentDb.TableDefs(i).Name Like "*SAF") Then Debug.Print "Table: " & CurrentDb.TableDefs(i).Name strTableName = CurrentDb.TableDefs(i).Name For j = 0 To CurrentDb.TableDefs(i).Fields.Count - 1 'strFieldName = CurrentDb.TableDefs(i).Fields(j).Name Debug.Print " Field: " & CurrentDb.TableDefs(i).Fields(j).Name For k = 0 To Me.Controls.Count - 1 'Debug.Print " Control Name: " & Me.Controls(k).Name If (Me.Controls(k).Name = CurrentDb.TableDefs(i).Fields(j).Name) Then strFieldName = CurrentDb.TableDefs(i).Fields(j).Name Debug.Print strFieldName If Me.Controls(k).Name = strFieldName Then strFieldNameChg = "Forms![frmRequiredFieldReview]![" & strFieldName & "chg]" strSQLTest = "update " & strTableName & " set " & strFieldName & " = " & strFieldNameChg Debug.Print strSQLTest Stop ' DoCmd.RunSQL strsqlTest End If End If Next ' end of k loop Next ' end of j loop End If Next ' end of i loop Set cnn = Nothing Karen S. Nicholson Programmer Analyst EG&G Technical Services, Inc. Pittsburgh, PA Phone: 412-386-6649 Email: cyx5 at cdc.gov -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Thursday, March 16, 2006 7:27 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Dying on Code Here Karen, It looks like the problem might be that if you are using the exact code below that you are using a 'set' statement on each field. So your SQL might look something like: UPDATE sometable SET somefield="somevalue" You want to have something like: UPDATE sometable SET somefield1='somevalue1' somefield2='somevalue2' somefield3='somevalue3' ... somefieldn='somevaluen'; So, if I understand the issue correctly, you want to build the UPDATE sometable SET part first. Then loop through all of the fields and append the somefield='somevalue' (assuming text values here) strings to the end of the SQL string. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Nicholson, Karen Sent: Wednesday, March 15, 2006 2:47 PM To: accessd at databaseadvisors.com Subject: [AccessD] Dying on Code Here Help Me! I can not get this stupid code to work. Private Sub cmdRunImport_Click() Dim cnn As ADODB.Connection Set cnn = CurrentProject.Connection Dim strTableName As String Dim strFieldName As String Dim srfFieldNameChg As String Dim ctl As Control Dim ctlName As String I am trying to capture the field names and values of over 30 fields on a form, pass those names and values into a procedure to then *run around my database* and update every table that contains the field name with the captured value. This database is a total un-normalized mess and the option of normalizing does not happen to be an option at this time. I got the code to work for just one field. It is fine. I then tried to put a value on the "tag" for each required field on the form, but I can't seem to call it from within this code. Any ideas on how I can store the required fields and make this thing pump through the records? Aughghghg!!!!! Private Sub cmdRunImport_Click() Dim cnn As ADODB.Connection Set cnn = CurrentProject.Connection Dim strTableName As String Dim strFieldName As String Dim srfFieldNameChg As String Dim ctl As Control Dim ctlName As String Dim i As Integer Dim j As Integer For i = 0 To CurrentDb.TableDefs.Count - 1 For j = 0 To CurrentDb.TableDefs(i).Fields.Count - 1 If (CurrentDb.TableDefs(i).Name Like "*SAF") Then If (CurrentDb.TableDefs(i).Fields(j).Name = ("ManufacturerCode")) Then ===>> 'Or (CurrentDb.TableDefs(i).Fields(j).Name = ("sitecode")) Then Debug.Print "Field: " & CurrentDb.TableDefs(i).Fields(j).Name Debug.Print "Table: " & CurrentDb.TableDefs(i).Name End If End If Next Next strTableName = CurrentDb.TableDefs(i).Name strFieldName = CurrentDb.TableDefs(i).Fields(j).Name strFieldNameChg = "Forms![frmRequiredFieldsReview]![" & strFieldName & "chg]" Debug.Print " Field: " & CurrentDb.TableDefs(i).Fields(j).Name Debug.Print strTableName Debug.Print strFieldName Dim sqlTest As String sqlTest = "update " & strTableName & " set " & strFieldName & " = " & strFieldNameChg DoCmd.RunSQL sqlTest Set cnn = Nothing End Sub This works just fine. But I have 26 fields to go through. It will not honor that *tag* value. I need it to loop through my 26 or so field names and print out each one above, line by line so I can insert it into SQL code for my update statement. Any ideas? Karen S. Nicholson Programmer Analyst EG&G Technical Services, Inc. Pittsburgh, PA Phone: 412-386-6649 Email: cyx5 at cdc.gov -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From iggy at nanaimo.ark.com Thu Mar 16 07:45:42 2006 From: iggy at nanaimo.ark.com (Tony Septav) Date: Thu, 16 Mar 2006 05:45:42 -0800 Subject: [AccessD] Key Preview Problem Message-ID: <44196C06.1090304@nanaimo.ark.com> Hey Rocky Do you have any subforms in your tabs? This will cause a problem. From bchacc at san.rr.com Thu Mar 16 07:50:17 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 16 Mar 2006 05:50:17 -0800 Subject: [AccessD] Key Preview Problem In-Reply-To: <44199FCC.7642.1149F25B@stuart.lexacorp.com.pg> References: <4418E467.6050405@shaw.ca> <44199FCC.7642.1149F25B@stuart.lexacorp.com.pg> Message-ID: <44196D19.60400@san.rr.com> Stuart: Same result. Code now reads: Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) 'MsgBox KeyCode Select Case KeyCode Case 116 Me.pgOrderNumber.SetFocus KeyCode = 0 Me.KeyPreview = True Case 117 Me.pgReceiving.SetFocus KeyCode = 0 Me.KeyPreview = True Case 118 Me.pgProcessing.SetFocus KeyCode = 0 Me.KeyPreview = True Case 119 Me.pgShipping.SetFocus KeyCode = 0 Me.KeyPreview = True End Select End Sub I open the form. Press F6 - Me.pgReceiving gets the focus. I press F7, I get spell check. The event doesn't fire but once. Rocky Stuart McLachlan wrote: > On 15 Mar 2006 at 21:29, Rocky Smolin - Beach Access S wrote: > > >> So I've traced it down to the lines Me.pgXXX.SetFocus. When that line >> executes it hoses the KeyPreview property and even setting it at the end of >> the module doesn't help. >> >> > > What happens if you set "me.keypreview = true" in code after the SetFocus? > > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From bchacc at san.rr.com Thu Mar 16 07:53:19 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 16 Mar 2006 05:53:19 -0800 Subject: [AccessD] Key Preview Problem In-Reply-To: <00a301c648f9$d7e2a810$0302a8c0@pennp4> References: <44189F6D.8090604@san.rr.com> <4418CFC8.2010501@shaw.ca> <4418E032.9080409@san.rr.com> <4418E467.6050405@shaw.ca> <4418F7A2.2080808@san.rr.com> <00a301c648f9$d7e2a810$0302a8c0@pennp4> Message-ID: <44196DCF.6060903@san.rr.com> Penn: Well sometimes it's comforting just knowing you're not alone. At least I'm not losing my mind. :-P Rocky Penn White wrote: > Just for fun (since I have a similar keydown event which has never worked > either), I messed around with it using Alt-Key combinations. I used an "if > intAltDown then Select Case Keycode' structure. Each case will fire one > time but then it stops. So I can go from one tabbed page (pgXXX) to > another, to another, to another but after I've been to all the tabbed pages > once, it stops. Also, once I've been to a tabbed page using the Alt-Key > combination for that tabbed page, it won't go there again unless I close the > form and start over. I also tried me.setfocus, Forms!FormName.Form.SetFocus > and Me.KeyPreview=True (individually and in various combinations) at the end > of the procedure since the documentation says the form or control has to > have the focus for the KeyDown event to work and that didn't help. > > It's almost as if there is a buffer that's getting filled and won't empty > once you've used a KeyDown keystroke or keystroke combination. > > I did some research on MSDN and Google and found nothing helpful although > KeyDown and KeyPress event problems seem to have been around since before > ACC97. > > Penn > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From bchacc at san.rr.com Thu Mar 16 07:54:36 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 16 Mar 2006 05:54:36 -0800 Subject: [AccessD] Key Preview Problem In-Reply-To: <44196C06.1090304@nanaimo.ark.com> References: <44196C06.1090304@nanaimo.ark.com> Message-ID: <44196E1C.7050203@san.rr.com> Tony: Yes! Full of sub forms. Rats. Is this a known problem? Regards, Rocky Tony Septav wrote: > Hey Rocky > Do you have any subforms in your tabs? This will cause a problem. > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From iggy at nanaimo.ark.com Thu Mar 16 08:10:27 2006 From: iggy at nanaimo.ark.com (Tony Septav) Date: Thu, 16 Mar 2006 06:10:27 -0800 Subject: [AccessD] Key Preview Message-ID: <441971D3.3030402@nanaimo.ark.com> Hey Rocky If the subform grabs the focus when you change tabs then it becomes a form with focus and your FKeys don't fire. Ran into this a couple of years ago, I think it was when I wanted to allow a user to navigate through the records but remain in the current tab and not return to the first tab each time they pressed next or previous. From stuart at lexacorp.com.pg Thu Mar 16 08:14:10 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Fri, 17 Mar 2006 00:14:10 +1000 Subject: [AccessD] Key Preview Problem In-Reply-To: <44196E1C.7050203@san.rr.com> References: <44196C06.1090304@nanaimo.ark.com> Message-ID: <4419FF52.26868.12BF11A5@stuart.lexacorp.com.pg> On 16 Mar 2006 at 5:54, Rocky Smolin - Beach Access S wrote: > Tony: > > Yes! Full of sub forms. Rats. Is this a known problem? > Just replied to Rocky off-list. If the subforms get focus when you go to another page and they don't have KeyPreview on, the Keydown doesn't fire. -- Stuart From ecritt1 at alltel.net Thu Mar 16 08:22:27 2006 From: ecritt1 at alltel.net (Penn White) Date: Thu, 16 Mar 2006 09:22:27 -0500 Subject: [AccessD] Key Preview References: <441971D3.3030402@nanaimo.ark.com> Message-ID: <00d201c64905$0d885360$0302a8c0@pennp4> > If the subform grabs the focus when you change tabs > then it becomes a > form with focus and your FKeys don't fire. I also have subforms on my tabbed pages which is why I tried resetting the focus to the main form at the end of the sub. It didn't work. I also tried setting KeyPrevie to yes on the subform and coding the keydown event on the subform which didn't work either. The bottom line is that after firing once, you never get back to the KeyDown event either on the main form or the subform so whatever code you've put in there is irrelevant. Penn From bchacc at san.rr.com Thu Mar 16 08:31:36 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 16 Mar 2006 06:31:36 -0800 Subject: [AccessD] Key Preview Problem In-Reply-To: <4419FF52.26868.12BF11A5@stuart.lexacorp.com.pg> References: <44196C06.1090304@nanaimo.ark.com> <4419FF52.26868.12BF11A5@stuart.lexacorp.com.pg> Message-ID: <441976C8.3030806@san.rr.com> AHA!! AHAHAHAHAHA!!! That's it! I after setting the focus to the tab, I set it to the exit button which is not on the tab form: Case 116 Me.pgOrderNumber.SetFocus KeyCode = 0 'Me.KeyPreview = True Me.cmdExit.SetFocus and walla! it woiks! I suppose I could set the KeyPreview to true on all the sub forms but then they'd also have to have a copy of the KeyDown routine as well, no? Thanks all. Regards, Rocky Stuart McLachlan wrote: > On 16 Mar 2006 at 5:54, Rocky Smolin - Beach Access S wrote: > > >> Tony: >> >> Yes! Full of sub forms. Rats. Is this a known problem? >> >> > > Just replied to Rocky off-list. > If the subforms get focus when you go to another page and they don't have > KeyPreview on, the Keydown doesn't fire. > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From adtp at airtelbroadband.in Thu Mar 16 08:43:12 2006 From: adtp at airtelbroadband.in (A.D.TEJPAL) Date: Thu, 16 Mar 2006 20:13:12 +0530 Subject: [AccessD] Parent form PK changed (VALUE) References: <000001c647d4$2a0901b0$647aa8c0@ColbyM6805> Message-ID: <006a01c64908$01460590$b71165cb@pcadt> Sample code given below, placed in subform's current event, detects and provides an alert whenever master field's value in the parent form changes. It is applicable to both situations i.e. when the master field control on the parent form is a bound one and also when it is unbound. In case of bound master field, each time the parent record changes, current event of subform fires twice (In fact, the child linked control's value gets updated fractionally earlier than that of master liked control). The code as suggested, prevents duplicate alerts on this account, at the same time eliminating redundant message when the form loads initially. A.D.Tejpal --------------- Subform's Code Module (Product_ID is the name of Linked Child Field) ===================================== ' General Declarations Section Private LinkFieldValue As Variant Private Sub Form_Current() If Len(LinkFieldValue) > 0 And _ Product_ID <> LinkFieldValue Then MsgBox "Parent Record Has Changed" End If LinkFieldValue = Product_ID End Sub ===================================== ----- Original Message ----- From: John Colby To: 'Access Developers discussion and problem solving' Sent: Wednesday, March 15, 2006 07:29 Subject: [AccessD] Parent form PK changed (VALUE) Is there a way (built into Access) to tell if the parent form record changed from the subform? IOW, in the case of a M-M table, implemented in a subform, one of the fields of the M-M would be the parent ID. tblCompany CO_ID CO_Name CO_Etc tblPeople PE_ID PE_Lname PE_Fname PE_Etc tblEmployees EM_ID EM_IDPE EM_IDCO If the parent form is the company, the child form is the employee, the "link" is the EM_IDCO with a combo representing the people. I want to monitor when the parent ID changes (CO_ID) from the subform sfrmEmployee. I know that the subform control has a Link Child Field / Link Master Field pair of properties, but is there a property that feeds the VALUE of the Link Master Field into the subform for it's use? The subform filters its recordset based on the Link Master Field VALUE so it must be able to see it. In fact all I want to know is THAT the Link Master Field VALUE changed so that I can requery a dependent combo in the child form. John W. Colby www.ColbyConsulting.com From Patricia.O'Connor at otda.state.ny.us Thu Mar 16 08:54:07 2006 From: Patricia.O'Connor at otda.state.ny.us (O'Connor, Patricia (OTDA)) Date: Thu, 16 Mar 2006 09:54:07 -0500 Subject: [AccessD] OT: Modify Office folder name without re-Installing Message-ID: <01DBAB52E30A9A4AB3D94EF8029EDBE8016B2489@EXCNYSM0A1AI.nysemail.nyenet> Thanks - Oh well will try to uninstall 2k reinstall in a renamed folder. At work they have a "team" that is supposed to do the installs and updates. Right now they are waiting for information from some "tech" place because they don't understand about custom installs. I have been fixing my computer since their last install. I have installed in different folders on my home computer with no problem and I have an older computer. Thanks ************************************************** * Patricia O'Connor * Associate Computer Programmer Analyst ************************************************** > -------------------------------------------------------- This e-mail, including any attachments, may be confidential, privileged or otherwise legally protected. It is intended only for the addressee. If you received this e-mail in error or from someone who was not authorized to send it to you, do not disseminate, copy or otherwise use this e-mail or its attachments. Please notify the sender immediately by reply e-mail and delete the e-mail from your system. -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid > Sent: Wednesday, March 15, 2006 03:29 PM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] OT: Modify Office folder name without > re-Installing > > Patti, > > I don't know how you can rename the existing folders, but you > can change the directory where the new version goes. I have > Access 97, Access 2000, Office XP, and Office 2003 on my > system at home. When I installed office 2003, I changed the > default directory from ...\Microsoft Office\ (or whatever it > is) to ...\MS Office 2003\. That lets the different versions > all work well together. > > Bobby > > From harkinsss at bellsouth.net Thu Mar 16 08:58:45 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Thu, 16 Mar 2006 09:58:45 -0500 Subject: [AccessD] Contest Message-ID: <000801c6490a$210da200$d5b3d6d1@SUSANONE> http://www.madeinexpresscontest.com/ Got this link from Mike G's site -- thought it might inspire someone. :) Susan H. From ecritt1 at alltel.net Thu Mar 16 09:09:41 2006 From: ecritt1 at alltel.net (Penn White) Date: Thu, 16 Mar 2006 10:09:41 -0500 Subject: [AccessD] Key Preview Problem References: <44196C06.1090304@nanaimo.ark.com><4419FF52.26868.12BF11A5@stuart.lexacorp.com.pg> <441976C8.3030806@san.rr.com> Message-ID: <00e501c6490b$a7175570$0302a8c0@pennp4> > I suppose I could set the KeyPreview to true on all the sub forms but > then they'd also have to have a copy of the KeyDown routine as well, no? Congratulations!! I also got it working by copying the KeyDown sub to the subform control that gets the focus when you go to the tabbed page. It didn't work when I used the KeyDown event for the subform itself. I like your way but I also like having the user end up in the correct first control on the form for data entry. If they hit Tab or Enter when the focus is on the Exit button, I'm not sure where the cursor would go to. I'm also not sure the KeyCode=0 is necessary but I haven't tested it. I also use this for PgUp and PgDn to go to the next main record because when you're in a subform, as you know, it just tries to go to the next record in the subform and really gets screwed up. Private Sub FullName_KeyDown(KeyCode As Integer, Shift As Integer) Dim intAltDown As Integer intAltDown = (Shift And acAltMask) > 0 If intAltDown Then Select Case KeyCode Case 76 ' L Me.Parent.Pg1.SetFocus KeyCode = 0 Case 78 ' N Me.Parent.Pg2.SetFocus KeyCode = 0 Case 68 ' D Me.Parent.Pg3.SetFocus KeyCode = 0 Case 83 Me.Parent.Pg4.SetFocus KeyCode = 0 End Select End If End Sub Penn From Lambert.Heenan at AIG.com Thu Mar 16 10:04:45 2006 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Thu, 16 Mar 2006 10:04:45 -0600 Subject: [AccessD] Key Preview Problem Message-ID: <1D7828CDB8350747AFE9D69E0E90DA1F1E889830@xlivmbx21.aig.com> I just threw a quick form together (in Access 2002). Set the property sheet KeyPreview to True and then added this KeyDown event handler... Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode Case vbKeyF6 Text0.SetFocus KeyCode = 0 Case vbKeyF7 Text2.SetFocus KeyCode = 0 Case vbKeyF8 Text4.SetFocus KeyCode = 0 End Select End Sub It works exactly as you'd hope, and there is no calling of the spellchecker on any number of F7 keys. If you are still having troubles then I would say you have a corrupt form. Back up the application and then go through the usual process for getting rid of corruptions... Decompile and if that does not work try importing everything into a new, blank database. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Wednesday, March 15, 2006 6:13 PM To: Access Developers discussion and problem solving Subject: [AccessD] Key Preview Problem Dear List: I have a tab form with four tabs. I want to set the focus in each tab by pressing the functions keys F5, F6, F7, F8. The KeyDown event is coded: Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode Case 116 Me.pgOrderNumber.SetFocus KeyCode = 0 Case 117 Me.pgReceiving.SetFocus KeyCode = 0 Case 118 Me.pgProcessing.SetFocus KeyCode = 0 Case 119 Me.pgShipping.SetFocus KeyCode = 0 End Select End Sub The first time I press one of the four function keys it works. Then, it quits. (Like if I press F7 the first time is sets the focus to pgProcessing, the second time it invokes the spell checker.) Does anyone know why this would happen? MTIA Rocky -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bchacc at san.rr.com Thu Mar 16 10:08:41 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 16 Mar 2006 08:08:41 -0800 Subject: [AccessD] Key Preview Problem In-Reply-To: <00e501c6490b$a7175570$0302a8c0@pennp4> References: <44196C06.1090304@nanaimo.ark.com> <4419FF52.26868.12BF11A5@stuart.lexacorp.com.pg> <441976C8.3030806@san.rr.com> <00e501c6490b$a7175570$0302a8c0@pennp4> Message-ID: <44198D89.2060004@san.rr.com> In my case the tabs are so 'feature rich' (to use a Microsoft phrase) that there's no one starting point on any tab page. It's mostly editing and not new records. In fact, the user didn't even ask for this. I'm just a mousophobe so I always try to make my apps so they can be run from the keyboard as much as possible. Rocky Penn White wrote: >> I suppose I could set the KeyPreview to true on all the sub forms but >> then they'd also have to have a copy of the KeyDown routine as well, no? >> > > Congratulations!! > > I also got it working by copying the KeyDown sub to the subform control that > gets the focus when you go to the tabbed page. It didn't work when I used > the KeyDown event for the subform itself. I like your way but I also like > having the user end up in the correct first control on the form for data > entry. If they hit Tab or Enter when the focus is on the Exit button, I'm > not sure where the cursor would go to. I'm also not sure the KeyCode=0 is > necessary but I haven't tested it. > > I also use this for PgUp and PgDn to go to the next main record because when > you're in a subform, as you know, it just tries to go to the next record in > the subform and really gets screwed up. > > Private Sub FullName_KeyDown(KeyCode As Integer, Shift As Integer) > Dim intAltDown As Integer > intAltDown = (Shift And acAltMask) > 0 > If intAltDown Then > Select Case KeyCode > Case 76 ' L > Me.Parent.Pg1.SetFocus > KeyCode = 0 > Case 78 ' N > Me.Parent.Pg2.SetFocus > KeyCode = 0 > Case 68 ' D > Me.Parent.Pg3.SetFocus > KeyCode = 0 > Case 83 > Me.Parent.Pg4.SetFocus > KeyCode = 0 > End Select > End If > End Sub > > Penn > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From ecritt1 at alltel.net Thu Mar 16 10:48:04 2006 From: ecritt1 at alltel.net (Penn White) Date: Thu, 16 Mar 2006 11:48:04 -0500 Subject: [AccessD] Key Preview Problem References: <44196C06.1090304@nanaimo.ark.com><4419FF52.26868.12BF11A5@stuart.lexacorp.com.pg><441976C8.3030806@san.rr.com><00e501c6490b$a7175570$0302a8c0@pennp4> <44198D89.2060004@san.rr.com> Message-ID: <00f801c64919$657f7620$0302a8c0@pennp4> I share your mouseophobia and my users didn't request it either. I'm not even sure they'll even use the Alt keys and have wondered several times why I was doing this but I do it anyway. Because of the subforms, I don't think Lambert's suggestion will work though. I think I'd still have to put code in each subform that gets the focus but I'll give it a try just to be complete. BTW, I was wrong about putting the KeyDown code in the Form_KeyDown event handler. It works fine. I'd forgotten that I had more than one subform on the tabbed page and was coding the wrong subform...oh well. In any event, I've had a great time exploring this with everyone and have learned a lot. Thanks to all. Penn From cfoust at infostatsystems.com Thu Mar 16 10:58:24 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 16 Mar 2006 08:58:24 -0800 Subject: [AccessD] Key Preview Problem Message-ID: Rocky, Why not just put a hot key in the tab page label? Then they only have to type the shortcut to get to the page, no keydown or remembering which function key goes where. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 16, 2006 8:09 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Key Preview Problem In my case the tabs are so 'feature rich' (to use a Microsoft phrase) that there's no one starting point on any tab page. It's mostly editing and not new records. In fact, the user didn't even ask for this. I'm just a mousophobe so I always try to make my apps so they can be run from the keyboard as much as possible. Rocky Penn White wrote: >> I suppose I could set the KeyPreview to true on all the sub forms but >> then they'd also have to have a copy of the KeyDown routine as well, no? >> > > Congratulations!! > > I also got it working by copying the KeyDown sub to the subform > control that gets the focus when you go to the tabbed page. It didn't > work when I used the KeyDown event for the subform itself. I like > your way but I also like having the user end up in the correct first > control on the form for data entry. If they hit Tab or Enter when the > focus is on the Exit button, I'm not sure where the cursor would go > to. I'm also not sure the KeyCode=0 is necessary but I haven't tested it. > > I also use this for PgUp and PgDn to go to the next main record > because when you're in a subform, as you know, it just tries to go to > the next record in the subform and really gets screwed up. > > Private Sub FullName_KeyDown(KeyCode As Integer, Shift As Integer) > Dim intAltDown As Integer > intAltDown = (Shift And acAltMask) > 0 > If intAltDown Then > Select Case KeyCode > Case 76 ' L > Me.Parent.Pg1.SetFocus > KeyCode = 0 > Case 78 ' N > Me.Parent.Pg2.SetFocus > KeyCode = 0 > Case 68 ' D > Me.Parent.Pg3.SetFocus > KeyCode = 0 > Case 83 > Me.Parent.Pg4.SetFocus > KeyCode = 0 > End Select > End If > End Sub > > Penn > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From ldoering at symphonyinfo.com Thu Mar 16 11:00:07 2006 From: ldoering at symphonyinfo.com (Liz Doering) Date: Thu, 16 Mar 2006 11:00:07 -0600 Subject: [AccessD] Report Setup Problem Message-ID: <855499653F55AD4190B242717DF132BC10C506@dewey.Symphony.local> I'm about to pull out all my hair. I have a nice report that has been running peaceably for years in a database we built for a client. It has 9 subreports that have also been trouble free for ages. The subreports are formatted to beautifully march down one column and then a second column. It began life in Access97, but now it is in Access2000, and I am running WinXP. Recently I borrowed it from the original client's project into a new project for a new client. As I imported it from one .mdb to the other, Access decided that 1-inch margins were more appropriate for the main report and the subreports. No problem, I think, I'll change them back to the original smaller ones. Unfortunately, I can't get Access to agree to this. I open the report in design view, change the margins--and the column settings--save and run the report. All is well. I close the report, run it again, and again, all is well. I close the report, run it again, and behold! The 1-inch margins and single column are back. I cuss and set them all again. After several attempts this is getting old. And my coworkers are getting jumpy, because I am screaming. I have set all the margins on all the subreports down. I have changed default printers. I have reimported the report and given it a new name. I have stood on my head while turning around three times and muttered several incantations. Does any one have any other suggestions? Thanks, Liz Doering Senior Developer Symphony Information Services liz at symphonyinfo.com www.symphonyinfo.com 763-391-7400 From bchacc at san.rr.com Thu Mar 16 11:03:10 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 16 Mar 2006 09:03:10 -0800 Subject: [AccessD] Key Preview Problem In-Reply-To: References: Message-ID: <44199A4E.6000804@san.rr.com> I tried that first and it didn't work. Maybe for the same reason. Now maybe it would if I set the focus to the exit button after the page got the focus. I've labeled tabs like this before though : Receiving (F6) so they know which function button to push. Rocky Charlotte Foust wrote: > Rocky, > > Why not just put a hot key in the tab page label? Then they only have > to type the shortcut to get to the page, no keydown or remembering which > function key goes where. > > > Charlotte Foust > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin > - Beach Access Software > Sent: Thursday, March 16, 2006 8:09 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Key Preview Problem > > In my case the tabs are so 'feature rich' (to use a Microsoft phrase) > that there's no one starting point on any tab page. It's mostly editing > and not new records. In fact, the user didn't even ask for this. I'm > just a mousophobe so I always try to make my apps so they can be run > from the keyboard as much as possible. > > Rocky > > > Penn White wrote: > >>> I suppose I could set the KeyPreview to true on all the sub forms but >>> > > >>> then they'd also have to have a copy of the KeyDown routine as well, >>> > no? > >>> >>> >> Congratulations!! >> >> I also got it working by copying the KeyDown sub to the subform >> control that gets the focus when you go to the tabbed page. It didn't >> > > >> work when I used the KeyDown event for the subform itself. I like >> your way but I also like having the user end up in the correct first >> control on the form for data entry. If they hit Tab or Enter when the >> > > >> focus is on the Exit button, I'm not sure where the cursor would go >> to. I'm also not sure the KeyCode=0 is necessary but I haven't tested >> > it. > >> I also use this for PgUp and PgDn to go to the next main record >> because when you're in a subform, as you know, it just tries to go to >> the next record in the subform and really gets screwed up. >> >> Private Sub FullName_KeyDown(KeyCode As Integer, Shift As Integer) >> Dim intAltDown As Integer >> intAltDown = (Shift And acAltMask) > 0 >> If intAltDown Then >> Select Case KeyCode >> Case 76 ' L >> Me.Parent.Pg1.SetFocus >> KeyCode = 0 >> Case 78 ' N >> Me.Parent.Pg2.SetFocus >> KeyCode = 0 >> Case 68 ' D >> Me.Parent.Pg3.SetFocus >> KeyCode = 0 >> Case 83 >> Me.Parent.Pg4.SetFocus >> KeyCode = 0 >> End Select >> End If >> End Sub >> >> Penn >> >> >> > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From ecritt1 at alltel.net Thu Mar 16 12:21:37 2006 From: ecritt1 at alltel.net (Penn White) Date: Thu, 16 Mar 2006 13:21:37 -0500 Subject: [AccessD] Backup BE Db to CD? - 2nd Request References: <010901c6486e$292b16d0$0302a8c0@pennp4> Message-ID: <001801c64926$76d3ba50$0302a8c0@pennp4> This one got a little lost in the shuffle. Still wondering if anyone has any ideas about it. >I would like to automate (use a command button w/VBA code) backing up of >the > backend database to a CD. I have searched and searched and found nothing > appropriate. Perhaps it's so simple, nobody bothers to talk about it... > > I'm already using Neil Squires' BackupData class for backing up to a hard > drive. > http://www.rogersaccesslibrary.com/Otherdownload.asp?SampleName='AutoBackupDemo.zip' > > Any ideas greatly appreciated. > > Penn From cyx5 at cdc.gov Thu Mar 16 12:25:31 2006 From: cyx5 at cdc.gov (Nicholson, Karen) Date: Thu, 16 Mar 2006 13:25:31 -0500 Subject: [AccessD] Report Setup Problem Message-ID: Easy. It is in the options in database; if the auto correct thingies are checked on, you are hosed. Wait until you move to A2k3 and people can't even preview or print or anything if you develop using a network printer. Those people have to connect to a bogus .pdf or lpt1 printer, then redirect to their own printer before they can do ANYTHING with reports. Sigh. Karen S. Nicholson Programmer Analyst EG&G Technical Services, Inc. Pittsburgh, PA Phone: 412-386-6649 Email: cyx5 at cdc.gov -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Liz Doering Sent: Thursday, March 16, 2006 12:00 PM To: Access Developers discussion and problem solving Subject: [AccessD] Report Setup Problem I'm about to pull out all my hair. I have a nice report that has been running peaceably for years in a database we built for a client. It has 9 subreports that have also been trouble free for ages. The subreports are formatted to beautifully march down one column and then a second column. It began life in Access97, but now it is in Access2000, and I am running WinXP. Recently I borrowed it from the original client's project into a new project for a new client. As I imported it from one .mdb to the other, Access decided that 1-inch margins were more appropriate for the main report and the subreports. No problem, I think, I'll change them back to the original smaller ones. Unfortunately, I can't get Access to agree to this. I open the report in design view, change the margins--and the column settings--save and run the report. All is well. I close the report, run it again, and again, all is well. I close the report, run it again, and behold! The 1-inch margins and single column are back. I cuss and set them all again. After several attempts this is getting old. And my coworkers are getting jumpy, because I am screaming. I have set all the margins on all the subreports down. I have changed default printers. I have reimported the report and given it a new name. I have stood on my head while turning around three times and muttered several incantations. Does any one have any other suggestions? Thanks, Liz Doering Senior Developer Symphony Information Services liz at symphonyinfo.com www.symphonyinfo.com 763-391-7400 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From markamatte at hotmail.com Thu Mar 16 12:55:25 2006 From: markamatte at hotmail.com (Mark A Matte) Date: Thu, 16 Mar 2006 18:55:25 +0000 Subject: [AccessD] Key Preview Problem Message-ID: About 2 years ago I had an experience where I instantly developed the "mouseophobia" disease. I developed an app for around 20 users. On the 3rd day of 5...I was directed to the last machine to load said app. When I got there I was introduced to the user...and the JAWS system. The last user was visually impaired and could not use the mouse. For the next 48 hours I re-engineered all of the functionality to not need a mouse. It was definitely an educational experience, and is always just under the surface as I take on new projects. Mark A. Matte >From: "Penn White" >Reply-To: Access Developers discussion and problem >solving >To: "Access Developers discussion and problem >solving" >Subject: Re: [AccessD] Key Preview Problem >Date: Thu, 16 Mar 2006 11:48:04 -0500 > >I share your mouseophobia and my users didn't request it either. I'm not >even sure they'll even use the Alt keys and have wondered several times why >I was doing this but I do it anyway. > >Because of the subforms, I don't think Lambert's suggestion will work >though. I think I'd still have to put code in each subform that gets the >focus but I'll give it a try just to be complete. > >BTW, I was wrong about putting the KeyDown code in the Form_KeyDown event >handler. It works fine. I'd forgotten that I had more than one subform on >the tabbed page and was coding the wrong subform...oh well. > >In any event, I've had a great time exploring this with everyone and have >learned a lot. Thanks to all. > >Penn > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From shamil at users.mns.ru Thu Mar 16 13:42:41 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Thu, 16 Mar 2006 22:42:41 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant> <001101c64810$f9ad0420$6501a8c0@Nant> Message-ID: <004601c64932$45f25660$6501a8c0@Nant> Hi All, There is newer version of subject test available at http://smsconsulting.spb.ru/download/tests/a2dds.htm If you will have some time when your compute will be free over weekend please run it. I will try to consistently enlarge/improve this test set. Some users report it runs OK, e.g.: <<< Connection = Provider=SQLOLEDB.1; Connection Timeout = 5; Server=\SQLEXPRESS; Database=Northwind; Integrated Security = SSPI; Test successfully finished. Backend: MS SQL Cycles to pass: 2500 Cycles passed: 2500 Forms opened: 12500 Start time: 3/15/2006 5:03:45 PM End time: 3/15/2006 6:11:13 PM >>> It (latest version) currently gives me trouble for MS Access 2003 backend after about 2000+ cycles: <<< ADODB Bound Forms Crash Test v.1.9 [16-MAR-06] Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 3011 - The Microsoft Jet database engine could not find the object ''. Make sure the object exists and that you spell its name and the path name correctly. Backend: MS Access Binding: ADODB Cycles to pass: 2300 Cycles passed: 2012 Forms opened: 10059 Start time: 16.03.2006 20:25:57 End time: 16.03.2006 22:07:35 Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 71639, Disposed = 71639 >>> It would be useful to have more statistics to find stable workarounds and/or define the set of environments where this test doesn't run OK. Thank you in advance for any feedback. Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 15, 2006 12:14 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > New version of tests is now available at > http://smsconsulting.spb.ru/download/tests/a2dds.htm . > It uses library mdb as it was planned and it has some other improvements. > > Some users report they have problems with MS Access XP. > I did test on my main development PC and it worked OK with MS Access XP. > Your additional feedback on this subject would be very useful to fix the > problem and to improve the tests! > > Thank you. > > Shamil > From jimjih at comcast.net Thu Mar 16 14:05:12 2006 From: jimjih at comcast.net (jimjih at comcast.net) Date: Thu, 16 Mar 2006 20:05:12 +0000 Subject: [AccessD] Key Preview Problem Message-ID: <031620062005.13586.4419C4F800007AAC000035122200761438080706030706@comcast.net> Hi all, This is probably a simple problem, but I can't find the answer in Help or several books: I have a form to enter Delivery Tickets. The data can take several avenues as to how it is billed, so I use Option Groups to get that info, and then I make certain blocks visible or not visible. If I close the form and re-open, the option groups will have neither option selected. But if I use the Control to Enter a New Ticket, the option that was last used is still checked. In the "Enter New Ticket" control (Properties or code) can I tell access to uncheck the options. Setting the "No Default" property doesn't do it. TIA, Jim From ldoering at symphonyinfo.com Thu Mar 16 14:07:34 2006 From: ldoering at symphonyinfo.com (Liz Doering) Date: Thu, 16 Mar 2006 14:07:34 -0600 Subject: [AccessD] Report Setup Problem Message-ID: <855499653F55AD4190B242717DF132BC10C50E@dewey.Symphony.local> Thanks Karen. I had had to import all objects to a new mdb recently and forgotten to turn Name Auto Correct off. It is an evil "feature" Thanks, Liz -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Nicholson, Karen Sent: Thursday, March 16, 2006 12:46 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Report Setup Problem Easy. It is in the options in database; if the auto correct thingies are checked on, you are hosed. Wait until you move to A2k3 and people can't even preview or print or anything if you develop using a network printer. Those people have to connect to a bogus .pdf or lpt1 printer, then redirect to their own printer before they can do ANYTHING with reports. Sigh. Karen S. Nicholson Programmer Analyst EG&G Technical Services, Inc. Pittsburgh, PA Phone: 412-386-6649 Email: cyx5 at cdc.gov -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Liz Doering Sent: Thursday, March 16, 2006 12:00 PM To: Access Developers discussion and problem solving Subject: [AccessD] Report Setup Problem I'm about to pull out all my hair. I have a nice report that has been running peaceably for years in a database we built for a client. It has 9 subreports that have also been trouble free for ages. The subreports are formatted to beautifully march down one column and then a second column. It began life in Access97, but now it is in Access2000, and I am running WinXP. Recently I borrowed it from the original client's project into a new project for a new client. As I imported it from one .mdb to the other, Access decided that 1-inch margins were more appropriate for the main report and the subreports. No problem, I think, I'll change them back to the original smaller ones. Unfortunately, I can't get Access to agree to this. I open the report in design view, change the margins--and the column settings--save and run the report. All is well. I close the report, run it again, and again, all is well. I close the report, run it again, and behold! The 1-inch margins and single column are back. I cuss and set them all again. After several attempts this is getting old. And my coworkers are getting jumpy, because I am screaming. I have set all the margins on all the subreports down. I have changed default printers. I have reimported the report and given it a new name. I have stood on my head while turning around three times and muttered several incantations. Does any one have any other suggestions? Thanks, Liz Doering Senior Developer Symphony Information Services liz at symphonyinfo.com www.symphonyinfo.com 763-391-7400 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Thu Mar 16 14:27:05 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Thu, 16 Mar 2006 23:27:05 +0300 Subject: [AccessD] MS Access 2003/XP - Upsizing Wizard Message-ID: <000c01c64938$03eb0d10$6501a8c0@Nant> Hi All, I'm getting this strange message from Upsizing wizard when MS SQL 2000 works well and available from the other development tools and applications: <+ Upsizing WIzard [DBNETLIB] ConnectionOpen (Connect()).]SQL Server does not exist or access denied. -> Have anybody seen something like that? Is there somewhere the sources of upsizing wizard to fix the problem? Yes, I think I enter security attibutes correctly in a login dialog shown by upsizing wizard - I did try to use both Integrated Security and UserName/Password - always fails with different databases, which are available using the same DSN, e.g. to attach tables to MDBs or create ADPs etc. Thank you. Shamil From shamil at users.mns.ru Thu Mar 16 14:51:03 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Thu, 16 Mar 2006 23:51:03 +0300 Subject: [AccessD] MS Access 2003/XP - Upsizing Wizard References: <000c01c64938$03eb0d10$6501a8c0@Nant> Message-ID: <001b01c6493b$586e9ca0$6501a8c0@Nant> FYI: This didn't help - http://support.microsoft.com/kb/838594 I tried. Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "!DBA-MAIN" Sent: Thursday, March 16, 2006 11:27 PM Subject: [AccessD] MS Access 2003/XP - Upsizing Wizard > Hi All, > > I'm getting this strange message from Upsizing wizard when MS SQL 2000 > works > well and available from the other development tools and applications: > > <+ > Upsizing WIzard > [DBNETLIB] ConnectionOpen (Connect()).]SQL Server does not exist or access > denied. > -> > > Have anybody seen something like that? > Is there somewhere the sources of upsizing wizard to fix the problem? > > Yes, I think I enter security attibutes correctly in a login dialog shown > by > upsizing wizard - I did try to use both Integrated Security and > UserName/Password - always fails with different databases, which are > available using the same DSN, e.g. to attach tables to MDBs or create ADPs > etc. > > Thank you. > > Shamil > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From martyconnelly at shaw.ca Thu Mar 16 15:15:44 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Thu, 16 Mar 2006 13:15:44 -0800 Subject: [AccessD] MS Access 2003/XP - Upsizing Wizard References: <000c01c64938$03eb0d10$6501a8c0@Nant> Message-ID: <4419D580.7080103@shaw.ca> Some notes and links for Upsizing to SQL 2000 and 2005 There is a problem which occurs when your Access database and the instance of SQL Server do not exist on the same computer. More so with Express because of TCP and firewalls. Avoid if possible. See blurb further down for fix on SQL 2000, and the Express forums post for SQL Express fix. How to use data transformation services (DTS) to export data from a Microsoft Access database to an SQL Server database http://support.microsoft.com/default.aspx?scid=kb;en-us;285829 Note: DTS is replaced in SQL 2005 by SSIS and is also not available for Express install. Access 2003 troubleshoot upsize wizard http://office.microsoft.com/en-us/assistance/HP030894261033.aspx http://office.microsoft.com/en-us/assistance/CH062526781033.aspx Access 2002 troubleshoot upsize wizard http://support.microsoft.com/kb/325019/EN-US/ Access 2003 Database Upgrade to SQL Server 2005 http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=128444&SiteID=1 Different Machine SQL 2000 upsize problem. This problem occurs when your Access database and the instance of SQL Server do not exist on the same computer. WORKAROUND To work around this problem, use a File DSN to connect to your instance of SQL Server when you upsize your Access database. To do this, follow these steps: Start Access. Open the problem database. On the Tools menu, point to Database Utilities, and then click Upsizing Wizard. In the Upsizing Wizard dialog box, click Use existing database, and then click Next. In the Select Data Source dialog box, select the appropriate DSN to connect to your instance of SQL Server on the File Data Source tab. Click OK. Enter the appropriate authentication information to connect to your instance of SQL Server if the SQL Server Login dialog box appears. Follow the instructions in the Upsizing Wizard. Notice that the Access database is successfully upsized without any errors. MORE INFORMATION Steps to reproduce the problem Start Access. Open the Northwind.mdb sample database. On the Tools menu, point to Database Utilities, and then click Upsizing Wizard. In the Upsizing Wizard dialog box, click Use existing database, and then click Next. In the Select Data Source dialog box, select the appropriate DSN to connect to your instance of SQL Server on the Machine Data Source tab. Click OK. Enter the appropriate authentication information to connect to your instance of SQL Server if the SQL Server Login dialog box appears. Notice that you receive the error messages that are mentioned in the "Symptoms" section, and you cannot continue the upsizing process. REFERENCES For more information about the Upsizing Wizard in Access 2003, click Microsoft Office Access Help on the Help menu, type About upsizing a Microsoft Access database in the Search for box in the Assistance pane, and then click Start searching to view the topic. For more information about the Upsizing Wizard in Access 2002, click Microsoft Access Help on the Help menu, type About upsizing a Microsoft Access database in the Office Assistant or the Answer Wizard, and then click Search to view the topic. For additional information about how to use the Upsizing Wizard in Access 2002, click the following article number to view the article in the Microsoft Knowledge Base: MSKB 330468 HOW TO: Use the Microsoft Access 2002 Upsizing Wizard For additional information about issues with the Upsizing Wizard in Access 2002, click the following article number to view the article in the Microsoft Knowledge Base: MSKB 328319 ACC2002: Issues with the Access 2002 Upsizing Wizard Shamil Salakhetdinov wrote: >Hi All, > >I'm getting this strange message from Upsizing wizard when MS SQL 2000 works >well and available from the other development tools and applications: > ><+ >Upsizing WIzard >[DBNETLIB] ConnectionOpen (Connect()).]SQL Server does not exist or access >denied. >-> > >Have anybody seen something like that? >Is there somewhere the sources of upsizing wizard to fix the problem? > >Yes, I think I enter security attibutes correctly in a login dialog shown by >upsizing wizard - I did try to use both Integrated Security and >UserName/Password - always fails with different databases, which are >available using the same DSN, e.g. to attach tables to MDBs or create ADPs >etc. > >Thank you. > >Shamil > > > -- Marty Connelly Victoria, B.C. Canada From shamil at users.mns.ru Thu Mar 16 15:52:20 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Fri, 17 Mar 2006 00:52:20 +0300 Subject: [AccessD] MS Access 2003/XP - Upsizing Wizard References: <000c01c64938$03eb0d10$6501a8c0@Nant> <4419D580.7080103@shaw.ca> Message-ID: <003001c64943$e807a750$6501a8c0@Nant> Thank you Marty, for your valuable feedback! No, I'm running upsizing Wizard on the same PC where MS SQL 2003 is running. What I did not that a long ago(and MS SQL 200 was installed a long ago) - I did change the name of my development/test Windows 2003 Server PC. This is probably the case but as I wrote - other development tools and applications work OK with MS SQL Server and I can open connectiions via code etc. This upsizing wizard is a strange "beast"... Shamil ----- Original Message ----- From: "MartyConnelly" To: "Access Developers discussion and problem solving" Sent: Friday, March 17, 2006 12:15 AM Subject: Re: [AccessD] MS Access 2003/XP - Upsizing Wizard > Some notes and links for Upsizing to SQL 2000 and 2005 > > There is a problem which occurs when your Access database and the > instance of SQL > Server do not exist on the same computer. More so with Express because > of TCP and firewalls. > Avoid if possible. > > See blurb further down for fix on SQL 2000, and the Express forums post > for SQL Express fix. > > How to use data transformation services (DTS) to export data from a > Microsoft Access database to an SQL Server database > http://support.microsoft.com/default.aspx?scid=kb;en-us;285829 > Note: DTS is replaced in SQL 2005 by SSIS and is also not available for > Express install. > > Access 2003 troubleshoot upsize wizard > > http://office.microsoft.com/en-us/assistance/HP030894261033.aspx > http://office.microsoft.com/en-us/assistance/CH062526781033.aspx > > Access 2002 troubleshoot upsize wizard > http://support.microsoft.com/kb/325019/EN-US/ > > Access 2003 Database Upgrade to SQL Server 2005 > > http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=128444&SiteID=1 > > > Different Machine SQL 2000 upsize problem. > > This problem occurs when your Access database and the instance of SQL > Server do not exist on the same computer. > WORKAROUND > To work around this problem, use a File DSN to connect to your instance of > SQL Server when you upsize your Access database. To do this, follow these > steps: > Start Access. > Open the problem database. > On the Tools menu, point to Database Utilities, and then click Upsizing > Wizard. > In the Upsizing Wizard dialog box, click Use existing database, and then > click Next. > In the Select Data Source dialog box, select the appropriate DSN to > connect > to your instance of SQL Server on the File Data Source tab. > Click OK. > Enter the appropriate authentication information to connect to your > instance of SQL Server if the SQL Server Login dialog box appears. > > > Follow the instructions in the Upsizing Wizard. > > > Notice that the Access database is successfully upsized without any > errors. > MORE INFORMATION > Steps to reproduce the problem > Start Access. > Open the Northwind.mdb sample database. > On the Tools menu, point to Database Utilities, and then click Upsizing > Wizard. > In the Upsizing Wizard dialog box, click Use existing database, and then > click Next. > In the Select Data Source dialog box, select the appropriate DSN to > connect > to your instance of SQL Server on the Machine Data Source tab. > Click OK. > Enter the appropriate authentication information to connect to your > instance of SQL Server if the SQL Server Login dialog box appears. > > > Notice that you receive the error messages that are mentioned in the > "Symptoms" section, and you cannot continue the upsizing process. > REFERENCES > For more information about the Upsizing Wizard in Access 2003, click > Microsoft Office Access Help on the Help menu, type About upsizing a > Microsoft Access database in the Search for box in the Assistance pane, > and > then click Start searching to view the topic. > > > For more information about the Upsizing Wizard in Access 2002, click > Microsoft Access Help on the Help menu, type About upsizing a Microsoft > Access database in the Office Assistant or the Answer Wizard, and then > click Search to view the topic. > > > For additional information about how to use the Upsizing Wizard in Access > 2002, click the following article number to view the article in the > Microsoft Knowledge Base: > MSKB 330468 HOW TO: Use the Microsoft Access 2002 Upsizing Wizard > > > For additional information about issues with the Upsizing Wizard in Access > 2002, click the following article number to view the article in the > Microsoft Knowledge Base: > MSKB 328319 ACC2002: Issues with the Access 2002 Upsizing Wizard > <<< tail skipped>>> From KIsmert at TexasSystems.com Thu Mar 16 15:48:16 2006 From: KIsmert at TexasSystems.com (Ken Ismert) Date: Thu, 16 Mar 2006 15:48:16 -0600 Subject: [AccessD] Dying on Code Here Message-ID: Karen, I'd be tempted to try something like this: . . . Dim rTDef As DAO.TableDef Dim rFld As DAO.Field On Error GoTo HandleErr For i = 0 To CurrentDb.TableDefs.Count - 1 If (CurrentDb.TableDefs(i).Name Like "*SAF") Then Set rTDef = CurrentDb.TableDefs(i) Debug.Print "Table: " & rTDef.Name ' Init SQL string strSQLTest = "" For k = 0 To Me.Controls.Count - 1 On Error Resume Next ' Try to get matching table field Set rFld = rTDef.Fields(Me.Controls(k).Name) If Err.Number <> 0 Then ' Table has field with matching name Debug.Print rFld.Name strFieldNameChg = "Forms![frmRequiredFieldReview]![" & rFld.Name & "chg]" ' Build set list strSQLTest = strSQLTest & IIf(strSQLTest > " ", ", ", "") & rFld.Name & " = " & strFieldNameChg Debug.Print strSQLTest Else ' Table has no field with matching name Debug.Print "Missing Field: " & Me.Controls(k).Name & "; Table: " & rTDef.Name Err.Clear End If Next k On Error GoTo HandleErr ' Add Update statement prefix, suffix strSQLTest = "update " & rTDef.Name & " set " & strSQLTest & ";" Debug.Print strSQLTest Stop ' DoCmd.RunSQL strsqlTest End If Next i Exit Sub HandleErr: MsgBox Err.Number & " - " & Err.Description Exit Sub End Sub I put in a simple error handler. I used On Error Resume Next so I could grab the matching field name using the control name. If no error, I add the field to the set list. I tack on the Update prefix just before executing. This is air code, so double-check before running. -Ken From stuart at lexacorp.com.pg Thu Mar 16 15:50:38 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Fri, 17 Mar 2006 07:50:38 +1000 Subject: [AccessD] Option Boxes - was Key Preview Problem In-Reply-To: <031620062005.13586.4419C4F800007AAC000035122200761438080706030706@comcast.net> Message-ID: <441A6A4E.28202.1460FA72@stuart.lexacorp.com.pg> On 16 Mar 2006 at 20:05, jimjih at comcast.net wrote: > Hi all, > This is probably a simple problem, but I can't find the answer in Help or > several books: I have a form to enter Delivery Tickets. The data can take > several avenues as to how it is billed, so I use Option Groups to get that > info, and then I make certain blocks visible or not visible. If I close the > form and re-open, the option groups will have neither option selected. But > if I use the Control to Enter a New Ticket, the option that was last used is > still checked. In the "Enter New Ticket" control (Properties or code) can I > tell access to uncheck the options. Setting the "No Default" property > doesn't do it. > I presume that the option groups are unbound. You need to set the value of the option group to a number which doesn't correspond to any of the Option Values of it's child buttons. Since re-opening the form does this, it looks like you just need to set them to 0. -- Stuart From martyconnelly at shaw.ca Thu Mar 16 16:15:16 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Thu, 16 Mar 2006 14:15:16 -0800 Subject: [AccessD] MS Access 2003/XP - Upsizing Wizard References: <000c01c64938$03eb0d10$6501a8c0@Nant> <4419D580.7080103@shaw.ca> <003001c64943$e807a750$6501a8c0@Nant> Message-ID: <4419E374.7060206@shaw.ca> Can you directly link to tables on SQL Server 2000 from Access? If you are running WinXP SP2, I wonder if the wizard is using named pipes or TCP/IP sockets network library or you are using WinXP firewall How to configure Windows XP Service Pack 2 (SP2) for use with SQL Server http://support.microsoft.com/?kbid=841249 How to use a script to programmatically open ports for SQL Server to use on systems that are running Windows XP Service Pack 2 http://support.microsoft.com/kb/839980/ Shamil Salakhetdinov wrote: >Thank you Marty, for your valuable feedback! > >No, I'm running upsizing Wizard on the same PC where MS SQL 2003 is running. > >What I did not that a long ago(and MS SQL 200 was installed a long ago) - I >did change the name of my development/test Windows 2003 Server PC. This is >probably the case but as I wrote - other development tools and applications >work OK with MS SQL Server and I can open connectiions via code etc. > >This upsizing wizard is a strange "beast"... > >Shamil > >----- Original Message ----- >From: "MartyConnelly" >To: "Access Developers discussion and problem solving" > >Sent: Friday, March 17, 2006 12:15 AM >Subject: Re: [AccessD] MS Access 2003/XP - Upsizing Wizard > > > > >>Some notes and links for Upsizing to SQL 2000 and 2005 >> >>There is a problem which occurs when your Access database and the >>instance of SQL >>Server do not exist on the same computer. More so with Express because >>of TCP and firewalls. >>Avoid if possible. >> >>See blurb further down for fix on SQL 2000, and the Express forums post >>for SQL Express fix. >> >>How to use data transformation services (DTS) to export data from a >>Microsoft Access database to an SQL Server database >>http://support.microsoft.com/default.aspx?scid=kb;en-us;285829 >>Note: DTS is replaced in SQL 2005 by SSIS and is also not available for >>Express install. >> >>Access 2003 troubleshoot upsize wizard >> >>http://office.microsoft.com/en-us/assistance/HP030894261033.aspx >>http://office.microsoft.com/en-us/assistance/CH062526781033.aspx >> >>Access 2002 troubleshoot upsize wizard >>http://support.microsoft.com/kb/325019/EN-US/ >> >>Access 2003 Database Upgrade to SQL Server 2005 >> >>http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=128444&SiteID=1 >> >> >>Different Machine SQL 2000 upsize problem. >> >>This problem occurs when your Access database and the instance of SQL >>Server do not exist on the same computer. >>WORKAROUND >>To work around this problem, use a File DSN to connect to your instance of >>SQL Server when you upsize your Access database. To do this, follow these >>steps: >>Start Access. >>Open the problem database. >>On the Tools menu, point to Database Utilities, and then click Upsizing >>Wizard. >>In the Upsizing Wizard dialog box, click Use existing database, and then >>click Next. >>In the Select Data Source dialog box, select the appropriate DSN to >>connect >>to your instance of SQL Server on the File Data Source tab. >>Click OK. >>Enter the appropriate authentication information to connect to your >>instance of SQL Server if the SQL Server Login dialog box appears. >> >> >>Follow the instructions in the Upsizing Wizard. >> >> >>Notice that the Access database is successfully upsized without any >>errors. >>MORE INFORMATION >>Steps to reproduce the problem >>Start Access. >>Open the Northwind.mdb sample database. >>On the Tools menu, point to Database Utilities, and then click Upsizing >>Wizard. >>In the Upsizing Wizard dialog box, click Use existing database, and then >>click Next. >>In the Select Data Source dialog box, select the appropriate DSN to >>connect >>to your instance of SQL Server on the Machine Data Source tab. >>Click OK. >>Enter the appropriate authentication information to connect to your >>instance of SQL Server if the SQL Server Login dialog box appears. >> >> >>Notice that you receive the error messages that are mentioned in the >>"Symptoms" section, and you cannot continue the upsizing process. >>REFERENCES >>For more information about the Upsizing Wizard in Access 2003, click >>Microsoft Office Access Help on the Help menu, type About upsizing a >>Microsoft Access database in the Search for box in the Assistance pane, >>and >>then click Start searching to view the topic. >> >> >>For more information about the Upsizing Wizard in Access 2002, click >>Microsoft Access Help on the Help menu, type About upsizing a Microsoft >>Access database in the Office Assistant or the Answer Wizard, and then >>click Search to view the topic. >> >> >>For additional information about how to use the Upsizing Wizard in Access >>2002, click the following article number to view the article in the >>Microsoft Knowledge Base: >>MSKB 330468 HOW TO: Use the Microsoft Access 2002 Upsizing Wizard >> >> >>For additional information about issues with the Upsizing Wizard in Access >>2002, click the following article number to view the article in the >>Microsoft Knowledge Base: >>MSKB 328319 ACC2002: Issues with the Access 2002 Upsizing Wizard >> >> >> > ><<< tail skipped>>> > > > -- Marty Connelly Victoria, B.C. Canada From shamil at users.mns.ru Thu Mar 16 16:42:07 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Fri, 17 Mar 2006 01:42:07 +0300 Subject: [AccessD] MS Access 2003/XP - Upsizing Wizard References: <000c01c64938$03eb0d10$6501a8c0@Nant> <4419D580.7080103@shaw.ca><003001c64943$e807a750$6501a8c0@Nant> <4419E374.7060206@shaw.ca> Message-ID: <000801c6494a$dc28d970$6501a8c0@Nant> Yes, Marty, I can directly link tables from MS SQL Server 2000. I do use MS Windows 2003 Server SP1. I think now it's firewall *Agnitum Outpost) which blocks Upsizing Wizard "talking" to MS SQL. I will check based on your refs.(Currently have to do other urgent work) Thank you! Shamil ----- Original Message ----- From: "MartyConnelly" To: "Access Developers discussion and problem solving" Sent: Friday, March 17, 2006 1:15 AM Subject: Re: [AccessD] MS Access 2003/XP - Upsizing Wizard > Can you directly link to tables on SQL Server 2000 from Access? > > If you are running WinXP SP2, I wonder if the wizard is using named pipes > or TCP/IP sockets network library or you are using WinXP firewall > > How to configure Windows XP Service Pack 2 (SP2) for use with SQL Server > http://support.microsoft.com/?kbid=841249 > How to use a script to programmatically open ports for SQL Server to use > on systems that are running Windows XP Service Pack 2 > http://support.microsoft.com/kb/839980/ > > Shamil Salakhetdinov wrote: > >>Thank you Marty, for your valuable feedback! >> >>No, I'm running upsizing Wizard on the same PC where MS SQL 2003 is >>running. >> >>What I did not that a long ago(and MS SQL 200 was installed a long ago) - >>I >>did change the name of my development/test Windows 2003 Server PC. This >>is >>probably the case but as I wrote - other development tools and >>applications >>work OK with MS SQL Server and I can open connectiions via code etc. >> >>This upsizing wizard is a strange "beast"... >> >>Shamil >> <<< tail skipped >>> From martyconnelly at shaw.ca Thu Mar 16 17:07:37 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Thu, 16 Mar 2006 15:07:37 -0800 Subject: [AccessD] MS Access 2003/XP - Upsizing Wizard References: <000c01c64938$03eb0d10$6501a8c0@Nant> <4419D580.7080103@shaw.ca> <003001c64943$e807a750$6501a8c0@Nant> <4419E374.7060206@shaw.ca> <000801c6494a$dc28d970$6501a8c0@Nant> Message-ID: <4419EFB9.2050707@shaw.ca> If you are still stuck, here is a commercial product UPSizingPro from Sydney Software in Australia The downloadable trial version defaults to a freebie version that only allow 10 tables after 60 uses. http://www.ssw.com.au/SSW/UpsizingPRO/ It creates an output SQL script like the following which can be useful in other situations CREATE DATABASE [add database name here] GO CREATE TABLE [Test2] ( [TestField2] varchar (50) NOT NULL , [TestField3] varchar (6) NOT NULL , [Notes] text NULL ) ON [PRIMARY] GO Shamil Salakhetdinov wrote: >Yes, Marty, I can directly link tables from MS SQL Server 2000. > >I do use MS Windows 2003 Server SP1. > >I think now it's firewall *Agnitum Outpost) which blocks Upsizing Wizard >"talking" to MS SQL. > >I will check based on your refs.(Currently have to do other urgent work) > >Thank you! > >Shamil > >----- Original Message ----- >From: "MartyConnelly" >To: "Access Developers discussion and problem solving" > >Sent: Friday, March 17, 2006 1:15 AM >Subject: Re: [AccessD] MS Access 2003/XP - Upsizing Wizard > > > > >>Can you directly link to tables on SQL Server 2000 from Access? >> >>If you are running WinXP SP2, I wonder if the wizard is using named pipes >>or TCP/IP sockets network library or you are using WinXP firewall >> >>How to configure Windows XP Service Pack 2 (SP2) for use with SQL Server >>http://support.microsoft.com/?kbid=841249 >>How to use a script to programmatically open ports for SQL Server to use >>on systems that are running Windows XP Service Pack 2 >>http://support.microsoft.com/kb/839980/ >> >>Shamil Salakhetdinov wrote: >> >> >> >>>Thank you Marty, for your valuable feedback! >>> >>>No, I'm running upsizing Wizard on the same PC where MS SQL 2003 is >>>running. >>> >>>What I did not that a long ago(and MS SQL 200 was installed a long ago) - >>>I >>>did change the name of my development/test Windows 2003 Server PC. This >>>is >>>probably the case but as I wrote - other development tools and >>>applications >>>work OK with MS SQL Server and I can open connectiions via code etc. >>> >>>This upsizing wizard is a strange "beast"... >>> >>>Shamil >>> >>> >>> ><<< tail skipped >>> > > > -- Marty Connelly Victoria, B.C. Canada From cyx5 at cdc.gov Fri Mar 17 05:37:10 2006 From: cyx5 at cdc.gov (Nicholson, Karen) Date: Fri, 17 Mar 2006 06:37:10 -0500 Subject: [AccessD] Dying on Code Here Message-ID: Exactly. I got it yesterday. I did not know that I could do the (k).name - it is not intellisensed. It works great now. Karen S. Nicholson Programmer Analyst EG&G Technical Services, Inc. Pittsburgh, PA Phone: 412-386-6649 Email: cyx5 at cdc.gov -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Ken Ismert Sent: Thursday, March 16, 2006 4:48 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Dying on Code Here Karen, I'd be tempted to try something like this: . . . Dim rTDef As DAO.TableDef Dim rFld As DAO.Field On Error GoTo HandleErr For i = 0 To CurrentDb.TableDefs.Count - 1 If (CurrentDb.TableDefs(i).Name Like "*SAF") Then Set rTDef = CurrentDb.TableDefs(i) Debug.Print "Table: " & rTDef.Name ' Init SQL string strSQLTest = "" For k = 0 To Me.Controls.Count - 1 On Error Resume Next ' Try to get matching table field Set rFld = rTDef.Fields(Me.Controls(k).Name) If Err.Number <> 0 Then ' Table has field with matching name Debug.Print rFld.Name strFieldNameChg = "Forms![frmRequiredFieldReview]![" & rFld.Name & "chg]" ' Build set list strSQLTest = strSQLTest & IIf(strSQLTest > " ", ", ", "") & rFld.Name & " = " & strFieldNameChg Debug.Print strSQLTest Else ' Table has no field with matching name Debug.Print "Missing Field: " & Me.Controls(k).Name & "; Table: " & rTDef.Name Err.Clear End If Next k On Error GoTo HandleErr ' Add Update statement prefix, suffix strSQLTest = "update " & rTDef.Name & " set " & strSQLTest & ";" Debug.Print strSQLTest Stop ' DoCmd.RunSQL strsqlTest End If Next i Exit Sub HandleErr: MsgBox Err.Number & " - " & Err.Description Exit Sub End Sub I put in a simple error handler. I used On Error Resume Next so I could grab the matching field name using the control name. If no error, I add the field to the set list. I tack on the Update prefix just before executing. This is air code, so double-check before running. -Ken -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cyx5 at cdc.gov Fri Mar 17 05:43:00 2006 From: cyx5 at cdc.gov (Nicholson, Karen) Date: Fri, 17 Mar 2006 06:43:00 -0500 Subject: [AccessD] Key Preview Problem Message-ID: I don't set my options to 0 or -1 on new records on radio buttons, check boxes. I set them to the number 2. Then I can error check to make sure the user has responded to the field instead of accepting a default value. Karen S. Nicholson Programmer Analyst EG&G Technical Services, Inc. Pittsburgh, PA Phone: 412-386-6649 Email: cyx5 at cdc.gov -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of jimjih at comcast.net Sent: Thursday, March 16, 2006 3:05 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Key Preview Problem Hi all, This is probably a simple problem, but I can't find the answer in Help or several books: I have a form to enter Delivery Tickets. The data can take several avenues as to how it is billed, so I use Option Groups to get that info, and then I make certain blocks visible or not visible. If I close the form and re-open, the option groups will have neither option selected. But if I use the Control to Enter a New Ticket, the option that was last used is still checked. In the "Enter New Ticket" control (Properties or code) can I tell access to uncheck the options. Setting the "No Default" property doesn't do it. TIA, Jim -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bchacc at san.rr.com Fri Mar 17 08:16:17 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Fri, 17 Mar 2006 06:16:17 -0800 Subject: [AccessD] KeyDown Problem In-Reply-To: <4419FEB4.10279.12BCA856@stuart.lexacorp.com.pg> References: <4419FEB4.10279.12BCA856@stuart.lexacorp.com.pg> Message-ID: <441AC4B1.4050901@san.rr.com> Stuart: Thanks. That would be the global solution. Had another weird problem occur - one of my events stopped working altogether. It was a click event. Other events continued to work, this one just wouldn't. Eventually I traced it down to a compile error in an unrelated module - it was in another form's code! Once I had a clean compile, the click event worked. Any compile error and this event stopped. Although other events continued to work correctly. Ever seen this behavior before? Regards, Rocky Stuart McLachlan wrote: > On 16 Mar 2006 at 5:58, Rocky Smolin - Beach Access Software wrote: > > >> Stuart: >> >> Thanks for having a look at this. (You might have to relink the back >> end tables.) >> >> Login as Curly - password curly. >> >> The tabbed form and KeyDown routine are in the Orders form off the Main >> Menu. The tabbed form IS full of sub-forms. Someone suggested that might >> be causing problems. >> >> > > Yes, that's it. Once you tab to another page, the subform gets the focus and that subform > doesn't have KeyPreview on. You will need to set keypreview on for all the subforms. Then > call a generic procedure in the keydown to shift focus back to where you want it. > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From cfoust at infostatsystems.com Fri Mar 17 10:27:33 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 17 Mar 2006 08:27:33 -0800 Subject: [AccessD] KeyDown Problem Message-ID: I have, and it drove me crazy! When strange things start occurring, I immediately do a compile. The thing that's making me nuts now is, after installing Office 2003 but keeping Access 2002, this has become even more frequent. Error messages will pop up that occur deep down in the stack but they present an obtuse message that is less than useless and I have to step through layers of code to find the line that blows up. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Friday, March 17, 2006 6:16 AM To: Stuart McLachlan; Access Developers discussion and problem solving Subject: Re: [AccessD] KeyDown Problem Stuart: Thanks. That would be the global solution. Had another weird problem occur - one of my events stopped working altogether. It was a click event. Other events continued to work, this one just wouldn't. Eventually I traced it down to a compile error in an unrelated module - it was in another form's code! Once I had a clean compile, the click event worked. Any compile error and this event stopped. Although other events continued to work correctly. Ever seen this behavior before? Regards, Rocky Stuart McLachlan wrote: > On 16 Mar 2006 at 5:58, Rocky Smolin - Beach Access Software wrote: > > >> Stuart: >> >> Thanks for having a look at this. (You might have to relink the back >> end tables.) >> >> Login as Curly - password curly. >> >> The tabbed form and KeyDown routine are in the Orders form off the >> Main Menu. The tabbed form IS full of sub-forms. Someone suggested >> that might be causing problems. >> >> > > Yes, that's it. Once you tab to another page, the subform gets the > focus and that subform doesn't have KeyPreview on. You will need to > set keypreview on for all the subforms. Then call a generic procedure in the keydown to shift focus back to where you want it. > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From lmrazek at lcm-res.com Fri Mar 17 10:37:27 2006 From: lmrazek at lcm-res.com (Lawrence Mrazek) Date: Fri, 17 Mar 2006 10:37:27 -0600 Subject: [AccessD] Export to Excel via VBA, Naming Cells In-Reply-To: <44196C06.1090304@nanaimo.ark.com> Message-ID: <023501c649e1$14338db0$036fa8c0@hplaptop> Hi: I'm working on a fairly complex routine that exports sales data from Access into Excel. Basically, the Excel report will have multiple worksheets, each containing a salesman's summary sales data (about 15-20 salesmen), plus one worksheet with company totals. The client wants all calculations to happen in Excel, and since I can't predict where the data will end up in Excel, I can't really hard code any formulas that refer to the sales data. I haven't had any trouble creating the worksheets/exporting the raw data via a VBA routine, but I'm stuck on the calculation front. Can I dynamically name cells/ranges as build the Excel report? I I'd like to be able to use named ranges for these calculations, as I'll need to refer to them to build my totals, but have been having a bit of trouble getting them to work. I'd like to be able to assign the names as I build the spreadsheet, but I'm not quite "getting" the syntax of the naming convention or something. I've added a sample below: While Not rsSales.EOF xlWs.Cells(rownum, 1) = rsSales.Fields("SalesRP") xlWs.Cells(rownum, 2) = rsSales.Fields("salesrepName") xlWs.Cells(rownum, 3) = rsSales.Fields("ProductGroup") xlWs.Cells(rownum, 4) = rsSales.Fields("Item") xlWs.Cells(rownum, 5) = rsSales.Fields("itemdescription") xlWs.Cells(rownum, 6) = rsSales.Fields("month") RangeName = rsSales.Fields("SalesRP") & rsSales.Fields("item") & rsSales.Fields("month") CellLocation = rownum & 6 & ":" & rownum & 6 ' Just testing to see if I can get the naming working. xlWb.Names.Add Name:=RangeName, RefersTo:=CellLocation, Visible:=True ' "=" & "!$" & rownum & "$" & 6 & ":" & rownum & "$" & 6 xlWs.Cells(rownum, 7) = rsSales.Fields("KGsLastYr") xlWs.Cells(rownum, 8) = rsSales.Fields("KgsCurrYr") xlWs.Cells(rownum, 9) = rsSales.Fields("SalesCurrYr") xlWs.Cells(rownum, 10) = rsSales.Fields("SalesLastYr") xlWs.Cells(rownum, 11) = rsSales.Fields("marginCurrYr") xlWs.Cells(rownum, 12) = rsSales.Fields("MarginLastYr") rownum = rownum + 1 rsSales.MoveNext Wend Any suggestions? Also, if anyone specializes in this sort of thing (Access to Excel automation), I might need to farm this out. Thanks in advance. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 From lmrazek at lcm-res.com Fri Mar 17 10:43:20 2006 From: lmrazek at lcm-res.com (Lawrence Mrazek) Date: Fri, 17 Mar 2006 10:43:20 -0600 Subject: [AccessD] Export to Excel via VBA, Naming Cells In-Reply-To: <023501c649e1$14338db0$036fa8c0@hplaptop> Message-ID: <023c01c649e1$e6a48a10$036fa8c0@hplaptop> Forgot to add that this is on Access XP, Excel XP. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Lawrence Mrazek Sent: Friday, March 17, 2006 10:37 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Export to Excel via VBA, Naming Cells Hi: I'm working on a fairly complex routine that exports sales data from Access into Excel. Basically, the Excel report will have multiple worksheets, each containing a salesman's summary sales data (about 15-20 salesmen), plus one worksheet with company totals. The client wants all calculations to happen in Excel, and since I can't predict where the data will end up in Excel, I can't really hard code any formulas that refer to the sales data. I haven't had any trouble creating the worksheets/exporting the raw data via a VBA routine, but I'm stuck on the calculation front. Can I dynamically name cells/ranges as build the Excel report? I I'd like to be able to use named ranges for these calculations, as I'll need to refer to them to build my totals, but have been having a bit of trouble getting them to work. I'd like to be able to assign the names as I build the spreadsheet, but I'm not quite "getting" the syntax of the naming convention or something. I've added a sample below: While Not rsSales.EOF xlWs.Cells(rownum, 1) = rsSales.Fields("SalesRP") xlWs.Cells(rownum, 2) = rsSales.Fields("salesrepName") xlWs.Cells(rownum, 3) = rsSales.Fields("ProductGroup") xlWs.Cells(rownum, 4) = rsSales.Fields("Item") xlWs.Cells(rownum, 5) = rsSales.Fields("itemdescription") xlWs.Cells(rownum, 6) = rsSales.Fields("month") RangeName = rsSales.Fields("SalesRP") & rsSales.Fields("item") & rsSales.Fields("month") CellLocation = rownum & 6 & ":" & rownum & 6 ' Just testing to see if I can get the naming working. xlWb.Names.Add Name:=RangeName, RefersTo:=CellLocation, Visible:=True ' "=" & "!$" & rownum & "$" & 6 & ":" & rownum & "$" & 6 xlWs.Cells(rownum, 7) = rsSales.Fields("KGsLastYr") xlWs.Cells(rownum, 8) = rsSales.Fields("KgsCurrYr") xlWs.Cells(rownum, 9) = rsSales.Fields("SalesCurrYr") xlWs.Cells(rownum, 10) = rsSales.Fields("SalesLastYr") xlWs.Cells(rownum, 11) = rsSales.Fields("marginCurrYr") xlWs.Cells(rownum, 12) = rsSales.Fields("MarginLastYr") rownum = rownum + 1 rsSales.MoveNext Wend Any suggestions? Also, if anyone specializes in this sort of thing (Access to Excel automation), I might need to farm this out. Thanks in advance. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jim.Hale at FleetPride.com Fri Mar 17 10:47:11 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Fri, 17 Mar 2006 10:47:11 -0600 Subject: [AccessD] Export to Excel via VBA, Naming Cells Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDACD@corp-es01.fleetpride.com> One slick way to do this is to use dynamic ranges from inside Excel. See http://www.ozgrid.com/Excel/DynamicRanges.htm Basically, using formulas to name the ranges will allow them to expand as you add data. HTH Jim Hale -----Original Message----- From: Lawrence Mrazek [mailto:lmrazek at lcm-res.com] Sent: Friday, March 17, 2006 10:37 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Export to Excel via VBA, Naming Cells Hi: I'm working on a fairly complex routine that exports sales data from Access into Excel. Basically, the Excel report will have multiple worksheets, each containing a salesman's summary sales data (about 15-20 salesmen), plus one worksheet with company totals. The client wants all calculations to happen in Excel, and since I can't predict where the data will end up in Excel, I can't really hard code any formulas that refer to the sales data. I haven't had any trouble creating the worksheets/exporting the raw data via a VBA routine, but I'm stuck on the calculation front. Can I dynamically name cells/ranges as build the Excel report? I I'd like to be able to use named ranges for these calculations, as I'll need to refer to them to build my totals, but have been having a bit of trouble getting them to work. I'd like to be able to assign the names as I build the spreadsheet, but I'm not quite "getting" the syntax of the naming convention or something. I've added a sample below: While Not rsSales.EOF xlWs.Cells(rownum, 1) = rsSales.Fields("SalesRP") xlWs.Cells(rownum, 2) = rsSales.Fields("salesrepName") xlWs.Cells(rownum, 3) = rsSales.Fields("ProductGroup") xlWs.Cells(rownum, 4) = rsSales.Fields("Item") xlWs.Cells(rownum, 5) = rsSales.Fields("itemdescription") xlWs.Cells(rownum, 6) = rsSales.Fields("month") RangeName = rsSales.Fields("SalesRP") & rsSales.Fields("item") & rsSales.Fields("month") CellLocation = rownum & 6 & ":" & rownum & 6 ' Just testing to see if I can get the naming working. xlWb.Names.Add Name:=RangeName, RefersTo:=CellLocation, Visible:=True ' "=" & "!$" & rownum & "$" & 6 & ":" & rownum & "$" & 6 xlWs.Cells(rownum, 7) = rsSales.Fields("KGsLastYr") xlWs.Cells(rownum, 8) = rsSales.Fields("KgsCurrYr") xlWs.Cells(rownum, 9) = rsSales.Fields("SalesCurrYr") xlWs.Cells(rownum, 10) = rsSales.Fields("SalesLastYr") xlWs.Cells(rownum, 11) = rsSales.Fields("marginCurrYr") xlWs.Cells(rownum, 12) = rsSales.Fields("MarginLastYr") rownum = rownum + 1 rsSales.MoveNext Wend Any suggestions? Also, if anyone specializes in this sort of thing (Access to Excel automation), I might need to farm this out. Thanks in advance. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From Gustav at cactus.dk Fri Mar 17 11:04:54 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 17 Mar 2006 18:04:54 +0100 Subject: [AccessD] Export to Excel via VBA, Naming Cells Message-ID: Hi Larry Yes, a 'dynamic named range' is every bit as much a 'named range' as a static one; the only difference is that instead of the Refers To formula looking like: =Sheet1!$A$1:$D$100 it looks more like: =OFFSET(Sheet1!$A$1,0,0,COUNTA(Sheet1!$A:$A),4) or some other formula whose result is a range. However, you cannot link to a dynamic range as a table in Access as Excel needs to be open to get the coordinates of the range. But via code you can do that calculation in many other ways and then create a static named range. /gustav >>> lmrazek at lcm-res.com 17-03-2006 17:37:27 >>> Hi: I'm working on a fairly complex routine that exports sales data from Access into Excel. Basically, the Excel report will have multiple worksheets, each containing a salesman's summary sales data (about 15-20 salesmen), plus one worksheet with company totals. The client wants all calculations to happen in Excel, and since I can't predict where the data will end up in Excel, I can't really hard code any formulas that refer to the sales data. I haven't had any trouble creating the worksheets/exporting the raw data via a VBA routine, but I'm stuck on the calculation front. Can I dynamically name cells/ranges as build the Excel report? I I'd like to be able to use named ranges for these calculations, as I'll need to refer to them to build my totals, but have been having a bit of trouble getting them to work. I'd like to be able to assign the names as I build the spreadsheet, but I'm not quite "getting" the syntax of the naming convention or something. I've added a sample below: While Not rsSales.EOF xlWs.Cells(rownum, 1) = rsSales.Fields("SalesRP") xlWs.Cells(rownum, 2) = rsSales.Fields("salesrepName") xlWs.Cells(rownum, 3) = rsSales.Fields("ProductGroup") xlWs.Cells(rownum, 4) = rsSales.Fields("Item") xlWs.Cells(rownum, 5) = rsSales.Fields("itemdescription") xlWs.Cells(rownum, 6) = rsSales.Fields("month") RangeName = rsSales.Fields("SalesRP") & rsSales.Fields("item") & rsSales.Fields("month") CellLocation = rownum & 6 & ":" & rownum & 6 ' Just testing to see if I can get the naming working. xlWb.Names.Add Name:=RangeName, RefersTo:=CellLocation, Visible:=True ' "=" & "!$" & rownum & "$" & 6 & ":" & rownum & "$" & 6 xlWs.Cells(rownum, 7) = rsSales.Fields("KGsLastYr") xlWs.Cells(rownum, 8) = rsSales.Fields("KgsCurrYr") xlWs.Cells(rownum, 9) = rsSales.Fields("SalesCurrYr") xlWs.Cells(rownum, 10) = rsSales.Fields("SalesLastYr") xlWs.Cells(rownum, 11) = rsSales.Fields("marginCurrYr") xlWs.Cells(rownum, 12) = rsSales.Fields("MarginLastYr") rownum = rownum + 1 rsSales.MoveNext Wend Any suggestions? Also, if anyone specializes in this sort of thing (Access to Excel automation), I might need to farm this out. Thanks in advance. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 From bchacc at san.rr.com Fri Mar 17 11:14:12 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Fri, 17 Mar 2006 09:14:12 -0800 Subject: [AccessD] KeyDown Problem In-Reply-To: References: Message-ID: <441AEE64.60909@san.rr.com> Once again, I find that I am not losing my mind. (Or have company anyway) Rocky Charlotte Foust wrote: > I have, and it drove me crazy! When strange things start occurring, I > immediately do a compile. The thing that's making me nuts now is, after > installing Office 2003 but keeping Access 2002, this has become even > more frequent. Error messages will pop up that occur deep down in the > stack but they present an obtuse message that is less than useless and I > have to step through layers of code to find the line that blows up. > > > Charlotte Foust > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin > - Beach Access Software > Sent: Friday, March 17, 2006 6:16 AM > To: Stuart McLachlan; Access Developers discussion and problem solving > Subject: Re: [AccessD] KeyDown Problem > > Stuart: > > Thanks. That would be the global solution. > > Had another weird problem occur - one of my events stopped working > altogether. It was a click event. Other events continued to work, this > one just wouldn't. Eventually I traced it down to a compile error in an > unrelated module - it was in another form's code! Once I had a clean > compile, the click event worked. Any compile error and this event > stopped. Although other events continued to work correctly. > > Ever seen this behavior before? > > Regards, > > Rocky > > > Stuart McLachlan wrote: > >> On 16 Mar 2006 at 5:58, Rocky Smolin - Beach Access Software wrote: >> >> >> >>> Stuart: >>> >>> Thanks for having a look at this. (You might have to relink the back >>> > > >>> end tables.) >>> >>> Login as Curly - password curly. >>> >>> The tabbed form and KeyDown routine are in the Orders form off the >>> Main Menu. The tabbed form IS full of sub-forms. Someone suggested >>> that might be causing problems. >>> >>> >>> >> Yes, that's it. Once you tab to another page, the subform gets the >> focus and that subform doesn't have KeyPreview on. You will need to >> set keypreview on for all the subforms. Then call a generic procedure >> > in the keydown to shift focus back to where you want it. > >> >> >> > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From jwcolby at ColbyConsulting.com Fri Mar 17 11:21:46 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Fri, 17 Mar 2006 12:21:46 -0500 Subject: [AccessD] KeyDown Problem In-Reply-To: Message-ID: <006e01c649e7$458bca20$647aa8c0@ColbyM6805> Ahhh, but Office 2006 is coming any day now, and that will fix ALL of our problems. BTW, I have an opportunity only for list members. Send me $10,000 and I will invest it and return you 1 MILLION dollars in a month, GUARANTEED. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Friday, March 17, 2006 11:28 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] KeyDown Problem I have, and it drove me crazy! When strange things start occurring, I immediately do a compile. The thing that's making me nuts now is, after installing Office 2003 but keeping Access 2002, this has become even more frequent. Error messages will pop up that occur deep down in the stack but they present an obtuse message that is less than useless and I have to step through layers of code to find the line that blows up. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Friday, March 17, 2006 6:16 AM To: Stuart McLachlan; Access Developers discussion and problem solving Subject: Re: [AccessD] KeyDown Problem Stuart: Thanks. That would be the global solution. Had another weird problem occur - one of my events stopped working altogether. It was a click event. Other events continued to work, this one just wouldn't. Eventually I traced it down to a compile error in an unrelated module - it was in another form's code! Once I had a clean compile, the click event worked. Any compile error and this event stopped. Although other events continued to work correctly. Ever seen this behavior before? Regards, Rocky From cfoust at infostatsystems.com Fri Mar 17 11:25:47 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 17 Mar 2006 09:25:47 -0800 Subject: [AccessD] KeyDown Problem Message-ID: Well, it IS Friday, so we can all go nuts together! LOL Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Friday, March 17, 2006 9:14 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] KeyDown Problem Once again, I find that I am not losing my mind. (Or have company anyway) Rocky Charlotte Foust wrote: > I have, and it drove me crazy! When strange things start occurring, I > immediately do a compile. The thing that's making me nuts now is, > after installing Office 2003 but keeping Access 2002, this has become > even more frequent. Error messages will pop up that occur deep down > in the stack but they present an obtuse message that is less than > useless and I have to step through layers of code to find the line that blows up. > > > Charlotte Foust > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky > Smolin > - Beach Access Software > Sent: Friday, March 17, 2006 6:16 AM > To: Stuart McLachlan; Access Developers discussion and problem solving > Subject: Re: [AccessD] KeyDown Problem > > Stuart: > > Thanks. That would be the global solution. > > Had another weird problem occur - one of my events stopped working > altogether. It was a click event. Other events continued to work, > this one just wouldn't. Eventually I traced it down to a compile > error in an unrelated module - it was in another form's code! Once I > had a clean compile, the click event worked. Any compile error and > this event stopped. Although other events continued to work correctly. > > Ever seen this behavior before? > > Regards, > > Rocky > > > Stuart McLachlan wrote: > >> On 16 Mar 2006 at 5:58, Rocky Smolin - Beach Access Software wrote: >> >> >> >>> Stuart: >>> >>> Thanks for having a look at this. (You might have to relink the >>> back >>> > > >>> end tables.) >>> >>> Login as Curly - password curly. >>> >>> The tabbed form and KeyDown routine are in the Orders form off the >>> Main Menu. The tabbed form IS full of sub-forms. Someone suggested >>> that might be causing problems. >>> >>> >>> >> Yes, that's it. Once you tab to another page, the subform gets the >> focus and that subform doesn't have KeyPreview on. You will need to >> set keypreview on for all the subforms. Then call a generic procedure >> > in the keydown to shift focus back to where you want it. > >> >> >> > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Fri Mar 17 11:47:59 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Fri, 17 Mar 2006 20:47:59 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant> <004601c64932$45f25660$6501a8c0@Nant> Message-ID: <000801c649ea$ef906370$6501a8c0@Nant> Hi All, New version ob subject tests is available at http://smsconsulting.spb.ru/download/tests/a2dds.htm Currently there is a weird problem when running in "usual binding mode" with MS Access backend and no any data updates - GPF http://smsconsulting.spb.ru/download/tests/gpf.jpg. It would be very useful if somebody approved/disapproved this problem by running the tests on their PC. Thank you. Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Thursday, March 16, 2006 10:42 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > There is newer version of subject test available at > http://smsconsulting.spb.ru/download/tests/a2dds.htm > > If you will have some time when your compute will be free over weekend > please run it. > > I will try to consistently enlarge/improve this test set. > > Some users report it runs OK, e.g.: > > <<< > Connection = Provider=SQLOLEDB.1; > Connection Timeout = 5; > Server=\SQLEXPRESS; > Database=Northwind; > Integrated Security = SSPI; > > Test successfully finished. > Backend: MS SQL > Cycles to pass: 2500 > Cycles passed: 2500 > Forms opened: 12500 > Start time: 3/15/2006 5:03:45 PM > End time: 3/15/2006 6:11:13 PM >>>> > > It (latest version) currently gives me trouble for MS Access 2003 backend > after about 2000+ cycles: > > <<< > ADODB Bound Forms Crash Test v.1.9 [16-MAR-06] > > Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 3011 - The Microsoft Jet > database engine could not find the object ''. Make sure the object exists > and that you spell its name and the path name correctly. > > Backend: MS Access > Binding: ADODB > Cycles to pass: 2300 > Cycles passed: 2012 > Forms opened: 10059 > Start time: 16.03.2006 20:25:57 > End time: 16.03.2006 22:07:35 > > Object statistics: > ClassName = CTestForm, Created = 6, Disposed = 6 > ClassName = CFormDataset, Created = 71639, Disposed = 71639 >>>> > > It would be useful to have more statistics to find stable workarounds > and/or > define the set of environments where this test doesn't run OK. > > Thank you in advance for any feedback. > Shamil <<< tail skipped >>> From jwcolby at ColbyConsulting.com Fri Mar 17 11:57:54 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Fri, 17 Mar 2006 12:57:54 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <000801c649ea$ef906370$6501a8c0@Nant> Message-ID: <007301c649ec$5225b430$647aa8c0@ColbyM6805> I would like to look at this over the weekend. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Friday, March 17, 2006 12:48 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Hi All, New version ob subject tests is available at http://smsconsulting.spb.ru/download/tests/a2dds.htm Currently there is a weird problem when running in "usual binding mode" with MS Access backend and no any data updates - GPF http://smsconsulting.spb.ru/download/tests/gpf.jpg. It would be very useful if somebody approved/disapproved this problem by running the tests on their PC. Thank you. Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Thursday, March 16, 2006 10:42 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > There is newer version of subject test available at > http://smsconsulting.spb.ru/download/tests/a2dds.htm > > If you will have some time when your compute will be free over weekend > please run it. > > I will try to consistently enlarge/improve this test set. > > Some users report it runs OK, e.g.: > > <<< > Connection = Provider=SQLOLEDB.1; > Connection Timeout = 5; > Server=\SQLEXPRESS; > Database=Northwind; > Integrated Security = SSPI; > > Test successfully finished. > Backend: MS SQL > Cycles to pass: 2500 > Cycles passed: 2500 > Forms opened: 12500 > Start time: 3/15/2006 5:03:45 PM > End time: 3/15/2006 6:11:13 PM >>>> > > It (latest version) currently gives me trouble for MS Access 2003 backend > after about 2000+ cycles: > > <<< > ADODB Bound Forms Crash Test v.1.9 [16-MAR-06] > > Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 3011 - The Microsoft Jet > database engine could not find the object ''. Make sure the object exists > and that you spell its name and the path name correctly. > > Backend: MS Access > Binding: ADODB > Cycles to pass: 2300 > Cycles passed: 2012 > Forms opened: 10059 > Start time: 16.03.2006 20:25:57 > End time: 16.03.2006 22:07:35 > > Object statistics: > ClassName = CTestForm, Created = 6, Disposed = 6 > ClassName = CFormDataset, Created = 71639, Disposed = 71639 >>>> > > It would be useful to have more statistics to find stable workarounds > and/or > define the set of environments where this test doesn't run OK. > > Thank you in advance for any feedback. > Shamil <<< tail skipped >>> -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bchacc at san.rr.com Fri Mar 17 11:59:15 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Fri, 17 Mar 2006 09:59:15 -0800 Subject: [AccessD] KeyDown Problem In-Reply-To: References: Message-ID: <441AF8F3.3030603@san.rr.com> It just happened again. I'm beginning to think there's a setting or something not set correctly. I copied an existing subform, made some mods to the new one (since it was similar to the old one) and dropped it onto a tab form. A double click event in a text box on the tab form but NOT in the sub form refused to fire. Went to code. Compiled. Clean! Eventually I figured out that I had forgotten to delete all the code behind sub form when I copied the old sub form to the new one. The new one was referencing controls on the old sub form which weren't on the new one. But no compile error. Deleted all the code behind the new sub form and everything worked. But the compile was clean. And yes I do have OPTION EXPLICIT in every page of code I write. Any ideas what's causing this? Regards, Rocky Charlotte Foust wrote: > Well, it IS Friday, so we can all go nuts together! LOL > > > Charlotte > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin > - Beach Access Software > Sent: Friday, March 17, 2006 9:14 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] KeyDown Problem > > Once again, I find that I am not losing my mind. (Or have company > anyway) > > Rocky > > > Charlotte Foust wrote: > >> I have, and it drove me crazy! When strange things start occurring, I >> > > >> immediately do a compile. The thing that's making me nuts now is, >> after installing Office 2003 but keeping Access 2002, this has become >> even more frequent. Error messages will pop up that occur deep down >> in the stack but they present an obtuse message that is less than >> useless and I have to step through layers of code to find the line >> > that blows up. > >> Charlotte Foust >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky >> Smolin >> - Beach Access Software >> Sent: Friday, March 17, 2006 6:16 AM >> To: Stuart McLachlan; Access Developers discussion and problem solving >> Subject: Re: [AccessD] KeyDown Problem >> >> Stuart: >> >> Thanks. That would be the global solution. >> >> Had another weird problem occur - one of my events stopped working >> altogether. It was a click event. Other events continued to work, >> this one just wouldn't. Eventually I traced it down to a compile >> error in an unrelated module - it was in another form's code! Once I >> had a clean compile, the click event worked. Any compile error and >> this event stopped. Although other events continued to work >> > correctly. > >> Ever seen this behavior before? >> >> Regards, >> >> Rocky >> >> >> Stuart McLachlan wrote: >> >> >>> On 16 Mar 2006 at 5:58, Rocky Smolin - Beach Access Software wrote: >>> >>> >>> >>> >>>> Stuart: >>>> >>>> Thanks for having a look at this. (You might have to relink the >>>> back >>>> >>>> >> >> >>>> end tables.) >>>> >>>> Login as Curly - password curly. >>>> >>>> The tabbed form and KeyDown routine are in the Orders form off the >>>> Main Menu. The tabbed form IS full of sub-forms. Someone suggested >>>> > > >>>> that might be causing problems. >>>> >>>> >>>> >>>> >>> Yes, that's it. Once you tab to another page, the subform gets the >>> focus and that subform doesn't have KeyPreview on. You will need to >>> set keypreview on for all the subforms. Then call a generic procedure >>> >>> >> in the keydown to shift focus back to where you want it. >> >> >>> >>> >>> >>> >> -- >> Rocky Smolin >> Beach Access Software >> 858-259-4334 >> www.e-z-mrp.com >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> >> > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From cfoust at infostatsystems.com Fri Mar 17 12:15:20 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 17 Mar 2006 10:15:20 -0800 Subject: [AccessD] KeyDown Problem Message-ID: The nearest I've been able to figure is that some of the recent updates have affected compiler. It is completely maddening, but not nearly as much as the similar behavior in VS 2005! :oS Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Friday, March 17, 2006 9:59 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] KeyDown Problem It just happened again. I'm beginning to think there's a setting or something not set correctly. I copied an existing subform, made some mods to the new one (since it was similar to the old one) and dropped it onto a tab form. A double click event in a text box on the tab form but NOT in the sub form refused to fire. Went to code. Compiled. Clean! Eventually I figured out that I had forgotten to delete all the code behind sub form when I copied the old sub form to the new one. The new one was referencing controls on the old sub form which weren't on the new one. But no compile error. Deleted all the code behind the new sub form and everything worked. But the compile was clean. And yes I do have OPTION EXPLICIT in every page of code I write. Any ideas what's causing this? Regards, Rocky Charlotte Foust wrote: > Well, it IS Friday, so we can all go nuts together! LOL > > > Charlotte > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky > Smolin > - Beach Access Software > Sent: Friday, March 17, 2006 9:14 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] KeyDown Problem > > Once again, I find that I am not losing my mind. (Or have company > anyway) > > Rocky > > > Charlotte Foust wrote: > >> I have, and it drove me crazy! When strange things start occurring, >> I >> > > >> immediately do a compile. The thing that's making me nuts now is, >> after installing Office 2003 but keeping Access 2002, this has become >> even more frequent. Error messages will pop up that occur deep down >> in the stack but they present an obtuse message that is less than >> useless and I have to step through layers of code to find the line >> > that blows up. > >> Charlotte Foust >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky >> Smolin >> - Beach Access Software >> Sent: Friday, March 17, 2006 6:16 AM >> To: Stuart McLachlan; Access Developers discussion and problem >> solving >> Subject: Re: [AccessD] KeyDown Problem >> >> Stuart: >> >> Thanks. That would be the global solution. >> >> Had another weird problem occur - one of my events stopped working >> altogether. It was a click event. Other events continued to work, >> this one just wouldn't. Eventually I traced it down to a compile >> error in an unrelated module - it was in another form's code! Once I >> had a clean compile, the click event worked. Any compile error and >> this event stopped. Although other events continued to work >> > correctly. > >> Ever seen this behavior before? >> >> Regards, >> >> Rocky >> >> >> Stuart McLachlan wrote: >> >> >>> On 16 Mar 2006 at 5:58, Rocky Smolin - Beach Access Software wrote: >>> >>> >>> >>> >>>> Stuart: >>>> >>>> Thanks for having a look at this. (You might have to relink the >>>> back >>>> >>>> >> >> >>>> end tables.) >>>> >>>> Login as Curly - password curly. >>>> >>>> The tabbed form and KeyDown routine are in the Orders form off the >>>> Main Menu. The tabbed form IS full of sub-forms. Someone >>>> suggested >>>> > > >>>> that might be causing problems. >>>> >>>> >>>> >>>> >>> Yes, that's it. Once you tab to another page, the subform gets the >>> focus and that subform doesn't have KeyPreview on. You will need to >>> set keypreview on for all the subforms. Then call a generic >>> procedure >>> >>> >> in the keydown to shift focus back to where you want it. >> >> >>> >>> >>> >>> >> -- >> Rocky Smolin >> Beach Access Software >> 858-259-4334 >> www.e-z-mrp.com >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> >> > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Fri Mar 17 12:34:43 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Fri, 17 Mar 2006 21:34:43 +0300 Subject: [AccessD] KeyDown Problem References: <441AF8F3.3030603@san.rr.com> Message-ID: <003101c649f1$76fb1430$6501a8c0@Nant> > Any ideas what's causing this? Rocky, These are probably "VBA blues" - when you work for a long time with a (large) program database something "gets stuck" inside VBA forms'/reports'/standard/class modules. Usual solution is to create a new program database and to import everything from the old(current) one into it. Please keep old program database in archives after this transition. Shamil ----- Original Message ----- From: "Rocky Smolin - Beach Access Software" To: "Access Developers discussion and problem solving" Sent: Friday, March 17, 2006 8:59 PM Subject: Re: [AccessD] KeyDown Problem > It just happened again. I'm beginning to think there's a setting or > something not set correctly. > > I copied an existing subform, made some mods to the new one (since it > was similar to the old one) and dropped it onto a tab form. A double > click event in a text box on the tab form but NOT in the sub form > refused to fire. Went to code. Compiled. Clean! > > Eventually I figured out that I had forgotten to delete all the code > behind sub form when I copied the old sub form to the new one. The new > one was referencing controls on the old sub form which weren't on the > new one. But no compile error. > > Deleted all the code behind the new sub form and everything worked. But > the compile was clean. And yes I do have OPTION EXPLICIT in every page > of code I write. > > Any ideas what's causing this? > > Regards, > > Rocky > > > Charlotte Foust wrote: >> Well, it IS Friday, so we can all go nuts together! LOL >> >> >> Charlotte >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin >> - Beach Access Software >> Sent: Friday, March 17, 2006 9:14 AM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] KeyDown Problem >> >> Once again, I find that I am not losing my mind. (Or have company >> anyway) >> >> Rocky >> >> >> Charlotte Foust wrote: >> >>> I have, and it drove me crazy! When strange things start occurring, I >>> >> >> >>> immediately do a compile. The thing that's making me nuts now is, >>> after installing Office 2003 but keeping Access 2002, this has become >>> even more frequent. Error messages will pop up that occur deep down >>> in the stack but they present an obtuse message that is less than >>> useless and I have to step through layers of code to find the line >>> >> that blows up. >> >>> Charlotte Foust >>> >>> -----Original Message----- >>> From: accessd-bounces at databaseadvisors.com >>> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky >>> Smolin >>> - Beach Access Software >>> Sent: Friday, March 17, 2006 6:16 AM >>> To: Stuart McLachlan; Access Developers discussion and problem solving >>> Subject: Re: [AccessD] KeyDown Problem >>> >>> Stuart: >>> >>> Thanks. That would be the global solution. >>> >>> Had another weird problem occur - one of my events stopped working >>> altogether. It was a click event. Other events continued to work, >>> this one just wouldn't. Eventually I traced it down to a compile >>> error in an unrelated module - it was in another form's code! Once I >>> had a clean compile, the click event worked. Any compile error and >>> this event stopped. Although other events continued to work >>> >> correctly. >> >>> Ever seen this behavior before? >>> >>> Regards, >>> >>> Rocky >>> >>> >>> Stuart McLachlan wrote: >>> >>> >>>> On 16 Mar 2006 at 5:58, Rocky Smolin - Beach Access Software wrote: >>>> >>>> >>>> >>>> >>>>> Stuart: >>>>> >>>>> Thanks for having a look at this. (You might have to relink the >>>>> back >>>>> >>>>> >>> >>> >>>>> end tables.) >>>>> >>>>> Login as Curly - password curly. >>>>> >>>>> The tabbed form and KeyDown routine are in the Orders form off the >>>>> Main Menu. The tabbed form IS full of sub-forms. Someone suggested >>>>> >> >> >>>>> that might be causing problems. >>>>> >>>>> >>>>> >>>>> >>>> Yes, that's it. Once you tab to another page, the subform gets the >>>> focus and that subform doesn't have KeyPreview on. You will need to >>>> set keypreview on for all the subforms. Then call a generic procedure >>>> >>>> >>> in the keydown to shift focus back to where you want it. >>> >>> >>>> >>>> >>>> >>>> >>> -- >>> Rocky Smolin >>> Beach Access Software >>> 858-259-4334 >>> www.e-z-mrp.com >>> >>> -- >>> AccessD mailing list >>> AccessD at databaseadvisors.com >>> http://databaseadvisors.com/mailman/listinfo/accessd >>> Website: http://www.databaseadvisors.com >>> >>> >> >> -- >> Rocky Smolin >> Beach Access Software >> 858-259-4334 >> www.e-z-mrp.com >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From lmrazek at lcm-res.com Fri Mar 17 12:31:38 2006 From: lmrazek at lcm-res.com (Lawrence Mrazek) Date: Fri, 17 Mar 2006 12:31:38 -0600 Subject: [AccessD] Export to Excel via VBA, Naming Cells In-Reply-To: Message-ID: <027101c649f1$07876ea0$036fa8c0@hplaptop> Thanks Gustav & Jim: I guess I'm just having trouble with the syntax of creating a named range from VBA. For example, using my code (below), how would I assign a name? Right now, the names are getting added to the sheet, but the references to the cells are messed up. Something is not working when I set the CellLocation variable ... While Not rsSales.EOF xlWs.Cells(rownum, 1) = rsSales.Fields("SalesRep") xlWs.Cells(rownum, 6) = rsSales.Fields("month") xlWs.Cells(rownum, 7) = rsSales.Fields("KGsLastYr") RangeName = rsSales.Fields("SalesRep") & rsSales.Fields("itemtype") & rsSales.Fields("month") CellLocation = "'" & WrkSheetName & "'" & "!$" & "f" & "$" & rownum xlWb.Names.Add Name:=RangeName, RefersTo:=CellLocation, Visible:=True ' rownum = rownum + 1 rsSales.MoveNext Wend Thanks! Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Friday, March 17, 2006 11:05 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Export to Excel via VBA, Naming Cells Hi Larry Yes, a 'dynamic named range' is every bit as much a 'named range' as a static one; the only difference is that instead of the Refers To formula looking like: =Sheet1!$A$1:$D$100 it looks more like: =OFFSET(Sheet1!$A$1,0,0,COUNTA(Sheet1!$A:$A),4) or some other formula whose result is a range. However, you cannot link to a dynamic range as a table in Access as Excel needs to be open to get the coordinates of the range. But via code you can do that calculation in many other ways and then create a static named range. /gustav >>> lmrazek at lcm-res.com 17-03-2006 17:37:27 >>> Hi: I'm working on a fairly complex routine that exports sales data from Access into Excel. Basically, the Excel report will have multiple worksheets, each containing a salesman's summary sales data (about 15-20 salesmen), plus one worksheet with company totals. The client wants all calculations to happen in Excel, and since I can't predict where the data will end up in Excel, I can't really hard code any formulas that refer to the sales data. I haven't had any trouble creating the worksheets/exporting the raw data via a VBA routine, but I'm stuck on the calculation front. Can I dynamically name cells/ranges as build the Excel report? I I'd like to be able to use named ranges for these calculations, as I'll need to refer to them to build my totals, but have been having a bit of trouble getting them to work. I'd like to be able to assign the names as I build the spreadsheet, but I'm not quite "getting" the syntax of the naming convention or something. I've added a sample below: While Not rsSales.EOF xlWs.Cells(rownum, 1) = rsSales.Fields("SalesRP") xlWs.Cells(rownum, 2) = rsSales.Fields("salesrepName") xlWs.Cells(rownum, 3) = rsSales.Fields("ProductGroup") xlWs.Cells(rownum, 4) = rsSales.Fields("Item") xlWs.Cells(rownum, 5) = rsSales.Fields("itemdescription") xlWs.Cells(rownum, 6) = rsSales.Fields("month") RangeName = rsSales.Fields("SalesRP") & rsSales.Fields("item") & rsSales.Fields("month") CellLocation = rownum & 6 & ":" & rownum & 6 ' Just testing to see if I can get the naming working. xlWb.Names.Add Name:=RangeName, RefersTo:=CellLocation, Visible:=True ' "=" & "!$" & rownum & "$" & 6 & ":" & rownum & "$" & 6 xlWs.Cells(rownum, 7) = rsSales.Fields("KGsLastYr") xlWs.Cells(rownum, 8) = rsSales.Fields("KgsCurrYr") xlWs.Cells(rownum, 9) = rsSales.Fields("SalesCurrYr") xlWs.Cells(rownum, 10) = rsSales.Fields("SalesLastYr") xlWs.Cells(rownum, 11) = rsSales.Fields("marginCurrYr") xlWs.Cells(rownum, 12) = rsSales.Fields("MarginLastYr") rownum = rownum + 1 rsSales.MoveNext Wend Any suggestions? Also, if anyone specializes in this sort of thing (Access to Excel automation), I might need to farm this out. Thanks in advance. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From prodevmg at yahoo.com Fri Mar 17 13:03:01 2006 From: prodevmg at yahoo.com (Lonnie Johnson) Date: Fri, 17 Mar 2006 11:03:01 -0800 (PST) Subject: [AccessD] How do I query Active Directory? Message-ID: <20060317190301.94458.qmail@web33104.mail.mud.yahoo.com> Does anyone have code or a model of a procedure that will allow me to query members of the Active Directory? May God bless you beyond your imagination! Lonnie Johnson ProDev, Professional Development of MS Access Databases Visit me at ==> http://www.prodev.us --------------------------------- Yahoo! Travel Find great deals to the top 10 hottest destinations! From ehughes at grtusa.com Fri Mar 17 13:51:49 2006 From: ehughes at grtusa.com (Erin Hughes) Date: Fri, 17 Mar 2006 14:51:49 -0500 Subject: [AccessD] Creating Tables from Queries A00 Message-ID: I am very new to Access, in fact I am in my third week of an intermediate course, and I am creating a database that stores information about wells and elevations. Once the information is in the database I would like to be able to access certain information to put into an ArchView program. From what I understand, you can only bring tables into ArchVeiw and I don't necessarily need all of the information I have stored to be brought in, so I need to figure out a way to make a query into a table for such purposes. If you have a suggestion please let me know. Thanks, Erin Hughes From bheid at appdevgrp.com Fri Mar 17 13:54:02 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Fri, 17 Mar 2006 14:54:02 -0500 Subject: [AccessD] Single vs. double issue... Message-ID: <916187228923D311A6FE00A0CC3FAA30D3511C@ADGSERVER> Hey, I always thought that the main difference between a single and a double was that the single had 7 digits and the double had 15 digits of precision AFTER the decimal point. Normally, I store decimal values as double. But for some reason, this particular field was set to single. Our client found an issue with that field today. They had entered 666,656,666 into the field. When you look at the table, it is 666,656,600. As a test, I changed the field to double, entered 666,656,666, and saved it. The value stuck. Then I changed it to single, got the smaller field size warning, and saved it. When I looked at the table, the value was 666,656,600. So, I think the issue is that I misunderstood what the precision meant in the single vs. double declaration. I wanted to be sure that this was the issue before I just blindly convert them to doubles. Am I correct? Thanks, Bobby From martyconnelly at shaw.ca Fri Mar 17 14:10:29 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Fri, 17 Mar 2006 12:10:29 -0800 Subject: [AccessD] How do I query Active Directory? References: <20060317190301.94458.qmail@web33104.mail.mud.yahoo.com> Message-ID: <441B17B5.3020901@shaw.ca> You could try code samples like this. Most of this type of code using LDAP, ADSI and WMI is written in VBScript but is easily modifiable into VBA. Just define the objects and variants. Look around this site with 100's of sample vbscripts http://www.activexperts.com/activmonitor/windowsmanagement/scripts/activedirectory/computer/#ListAllComputer.htm Sub testnames() 'List All Computer Accounts in Active Directory 'Returns the name and location for all the computer accounts in Active Directory. Const ADS_SCOPE_SUBTREE = 2 Dim objConnection As Object Dim objCommand As Object Dim objrecordset As Object 'points at domain fabrikam.com Set objConnection = CreateObject("ADODB.Connection") Set objCommand = CreateObject("ADODB.Command") objConnection.Provider = "ADsDSOObject" objConnection.Open "Active Directory Provider" Set objCommand.ActiveConnection = objConnection 'note sample domain below is fabrikam.com objCommand.CommandText = _ "Select Name, Location from 'LDAP://DC=fabrikam,DC=com' " _ & "Where objectClass='computer'" objCommand.Properties("Page Size") = 1000 objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE Set objrecordset = objCommand.Execute objrecordset.MoveFirst Do Until objrecordset.EOF Debug.Print "Computer Name: " & objrecordset.Fields("Name").Value Debug.Print "Location: " & objrecordset.Fields("Location").Value objrecordset.MoveNext Loop Set objrecordset = Nothing Set objConnection = Nothing Set objCommand = Nothing End Sub Sub test() ' You can get the creation date for each account from Active 'Directory. Every AD object has a WhenCreated and WhenChanged 'attribute. You can dump these attributes into a flat file using 'the LDIFDE utility, or you can dump them into a comma-delimited 'file using CSVDE (both utilities come with Windows 2000). 'Here 's the syntax to dump the two attributes for the user 'objects in an OU called Phoenix in a domain called Company.com 'to the console for viewing (the entire entry should typed as a 'single line): ' ldifde -d ou=phoenix,dc=company,dc=com -l whencreated, ' whenchanged -p onelevel -r "(ObjectCategory=user)" ' -f con 'If you wanted to save the dump to a file, change the "-f" switch 'from "con" to a file name. 'The last logon timestamp uses this format: YYYYMMDDHHMMSS, with 'the hour shown in Universal Coordinated Time. A time stamp of '20040115182937.0Z corresponds to Jan 15 2004 18:29:37 UCT. 'USRSTAT is slow, and the report you get has to be merged with 'the LDIFDE dump. So, I put together a script that searches for 'user objects at each domain controller, then lists the local 'logon time and the creation time. The user logon timestamp 'requires conversion from a long integer. I borrowed the 'conversion code comes from Richard L. Mueller '( http://www.rlmueller.net/Programs ). Richard's full script 'also takes the local time zone from the Registry and converts 'the time from UCT to local time. Nifty. 'Establish ADO Constants Const ADS_CHASE_REFERRALS_NEVER = &O0 Const ADS_CHASE_REFERRALS_SUBORDINATE = &O20 Const ADS_CHASE_REFERRALS_EXTERNAL = &O40 Const ADS_CHASE_REFERRALS_ALWAYS = &O60 Const ADS_SCOPE_BASE = 0 Const ADS_SCOPE_ONELEVEL = 1 Const ADS_SCOPE_SUBTREE = 2 Dim RootDSE As Object Dim domainDN As Object Dim Connection As Object Dim dc As Object Dim dcList As Object Dim rs As ADODB.Recordset Dim adoLastLogon As Object Dim logondate As Object Dim longdate As Object Dim longDateHigh As Long Dim longDateLow As Long Dim oNet As Object Set oNet = CreateObject("Wscript.Network") Debug.Print oNet.UserName 'Get Distinguished Name for local domain 'Set RootDSE = GetObject("LDAP://RootDSE") 'Set RootDSE = GetObject("LDAP://MARTIN") Set RootDSE = GetObject("LDAP://marty") domainDN = RootDSE.Get("DefaultNamingContext") 'Initialize ADO connection Set Connection = CreateObject("ADODB.Connection") Connection.Provider = "ADsDSOObject" Connection.Open Set Command = CreateObject("ADODB.Command") Set Command.ActiveConnection = Connection Command.Properties("Page Size") = 1000 Command.Properties("Timeout") = 30 Command.Properties("searchscope") = ADS_SCOPE_SUBTREE Command.Properties("Chase referrals") = ADS_CHASE_REFERRALS_NEVER Command.Properties("Cache Results") = False 'Get list of domain controllers for the domain Set dcList = GetObject("LDAP://ou=domain controllers," & _ domainDN) 'Walk each domain controller for logons For Each dc In dcList Debug.Print String(40, "=") Debug.Print "Logon dates at " & dc.DNSHostName Command.CommandText = "SELECT name,lastlogon," & _ "whencreated,whenchanged FROM " & _ "'LDAP://" & dc.DNSHostName & "/" & _ domainDN & "' WHERE objectcategory = 'user'" Set rs = Command.Execute Do Until rs.EOF adoLastLogon = rs.Fields("lastlogon") On Error Resume Next Err.Clear Set longdate = adoLastLogon If Err.Number <> 0 Then Err.Clear logondate = "No Local Logon" Else longDateHigh = longdate.HighPart longDateLow = longdate.LowPart If (longDateLow = 0) And (longDateHigh = 0) Then logondate = "No Local Logon" Else If longDateLow < 0 Then longDateHigh = longDateHigh + 1 logondate = #1/1/1601# + (((longDateHigh * (2 ^ 32)) _ + longDateLow) / 600000000 / 1440) End If End If Debug.Print "User Name: " & rs.Fields("name") Debug.Print " Last logon: " & logondate Debug.Print " Object Created: " & rs.Fields("WhenCreated") Debug.Print " Object Modified: " & rs.Fields("WhenChanged") rs.MoveNext Loop 'Debug.Print vbNL Next ' WScript.Quit() 'As you mentioned, Zev, Windows Server 2003 has an additional 'attribute called LastLogonTimestamp that replicates to every 'domain controller once you shift to a Windows Server 2003 'functional level. You can rewrite this script to search for 'the contents of LastLogonTimestamp on any domain controller. End Sub Lonnie Johnson wrote: >Does anyone have code or a model of a procedure that will allow me to query members of the Active Directory? > > >May God bless you beyond your imagination! >Lonnie Johnson >ProDev, Professional Development of MS Access Databases >Visit me at ==> http://www.prodev.us > > > > > > > > > > > > >--------------------------------- >Yahoo! Travel > Find great deals to the top 10 hottest destinations! > > -- Marty Connelly Victoria, B.C. Canada From Lambert.Heenan at AIG.com Fri Mar 17 14:17:28 2006 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Fri, 17 Mar 2006 14:17:28 -0600 Subject: [AccessD] Single vs. double issue... Message-ID: <1D7828CDB8350747AFE9D69E0E90DA1F1EE08D7C@xlivmbx21.aig.com> The difference between Single and Double is not just the number of decimal places, but also the range of values to the left of the decimal point. A Single can store -3.402823E38 to -1.401298E-45 for negative values and from 1.401298E-45 to 3.402823E38 for positive values. A Double can store -1.79769313486231E308 to -4.94065645841247E-324 for negative values and from 4.94065645841247E-324 to 1.79769313486232E308 for positive values. That's the official word. I just tested what you report and can confirm that singles in a table are doing this very strange 'rounding'. It also happened when you use Single type variables in code. It makes no sense at all to me as 666,656,666 is only ~6.66E8, well within the supposed range of a Single. So at first blush this is a VERY SERIOUS bug in the Single data type!!!!!!! Anyone care to ring the bell at M$? Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Friday, March 17, 2006 2:54 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Single vs. double issue... Hey, I always thought that the main difference between a single and a double was that the single had 7 digits and the double had 15 digits of precision AFTER the decimal point. Normally, I store decimal values as double. But for some reason, this particular field was set to single. Our client found an issue with that field today. They had entered 666,656,666 into the field. When you look at the table, it is 666,656,600. As a test, I changed the field to double, entered 666,656,666, and saved it. The value stuck. Then I changed it to single, got the smaller field size warning, and saved it. When I looked at the table, the value was 666,656,600. So, I think the issue is that I misunderstood what the precision meant in the single vs. double declaration. I wanted to be sure that this was the issue before I just blindly convert them to doubles. Am I correct? Thanks, Bobby -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jim.Hale at FleetPride.com Fri Mar 17 14:50:17 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Fri, 17 Mar 2006 14:50:17 -0600 Subject: [AccessD] Export to Excel via VBA, Naming Cells Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDAD2@corp-es01.fleetpride.com> This works: ActiveWorkbook.Names.Add Name:="test1", RefersTo:="=Sheet1!$a$1:$b$3" Are you missing a : after the f? Jim Hale -----Original Message----- From: Lawrence Mrazek [mailto:lmrazek at lcm-res.com] Sent: Friday, March 17, 2006 12:32 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Export to Excel via VBA, Naming Cells Thanks Gustav & Jim: I guess I'm just having trouble with the syntax of creating a named range from VBA. For example, using my code (below), how would I assign a name? Right now, the names are getting added to the sheet, but the references to the cells are messed up. Something is not working when I set the CellLocation variable ... While Not rsSales.EOF xlWs.Cells(rownum, 1) = rsSales.Fields("SalesRep") xlWs.Cells(rownum, 6) = rsSales.Fields("month") xlWs.Cells(rownum, 7) = rsSales.Fields("KGsLastYr") RangeName = rsSales.Fields("SalesRep") & rsSales.Fields("itemtype") & rsSales.Fields("month") CellLocation = "'" & WrkSheetName & "'" & "!$" & "f" & "$" & rownum xlWb.Names.Add Name:=RangeName, RefersTo:=CellLocation, Visible:=True ' rownum = rownum + 1 rsSales.MoveNext Wend Thanks! Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Friday, March 17, 2006 11:05 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Export to Excel via VBA, Naming Cells Hi Larry Yes, a 'dynamic named range' is every bit as much a 'named range' as a static one; the only difference is that instead of the Refers To formula looking like: =Sheet1!$A$1:$D$100 it looks more like: =OFFSET(Sheet1!$A$1,0,0,COUNTA(Sheet1!$A:$A),4) or some other formula whose result is a range. However, you cannot link to a dynamic range as a table in Access as Excel needs to be open to get the coordinates of the range. But via code you can do that calculation in many other ways and then create a static named range. /gustav >>> lmrazek at lcm-res.com 17-03-2006 17:37:27 >>> *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From lmrazek at lcm-res.com Fri Mar 17 14:50:56 2006 From: lmrazek at lcm-res.com (Lawrence Mrazek) Date: Fri, 17 Mar 2006 14:50:56 -0600 Subject: [AccessD] Export to Excel via VBA, Naming Cells In-Reply-To: <027101c649f1$07876ea0$036fa8c0@hplaptop> Message-ID: <02ad01c64a04$7d3aadc0$036fa8c0@hplaptop> Solved my syntax issue: The following worked to assign a name to single cell RangeName = rsSales.Fields("SalesRep") & rsSales.Fields("itemtype") & rsSales.Fields("month") CellLocation = "=" & WrkSheetName & "!$" & "f" & "$" & rownum xlWb.Names.Add Name:=RangeName, RefersTo:=CellLocation, Visible:=True Now comes the fun part ... Adding calculations to the mix. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Lawrence Mrazek Sent: Friday, March 17, 2006 12:32 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Export to Excel via VBA, Naming Cells Thanks Gustav & Jim: I guess I'm just having trouble with the syntax of creating a named range from VBA. For example, using my code (below), how would I assign a name? Right now, the names are getting added to the sheet, but the references to the cells are messed up. Something is not working when I set the CellLocation variable ... While Not rsSales.EOF xlWs.Cells(rownum, 1) = rsSales.Fields("SalesRep") xlWs.Cells(rownum, 6) = rsSales.Fields("month") xlWs.Cells(rownum, 7) = rsSales.Fields("KGsLastYr") RangeName = rsSales.Fields("SalesRep") & rsSales.Fields("itemtype") & rsSales.Fields("month") CellLocation = "'" & WrkSheetName & "'" & "!$" & "f" & "$" & rownum xlWb.Names.Add Name:=RangeName, RefersTo:=CellLocation, Visible:=True ' rownum = rownum + 1 rsSales.MoveNext Wend Thanks! Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Friday, March 17, 2006 11:05 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Export to Excel via VBA, Naming Cells Hi Larry Yes, a 'dynamic named range' is every bit as much a 'named range' as a static one; the only difference is that instead of the Refers To formula looking like: =Sheet1!$A$1:$D$100 it looks more like: =OFFSET(Sheet1!$A$1,0,0,COUNTA(Sheet1!$A:$A),4) or some other formula whose result is a range. However, you cannot link to a dynamic range as a table in Access as Excel needs to be open to get the coordinates of the range. But via code you can do that calculation in many other ways and then create a static named range. /gustav >>> lmrazek at lcm-res.com 17-03-2006 17:37:27 >>> Hi: I'm working on a fairly complex routine that exports sales data from Access into Excel. Basically, the Excel report will have multiple worksheets, each containing a salesman's summary sales data (about 15-20 salesmen), plus one worksheet with company totals. The client wants all calculations to happen in Excel, and since I can't predict where the data will end up in Excel, I can't really hard code any formulas that refer to the sales data. I haven't had any trouble creating the worksheets/exporting the raw data via a VBA routine, but I'm stuck on the calculation front. Can I dynamically name cells/ranges as build the Excel report? I I'd like to be able to use named ranges for these calculations, as I'll need to refer to them to build my totals, but have been having a bit of trouble getting them to work. I'd like to be able to assign the names as I build the spreadsheet, but I'm not quite "getting" the syntax of the naming convention or something. I've added a sample below: While Not rsSales.EOF xlWs.Cells(rownum, 1) = rsSales.Fields("SalesRP") xlWs.Cells(rownum, 2) = rsSales.Fields("salesrepName") xlWs.Cells(rownum, 3) = rsSales.Fields("ProductGroup") xlWs.Cells(rownum, 4) = rsSales.Fields("Item") xlWs.Cells(rownum, 5) = rsSales.Fields("itemdescription") xlWs.Cells(rownum, 6) = rsSales.Fields("month") RangeName = rsSales.Fields("SalesRP") & rsSales.Fields("item") & rsSales.Fields("month") CellLocation = rownum & 6 & ":" & rownum & 6 ' Just testing to see if I can get the naming working. xlWb.Names.Add Name:=RangeName, RefersTo:=CellLocation, Visible:=True ' "=" & "!$" & rownum & "$" & 6 & ":" & rownum & "$" & 6 xlWs.Cells(rownum, 7) = rsSales.Fields("KGsLastYr") xlWs.Cells(rownum, 8) = rsSales.Fields("KgsCurrYr") xlWs.Cells(rownum, 9) = rsSales.Fields("SalesCurrYr") xlWs.Cells(rownum, 10) = rsSales.Fields("SalesLastYr") xlWs.Cells(rownum, 11) = rsSales.Fields("marginCurrYr") xlWs.Cells(rownum, 12) = rsSales.Fields("MarginLastYr") rownum = rownum + 1 rsSales.MoveNext Wend Any suggestions? Also, if anyone specializes in this sort of thing (Access to Excel automation), I might need to farm this out. Thanks in advance. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jim.Hale at FleetPride.com Fri Mar 17 15:06:10 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Fri, 17 Mar 2006 15:06:10 -0600 Subject: [AccessD] KeyDown Problem Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDAD4@corp-es01.fleetpride.com> I often run into a problem where, after many changes, Access just refuses to "see" the changed code and only runs the previous old code. It goes on coffee break/strike or something. I have to decompile and import into a new container. Very frustrating. I wouldn't be surprised if the two problems are similar. No solutions, just commiseration since misery loves company. Jim Hale -----Original Message----- From: Rocky Smolin - Beach Access Software [mailto:bchacc at san.rr.com] Sent: Friday, March 17, 2006 11:59 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] KeyDown Problem It just happened again. I'm beginning to think there's a setting or something not set correctly. I copied an existing subform, made some mods to the new one (since it was similar to the old one) and dropped it onto a tab form. A double click event in a text box on the tab form but NOT in the sub form refused to fire. Went to code. Compiled. Clean! Eventually I figured out that I had forgotten to delete all the code behind sub form when I copied the old sub form to the new one. The new one was referencing controls on the old sub form which weren't on the new one. But no compile error. Deleted all the code behind the new sub form and everything worked. But the compile was clean. And yes I do have OPTION EXPLICIT in every page of code I write. Any ideas what's causing this? Regards, Rocky -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From DWUTKA at marlow.com Fri Mar 17 15:15:45 2006 From: DWUTKA at marlow.com (DWUTKA at marlow.com) Date: Fri, 17 Mar 2006 15:15:45 -0600 Subject: [AccessD] How do I query Active Directory? Message-ID: <17724746D360394AA3BFE5B8D40A9C1BD976@main2.marlow.com> Sent you something off list for this. Drew -----Original Message----- From: Lonnie Johnson [mailto:prodevmg at yahoo.com] Sent: Friday, March 17, 2006 1:03 PM To: AccessD solving' Subject: [AccessD] How do I query Active Directory? Does anyone have code or a model of a procedure that will allow me to query members of the Active Directory? May God bless you beyond your imagination! Lonnie Johnson ProDev, Professional Development of MS Access Databases Visit me at ==> http://www.prodev.us --------------------------------- Yahoo! Travel Find great deals to the top 10 hottest destinations! -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jim.Hale at FleetPride.com Fri Mar 17 15:27:21 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Fri, 17 Mar 2006 15:27:21 -0600 Subject: [AccessD] Export to Excel via VBA, Naming Cells Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDAD5@corp-es01.fleetpride.com> Maybe this will give you some ideas. Starting at the top of the range e5 it finds the last number in the column and places a sum formula underneath. Jim Hale Function test() Dim rng As Range, i As Integer, strAddressBottom As String, strAddressTop As String Set rng = Range("e5") strAddressTop = rng.Address For i = 1 To 25 If rng.Offset(i, 0).Value = "" Then strAddressBottom = rng.Offset(i - 1, 0).Cells.Address rng.Offset(i, 0).Formula = "=sum(" & strAddressTop & ":" & strAddressBottom & ")" GoTo The_End End If Next The_End: Set rng = Nothing End Function -----Original Message----- From: Lawrence Mrazek [mailto:lmrazek at lcm-res.com] Sent: Friday, March 17, 2006 2:51 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Export to Excel via VBA, Naming Cells Solved my syntax issue: The following worked to assign a name to single cell RangeName = rsSales.Fields("SalesRep") & rsSales.Fields("itemtype") & rsSales.Fields("month") CellLocation = "=" & WrkSheetName & "!$" & "f" & "$" & rownum xlWb.Names.Add Name:=RangeName, RefersTo:=CellLocation, Visible:=True Now comes the fun part ... Adding calculations to the mix. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From djkr at msn.com Fri Mar 17 16:13:36 2006 From: djkr at msn.com (DJK(John) Robinson) Date: Fri, 17 Mar 2006 22:13:36 -0000 Subject: [AccessD] Single vs. double issue... In-Reply-To: <1D7828CDB8350747AFE9D69E0E90DA1F1EE08D7C@xlivmbx21.aig.com> Message-ID: Nothing to do with MS - time to ring *your* bell, guys! :-) A single has 32 bits: 24 for the mantissa, 8 for the exponent. The exponent determines the *range* of values you can have, while the mantissa determines the *precision*, and each has effectively to use one bit for its sign. So, with 23 bits of mantissa to provide the precision, how many significant decimal digits does that represent? About 7. (Strictly speaking, a little less than 7, since 2**23 = 8,388,608, not 9,999,999.) So a 32-bit floating-point number (a 'single') CANNOT represent 666,656,666 in all its *nine*-significant-digit glory. Nothing to do with Access, nor even MS: just math. (The 24/8 split could in theory be chosen differently, but 24/8 is the IEEE standard, widely used.) The Access documentation alludes to this degree of precision in the number of significant digits it shows in its definition of single: just 7. Incidentally, Bobby, it's not decimal *values* you're storing, just values - which you may think of in decimal representation. There's a serious question here: are your actual values here integers, or do they have a fractional part? If integers, then of course you should not be using floating-point at all, both for efficiency of storage and speed of calculation. The 64 bits of a double are split 52/11. HTH John -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert Sent: 17 March 2006 20:17 To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Single vs. double issue... The difference between Single and Double is not just the number of decimal places, but also the range of values to the left of the decimal point. A Single can store -3.402823E38 to -1.401298E-45 for negative values and from 1.401298E-45 to 3.402823E38 for positive values. A Double can store -1.79769313486231E308 to -4.94065645841247E-324 for negative values and from 4.94065645841247E-324 to 1.79769313486232E308 for positive values. That's the official word. I just tested what you report and can confirm that singles in a table are doing this very strange 'rounding'. It also happened when you use Single type variables in code. It makes no sense at all to me as 666,656,666 is only ~6.66E8, well within the supposed range of a Single. So at first blush this is a VERY SERIOUS bug in the Single data type!!!!!!! Anyone care to ring the bell at M$? Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Friday, March 17, 2006 2:54 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Single vs. double issue... Hey, I always thought that the main difference between a single and a double was that the single had 7 digits and the double had 15 digits of precision AFTER the decimal point. Normally, I store decimal values as double. But for some reason, this particular field was set to single. Our client found an issue with that field today. They had entered 666,656,666 into the field. When you look at the table, it is 666,656,600. As a test, I changed the field to double, entered 666,656,666, and saved it. The value stuck. Then I changed it to single, got the smaller field size warning, and saved it. When I looked at the table, the value was 666,656,600. So, I think the issue is that I misunderstood what the precision meant in the single vs. double declaration. I wanted to be sure that this was the issue before I just blindly convert them to doubles. Am I correct? Thanks, Bobby -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Lambert.Heenan at AIG.com Fri Mar 17 16:29:07 2006 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Fri, 17 Mar 2006 17:29:07 -0500 Subject: [AccessD] Is this a bug in Access' implementation of the Single data ty pe? Message-ID: <1D7828CDB8350747AFE9D69E0E90DA1F1EE08DF1@xlivmbx21.aig.com> But according to the on-line help (which I quoted) a Single can hold numbers in the range "-3.402823E38 to -1.401298E-45 for negative values and from 1.401298E-45 to 3.402823E38 for positive values". And this range is confirmed by http://msdn2.microsoft.com/en-us/library/xay7978z(VS.80).aspx PowerBasic uses a similar (but different) range http://www.powerbasic.com/support/help/pbcc/single-precision_floating-point_ (!).htm ... Cogitate...cogitate... Ah, I see. So you only get 7 significant decimal digits in value, and when you enter more (up to the limit of x^38) it will be rounded. Thanks. Lambert -----Original Message----- From: Microsoft Access Database Discussion List [mailto:ACCESS-L at PEACH.EASE.LSOFT.COM] On Behalf Of ysiebeneck at UPS.COM Sent: Friday, March 17, 2006 4:58 PM To: ACCESS-L at PEACH.EASE.LSOFT.COM Subject: Re: Is this a bug in Access' implementation of the Single data type? This is the standard and expected behavior of a single data type. To be more precise, a single-precision 32-bit data type. 666,656,666 = 6.66656666E+08. However, the single data type can only store 6.666566E+08, which is 666,656,600 - which is what was observed. You have to remember to account for the precision part of the single-precision data type. Single data types are stored in the 0.000000E+-00 format, with 8 of the bits storing the exponent, one the sign, and the remaining 23 bits the fraction. If you want a more in depth explanation, do a google search with "IEEE 32-bit single-precision floating-point". Yon-Paul -----Original Message----- From: Microsoft Access Database Discussion List [mailto:ACCESS-L at PEACH.EASE.LSOFT.COM] On Behalf Of Heenan, Lambert Sent: Friday, March 17, 2006 2:01 PM To: ACCESS-L at PEACH.EASE.LSOFT.COM Subject: Is this a bug in Access' implementation of the Single data type? I've forwarded this message from the AccessD list for your information and comments. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert Sent: Friday, March 17, 2006 3:17 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Single vs. double issue... The difference between Single and Double is not just the number of decimal places, but also the range of values to the left of the decimal point. A Single can store -3.402823E38 to -1.401298E-45 for negative values and from 1.401298E-45 to 3.402823E38 for positive values. A Double can store -1.79769313486231E308 to -4.94065645841247E-324 for negative values and from 4.94065645841247E-324 to 1.79769313486232E308 for positive values. That's the official word. I just tested what you report and can confirm that singles in a table are doing this very strange 'rounding'. It also happened when you use Single type variables in code. It makes no sense at all to me as 666,656,666 is only ~6.66E8, well within the supposed range of a Single. So at first blush this is a VERY SERIOUS bug in the Single data type!!!!!!! Anyone care to ring the bell at M$? Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Friday, March 17, 2006 2:54 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Single vs. double issue... Hey, I always thought that the main difference between a single and a double was that the single had 7 digits and the double had 15 digits of precision AFTER the decimal point. Normally, I store decimal values as double. But for some reason, this particular field was set to single. Our client found an issue with that field today. They had entered 666,656,666 into the field. When you look at the table, it is 666,656,600. As a test, I changed the field to double, entered 666,656,666, and saved it. The value stuck. Then I changed it to single, got the smaller field size warning, and saved it. When I looked at the table, the value was 666,656,600. So, I think the issue is that I misunderstood what the precision meant in the single vs. double declaration. I wanted to be sure that this was the issue before I just blindly convert them to doubles. Am I correct? Thanks, Bobby -------------------------------------------------------------------------- The ACCESS-L list is hosted on a Windows(R) 2000 Server running L-Soft international's LISTSERV(R) software. For subscription/signoff info and archives, see http://peach.ease.lsoft.com/archives/access-l.html . COPYRIGHT INFO: http://peach.ease.lsoft.com/scripts/wa.exe?SHOWTPL=COPYRIGHT&L=ACCESS-L From karenr7 at oz.net Fri Mar 17 16:55:54 2006 From: karenr7 at oz.net (Karen Rosenstiel) Date: Fri, 17 Mar 2006 14:55:54 -0800 Subject: [AccessD] Key Preview Problem In-Reply-To: <00f801c64919$657f7620$0302a8c0@pennp4> Message-ID: <000501c64a15$f2b896f0$6401a8c0@bigmama> Disabled people DO use alt keys, folks that may have a tremor that interferes with mousing or who may not have full use of their hands/arms. Regards, Karen Rosenstiel Seattle WA USA -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Penn White Sent: Thursday, March 16, 2006 8:48 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Key Preview Problem I share your mouseophobia and my users didn't request it either. I'm not even sure they'll even use the Alt keys and have wondered several times why I was doing this but I do it anyway. Because of the subforms, I don't think Lambert's suggestion will work though. I think I'd still have to put code in each subform that gets the focus but I'll give it a try just to be complete. BTW, I was wrong about putting the KeyDown code in the Form_KeyDown event handler. It works fine. I'd forgotten that I had more than one subform on the tabbed page and was coding the wrong subform...oh well. In any event, I've had a great time exploring this with everyone and have learned a lot. Thanks to all. Penn -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From martyconnelly at shaw.ca Fri Mar 17 18:40:48 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Fri, 17 Mar 2006 16:40:48 -0800 Subject: [AccessD] Single vs. double issue... References: Message-ID: <441B5710.4040008@shaw.ca> MS adheres to IEEE 745 Standard (well mostly) for floating point numbers. In some older compilers they used BCD arithmetic or MSF binary storage format. There is a formula for number of significant digits obtainable from the mantissa size It is log base 10 (2^ bits in mantissa) or using vba calculation with natural logs Debug.Print (Log(2 ^ 52) / Log(10)) ' double word number of significant digits 52 bit mantissa = 15 real*4 sign bit, 8-bit exponent, 23-bit mantissa real*8 sign bit, 11-bit exponent, 52-bit mantissa real*10 sign bit, 15-bit exponent, 64-bit mantissa http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dv_vccelng4/html/elconTypedouble.asp DJK(John) Robinson wrote: >Nothing to do with MS - time to ring *your* bell, guys! :-) > >A single has 32 bits: 24 for the mantissa, 8 for the exponent. The exponent >determines the *range* of values you can have, while the mantissa determines >the *precision*, and each has effectively to use one bit for its sign. So, >with 23 bits of mantissa to provide the precision, how many significant >decimal digits does that represent? About 7. (Strictly speaking, a little >less than 7, since 2**23 = 8,388,608, not 9,999,999.) > >So a 32-bit floating-point number (a 'single') CANNOT represent 666,656,666 >in all its *nine*-significant-digit glory. Nothing to do with Access, nor >even MS: just math. (The 24/8 split could in theory be chosen differently, >but 24/8 is the IEEE standard, widely used.) > >The Access documentation alludes to this degree of precision in the number >of significant digits it shows in its definition of single: just 7. > >Incidentally, Bobby, it's not decimal *values* you're storing, just values - >which you may think of in decimal representation. There's a serious >question here: are your actual values here integers, or do they have a >fractional part? If integers, then of course you should not be using >floating-point at all, both for efficiency of storage and speed of >calculation. > >The 64 bits of a double are split 52/11. > >HTH >John > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert >Sent: 17 March 2006 20:17 >To: 'Access Developers discussion and problem solving' >Subject: Re: [AccessD] Single vs. double issue... > > >The difference between Single and Double is not just the number of decimal >places, but also the range of values to the left of the decimal point. > >A Single can store -3.402823E38 to -1.401298E-45 for negative values and >from 1.401298E-45 to 3.402823E38 for positive values. > >A Double can store -1.79769313486231E308 to -4.94065645841247E-324 for >negative values and from 4.94065645841247E-324 to 1.79769313486232E308 for >positive values. > >That's the official word. I just tested what you report and can confirm that >singles in a table are doing this very strange 'rounding'. It also happened >when you use Single type variables in code. It makes no sense at all to me >as 666,656,666 is only ~6.66E8, well within the supposed range of a Single. > >So at first blush this is a VERY SERIOUS bug in the Single data type!!!!!!! > >Anyone care to ring the bell at M$? > >Lambert > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid >Sent: Friday, March 17, 2006 2:54 PM >To: 'Access Developers discussion and problem solving' >Subject: [AccessD] Single vs. double issue... > > >Hey, > >I always thought that the main difference between a single and a double was >that the single had 7 digits and the double had 15 digits of precision >AFTER the decimal point. > >Normally, I store decimal values as double. But for some reason, this >particular field was set to single. Our client found an issue with that >field today. They had entered 666,656,666 into the field. When you look at >the table, it is 666,656,600. > >As a test, I changed the field to double, entered 666,656,666, and saved it. >The value stuck. Then I changed it to single, got the smaller field size >warning, and saved it. When I looked at the table, the value was >666,656,600. > >So, I think the issue is that I misunderstood what the precision meant in >the single vs. double declaration. I wanted to be sure that this was the >issue before I just blindly convert them to doubles. Am I correct? > >Thanks, >Bobby > > > -- Marty Connelly Victoria, B.C. Canada From darsant at gmail.com Fri Mar 17 19:02:32 2006 From: darsant at gmail.com (Josh McFarlane) Date: Fri, 17 Mar 2006 19:02:32 -0600 Subject: [AccessD] Single vs. double issue... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D3511C@ADGSERVER> References: <916187228923D311A6FE00A0CC3FAA30D3511C@ADGSERVER> Message-ID: <53c8e05a0603171702r5a143880ged80ef5c9b2baabe@mail.gmail.com> On 3/17/06, Bobby Heid wrote: > I always thought that the main difference between a single and a double was > that the single had 7 digits and the double had 15 digits of precision > AFTER the decimal point. > > So, I think the issue is that I misunderstood what the precision meant in > the single vs. double declaration. I wanted to be sure that this was the > issue before I just blindly convert them to doubles. Am I correct? Think significant figures and it might make more sense: Basically 666,656,666 can also be represnted as 6.66656666 x 10^9, which is typically how it's stored in floating point numbers (two parts, the first part, and then the exponent), so you end up with 6.666566 x 10 ^ 9 as you saw. Due to the number of bytes used to store the value, certain amounts will be rounded to the nearest possible precision value, as you can only represent so much data in the space provided for the first part. You've really got two seperate bounds on the numbers: One for the exponent on the base 10, and the one for the multiple. For single it's about 7 significant digits as you said. When you go up to a double, you get a bigger range for both values. So, while it may be misleading to say that singles have a range form some number to negative some number, there are various values in between that cannot be accurately represented by the single / double precision because you have two many significant figures. -- Josh McFarlane "Peace cannot be kept by force. It can only be achieved by understanding." -Albert Einstein From wdhindman at bellsouth.net Fri Mar 17 19:17:11 2006 From: wdhindman at bellsouth.net (William Hindman) Date: Fri, 17 Mar 2006 20:17:11 -0500 Subject: [AccessD] Paradox/Sybase to Access Message-ID: <000301c64a29$af268690$6101a8c0@50NM721> ...I have a client db that I need to get the table data out of ...the normal import conversions all give a data format incorrect error ...my hex editor shows Sybase in the code with a paradox .db extension. ...should be just a single table with name address type data. ...anyone with an idea on how to go about this? William From stuart at lexacorp.com.pg Fri Mar 17 19:26:55 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Sat, 18 Mar 2006 11:26:55 +1000 Subject: [AccessD] Single vs. double issue... In-Reply-To: <53c8e05a0603171702r5a143880ged80ef5c9b2baabe@mail.gmail.com> References: <916187228923D311A6FE00A0CC3FAA30D3511C@ADGSERVER> Message-ID: <441BEE7F.11346.485254F@stuart.lexacorp.com.pg> On 17 Mar 2006 at 19:02, Josh McFarlane wrote: > > So, while it may be misleading to say that singles have a range form > some number to negative some number, there are various values in > between that cannot be accurately represented by the single / double > precision... In fact, there are an *infinite* number of values within the quoted ranges of single/double precision numbers that can't be accurately represented by those storage methods. And it's not just an Aleph-0 infinity either , it's an Aleph-1 infinity. :-) -- Stuart From lembit.dbamail at t-online.de Sat Mar 18 05:59:21 2006 From: lembit.dbamail at t-online.de (Lembit Soobik) Date: Sat, 18 Mar 2006 12:59:21 +0100 Subject: [AccessD] Creating Tables from Queries A00 References: Message-ID: <009401c64a83$65111f70$1400a8c0@v1000> Erin, use a 'make table query' Lembit ----- Original Message ----- From: "Erin Hughes" To: Sent: Friday, March 17, 2006 8:51 PM Subject: [AccessD] Creating Tables from Queries A00 >I am very new to Access, in fact I am in my third week of an > intermediate course, and I am creating a database that stores > information about wells and elevations. Once the information is in the > database I would like to be able to access certain information to put > into an ArchView program. From what I understand, you can only bring > tables into ArchVeiw and I don't necessarily need all of the information > I have stored to be brought in, so I need to figure out a way to make a > query into a table for such purposes. If you have a suggestion please > let me know. > > Thanks, > Erin Hughes > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > > -- > No virus found in this incoming message. > Checked by AVG Free Edition. > Version: 7.1.385 / Virus Database: 268.2.5/284 - Release Date: 17.03.2006 > > From erbachs at gmail.com Sat Mar 18 07:23:38 2006 From: erbachs at gmail.com (Steve Erbach) Date: Sat, 18 Mar 2006 07:23:38 -0600 Subject: [AccessD] Paradox/Sybase to Access In-Reply-To: <000301c64a29$af268690$6101a8c0@50NM721> References: <000301c64a29$af268690$6101a8c0@50NM721> Message-ID: <39cb22f30603180523p243e22dfh2065036b565905ba@mail.gmail.com> William, Does anybody there have a copy of Paradox to see if it will actually open the table? I've seen files with a .db extension that weren't Paradox tables at all. Steve Erbach On 3/17/06, William Hindman wrote: > ...I have a client db that I need to get the table data out of ...the normal > import conversions all give a data format incorrect error ...my hex editor > shows Sybase in the code with a paradox .db extension. > > ...should be just a single table with name address type data. > > ...anyone with an idea on how to go about this? > > William > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Regards, Steve Erbach Scientific Marketing Neenah, WI www.swerbach.com Security Page: www.swerbach.com/security From dwaters at usinternet.com Sat Mar 18 07:41:28 2006 From: dwaters at usinternet.com (Dan Waters) Date: Sat, 18 Mar 2006 07:41:28 -0600 Subject: [AccessD] Help Files Message-ID: <000001c64a91$a9360180$0200a8c0@danwaters> Hello to All! Does anyone create Help Files as part of your work? I'm going to be writing these, and because I've simply used Word in the past I want to take a step up and use something like a Help file. There are several applications you can buy, of varying prices, and I don't know which to go with because I haven't used them. Also, I was thinking an alternative might be to create a set of web pages (I use a little of FrontPage) and put them together as a 'site' that has Help content. Does anyone have any thoughts on this? Dan From erbachs at gmail.com Sat Mar 18 07:52:39 2006 From: erbachs at gmail.com (Steve Erbach) Date: Sat, 18 Mar 2006 07:52:39 -0600 Subject: [AccessD] Acquiring subform's subform object name Message-ID: <39cb22f30603180552s31f50417k6adb2e850b4365e3@mail.gmail.com> Dear Group, I have a form, frmMainMenu, that contains a Tab Control. The 8 tabs in the Tab Control are generically named Tab1, Tab2, etc. Each of the Tabs has one Subform Control "embedded" in it; each Subform is also generically named: Subform1, Subform2, etc. The reason for this is that frmMainMenu is set up with another Subform Control "outside" the Tab Control. This subform acts like the vertical menu in an Access database window. Once a menu item is clicked, then all the tabs change, sometimes fewer tabs visible, sometimes more, depending on which vertical menu item is selected. Anyway my problem is this: Say that Tab3's subform control, Subform3, has the form frmCustomers as the subform's Source Object. From the code within frmCustomers I would like to be able to determine the name of it's subform control "container". Me.Parent.Name gives me the name of the "master" form, frmMainMenu. I've tried all sorts of things short of enumerating the collection of controls to simply find the name of the subform control that "contains" frmCustomers. Could you give me an idea? Regards, Steve Erbach Scientific Marketing Neenah, WI http://TheTownCrank/blogspot.com Security Page: www.swerbach.com/security From bhjohnson at verizon.net Sat Mar 18 09:10:35 2006 From: bhjohnson at verizon.net (Bruce H. Johnson) Date: Sat, 18 Mar 2006 07:10:35 -0800 Subject: [AccessD] Help Files In-Reply-To: <000001c64a91$a9360180$0200a8c0@danwaters> Message-ID: <001801c64a9e$1bf224e0$6500a8c0@HALSR> I've done Help for years. You will need a Help Authoring Tool or HAT; here's a link to a comparison of the various tools: http://www.helpstuff.com/downloads/tools.pdf Depending on how your application is distributed, e.g., stand-alone, networked users etc., you would generally try to use the appropriate output type. There is: - Traditional Help, both stand-alone and context-sensitive in the form of .hlp files. - Compiled HTML Help, stand-alone and context-sensitive as .chm files - Web-based help which produces HTML pages for a central server. Each HAT tends to have its own brand of this. Most HATs will produce all three types, plus frequently printed output. You can also check out sourceforge.net (open-source); they may have something for no cost. Some HATs are Word-based, such as RoboHelp (now going by the wayside), others on Frame, and others with their own input/source methods. Most anything using .chm or web-based uses a custom input editor of some sort. Bruce H. Johnson Sylmar, CA -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Dan Waters Sent: Saturday, March 18, 2006 5:41 AM To: AccessD Subject: [AccessD] Help Files Hello to All! Does anyone create Help Files as part of your work? I'm going to be writing these, and because I've simply used Word in the past I want to take a step up and use something like a Help file. There are several applications you can buy, of varying prices, and I don't know which to go with because I haven't used them. Also, I was thinking an alternative might be to create a set of web pages (I use a little of FrontPage) and put them together as a 'site' that has Help content. Does anyone have any thoughts on this? Dan -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From john at winhaven.net Sat Mar 18 09:31:05 2006 From: john at winhaven.net (John Bartow) Date: Sat, 18 Mar 2006 09:31:05 -0600 Subject: [AccessD] Paradox/Sybase to Access In-Reply-To: <000301c64a29$af268690$6101a8c0@50NM721> Message-ID: <032601c64aa0$f92852b0$6402a8c0@ScuzzPaq> Hi William, There are many programs that use .db extension for data storage but from your description I believe you are working with an Sybase SQL Anywhere .db data file. There are ODBC drivers available. HTH John B. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of William Hindman Sent: Friday, March 17, 2006 7:17 PM To: Access Developers discussion and problem solving Subject: [AccessD] Paradox/Sybase to Access ...I have a client db that I need to get the table data out of ...the normal import conversions all give a data format incorrect error ...my hex editor shows Sybase in the code with a paradox .db extension. ...should be just a single table with name address type data. ...anyone with an idea on how to go about this? William -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Sat Mar 18 10:22:21 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Sat, 18 Mar 2006 19:22:21 +0300 Subject: [AccessD] Help Files References: <000001c64a91$a9360180$0200a8c0@danwaters> Message-ID: <004e01c64aa8$25723280$6501a8c0@Nant> Dan at all and especially moderators: I'm participating in the development of the set of original help authoring tools. Currently MS Access 2000/XP/2003, VB6 and Visual Studio 2003/2005 are supported There is a very positive feedback from several MS Access developers. Question to moderators: This is a commercial shareware tool and I do not own it - may I mention its web site here or such mentioning - a kind of advertising/promotion is forbidden here? Shamil ----- Original Message ----- From: "Dan Waters" To: "AccessD" Sent: Saturday, March 18, 2006 4:41 PM Subject: [AccessD] Help Files > Hello to All! > > Does anyone create Help Files as part of your work? I'm going to be > writing > these, and because I've simply used Word in the past I want to take a step > up and use something like a Help file. There are several applications you > can buy, of varying prices, and I don't know which to go with because I > haven't used them. > > Also, I was thinking an alternative might be to create a set of web pages > (I > use a little of FrontPage) and put them together as a 'site' that has Help > content. > > Does anyone have any thoughts on this? > > Dan > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From carbonnb at gmail.com Sat Mar 18 10:26:21 2006 From: carbonnb at gmail.com (Bryan Carbonnell) Date: Sat, 18 Mar 2006 11:26:21 -0500 Subject: [AccessD] Help Files In-Reply-To: <004e01c64aa8$25723280$6501a8c0@Nant> References: <000001c64a91$a9360180$0200a8c0@danwaters> <004e01c64aa8$25723280$6501a8c0@Nant> Message-ID: On 3/18/06, Shamil Salakhetdinov wrote: > Question to moderators: > This is a commercial shareware tool and I do not own it - may I mention its > web site here or such mentioning - a kind of advertising/promotion is > forbidden here? Yes, I don't see why not. -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" From shamil at users.mns.ru Sat Mar 18 10:46:30 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Sat, 18 Mar 2006 19:46:30 +0300 Subject: [AccessD] Acquiring subform's subform object name References: <39cb22f30603180552s31f50417k6adb2e850b4365e3@mail.gmail.com> Message-ID: <005301c64aab$83e34310$6501a8c0@Nant> Steve, Here is the code to call from subform: Dim ectl As Access.Control Dim fsub As Access.SubForm For Each ectl In Me.Parent.Controls If ectl.ControlType = acSubform Then Set fsub = ectl If Len(fsub.SourceObject) > 0 Then If Not fsub.Form Is Nothing Then If fsub.Form Is Me.Form Then MsgBox "My subform control name is " & fsub.Name, _ vbInformation + vbOKOnly End If End If End If End If Next ectl Be careful with calling this code from subform's Open or Load event, especially in the case when on main form there are several subform controls using the same form.... HTH, Shamil ----- Original Message ----- From: "Steve Erbach" To: "Access Developers discussion and problem solving" Sent: Saturday, March 18, 2006 4:52 PM Subject: [AccessD] Acquiring subform's subform object name > Dear Group, > > I have a form, frmMainMenu, that contains a Tab Control. The 8 tabs > in the Tab Control are generically named Tab1, Tab2, etc. > > Each of the Tabs has one Subform Control "embedded" in it; each > Subform is also generically named: Subform1, Subform2, etc. The > reason for this is that frmMainMenu is set up with another Subform > Control "outside" the Tab Control. This subform acts like the > vertical menu in an Access database window. Once a menu item is > clicked, then all the tabs change, sometimes fewer tabs visible, > sometimes more, depending on which vertical menu item is selected. > > Anyway my problem is this: > > Say that Tab3's subform control, Subform3, has the form frmCustomers > as the subform's Source Object. From the code within frmCustomers I > would like to be able to determine the name of it's subform control > "container". > > Me.Parent.Name gives me the name of the "master" form, frmMainMenu. > I've tried all sorts of things short of enumerating the collection of > controls to simply find the name of the subform control that > "contains" frmCustomers. > > Could you give me an idea? > > Regards, > > Steve Erbach > Scientific Marketing > Neenah, WI > http://TheTownCrank/blogspot.com > Security Page: www.swerbach.com/security > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From shamil at users.mns.ru Sat Mar 18 10:51:58 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Sat, 18 Mar 2006 19:51:58 +0300 Subject: [AccessD] Help Files References: <000001c64a91$a9360180$0200a8c0@danwaters><004e01c64aa8$25723280$6501a8c0@Nant> Message-ID: <006a01c64aac$66489160$6501a8c0@Nant> Thank you, Bryan! Here it is: http://www.htmlhelpgenerator.net/help_and_documentation_for_microsoft_access.htm Shamil ----- Original Message ----- From: "Bryan Carbonnell" To: "Access Developers discussion and problem solving" Sent: Saturday, March 18, 2006 7:26 PM Subject: Re: [AccessD] Help Files > On 3/18/06, Shamil Salakhetdinov wrote: > >> Question to moderators: >> This is a commercial shareware tool and I do not own it - may I mention >> its >> web site here or such mentioning - a kind of advertising/promotion is >> forbidden here? > > Yes, I don't see why not. > > -- > Bryan Carbonnell - carbonnb at gmail.com > Life's journey is not to arrive at the grave safely in a well > preserved body, but rather to skid in sideways, totally worn out, > shouting "What a great ride!" > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From tewald at wowway.com Sat Mar 18 12:57:34 2006 From: tewald at wowway.com (Thomas F. Ewald) Date: Sat, 18 Mar 2006 13:57:34 -0500 Subject: [AccessD] Converting from Excel to Access In-Reply-To: Message-ID: <003401c64abd$d12ab830$6401a8c0@64bit> Does anyone have a list of items to watch out for when converting a database from Excel (multiple worksheets) to Access? I can do it all right, but a checklist, some instructions, some hints, etc., could certainly be helpful. TIA, Tom Ewald -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.1.385 / Virus Database: 268.2.5/284 - Release Date: 3/17/2006 From tewald at wowway.com Sat Mar 18 12:59:53 2006 From: tewald at wowway.com (Thomas F. Ewald) Date: Sat, 18 Mar 2006 13:59:53 -0500 Subject: [AccessD] ADO and ADO.NET In-Reply-To: Message-ID: <003501c64abe$242f5040$6401a8c0@64bit> In using Access XP, how much does it matter if you use ADO or ADO.NET? I believe that ADO.NET began with XP; please let me know if I am inaccurate with that belief. If I am correct, is there much to gain by studying ADO.NET? I'm still working on learning ADO (never did learn DAO very well, I have to admit), and I'm trying to put my study time to good use. TIA, Tom Ewald -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.1.385 / Virus Database: 268.2.5/284 - Release Date: 3/17/2006 From harkinsss at bellsouth.net Sat Mar 18 13:33:44 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Sat, 18 Mar 2006 14:33:44 -0500 Subject: [AccessD] Converting from Excel to Access In-Reply-To: <003401c64abd$d12ab830$6401a8c0@64bit> Message-ID: <000001c64ac2$df5fb4a0$92b3d6d1@SUSANONE> By convert, do you mean import? The biggest gotcha I've found when importing Excel data into an Access database is data type problems. Susan H. Does anyone have a list of items to watch out for when converting a database from Excel (multiple worksheets) to Access? I can do it all right, but a checklist, some instructions, some hints, etc., could certainly be helpful. From shamil at users.mns.ru Sat Mar 18 17:23:10 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Sun, 19 Mar 2006 02:23:10 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <007301c649ec$5225b430$647aa8c0@ColbyM6805> Message-ID: <002601c64ae2$ee4bd7d0$6501a8c0@Nant> John, Be careful - it may "eat" all your weekend - better spend a few minutes every day - still a lot to do there and a very detailed testing is needed. Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Friday, March 17, 2006 8:57 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >I would like to look at this over the weekend. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Friday, March 17, 2006 12:48 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > Hi All, > > New version ob subject tests is available at > http://smsconsulting.spb.ru/download/tests/a2dds.htm > Currently there is a weird problem when running in "usual binding mode" > with > MS Access backend and no any data updates - GPF > http://smsconsulting.spb.ru/download/tests/gpf.jpg. > > It would be very useful if somebody approved/disapproved this problem by > running the tests on their PC. > > Thank you. > > Shamil > <<< tail skipped >>> From erbachs at gmail.com Sat Mar 18 17:24:43 2006 From: erbachs at gmail.com (Steve Erbach) Date: Sat, 18 Mar 2006 17:24:43 -0600 Subject: [AccessD] Acquiring subform's subform object name In-Reply-To: <005301c64aab$83e34310$6501a8c0@Nant> References: <39cb22f30603180552s31f50417k6adb2e850b4365e3@mail.gmail.com> <005301c64aab$83e34310$6501a8c0@Nant> Message-ID: <39cb22f30603181524n18316ee1qfd8a1ff3f88e0a5b@mail.gmail.com> Shamil, Interesting. When I was experimenting with this I was flabbergasted that a subform control's SourceObject could not directly tell the name of its subform control. In my case the Me.Parent.Name skipped right past the Subform, the Page, and the Tab controls to the main Form as if those three intervening "containers" weren't even there. Your code does the trick but it sure looks like a game of Blind Man's Bluff to me. Thank you very much for taking time to help me, Shamil. Steve Erbach Neenah, WI http://TheTownCrank.blogspot.com On 3/18/06, Shamil Salakhetdinov wrote: > Steve, > > Here is the code to call from subform: > > Dim ectl As Access.Control > Dim fsub As Access.SubForm > For Each ectl In Me.Parent.Controls > If ectl.ControlType = acSubform Then > Set fsub = ectl > If Len(fsub.SourceObject) > 0 Then > If Not fsub.Form Is Nothing Then > If fsub.Form Is Me.Form Then > MsgBox "My subform control name is " & fsub.Name, _ > vbInformation + vbOKOnly > End If > End If > End If > End If > Next ectl > > Be careful with calling this code from subform's Open or Load event, > especially in the case when on main form there are several subform controls > using the same form.... > > HTH, > Shamil > > ----- Original Message ----- > From: "Steve Erbach" > To: "Access Developers discussion and problem solving" > > Sent: Saturday, March 18, 2006 4:52 PM > Subject: [AccessD] Acquiring subform's subform object name > > > > Dear Group, > > > > I have a form, frmMainMenu, that contains a Tab Control. The 8 tabs > > in the Tab Control are generically named Tab1, Tab2, etc. > > > > Each of the Tabs has one Subform Control "embedded" in it; each > > Subform is also generically named: Subform1, Subform2, etc. The > > reason for this is that frmMainMenu is set up with another Subform > > Control "outside" the Tab Control. This subform acts like the > > vertical menu in an Access database window. Once a menu item is > > clicked, then all the tabs change, sometimes fewer tabs visible, > > sometimes more, depending on which vertical menu item is selected. > > > > Anyway my problem is this: > > > > Say that Tab3's subform control, Subform3, has the form frmCustomers > > as the subform's Source Object. From the code within frmCustomers I > > would like to be able to determine the name of it's subform control > > "container". > > > > Me.Parent.Name gives me the name of the "master" form, frmMainMenu. > > I've tried all sorts of things short of enumerating the collection of > > controls to simply find the name of the subform control that > > "contains" frmCustomers. > > > > Could you give me an idea? > > > > Regards, > > > > Steve Erbach From bchacc at san.rr.com Sun Mar 19 09:25:27 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Sun, 19 Mar 2006 07:25:27 -0800 Subject: [AccessD] MAny-To-May Message-ID: <441D77E7.4000805@san.rr.com> Dear List: This is a preventive maintenance application. There is a table of Jobs and a table of Equipment. Since one job can do many equipments and one equipment can be called out in many jobs there is a table that sits between them - tblJobsEquipment which has the PK from tblJobs and the PK from tblEquipment as FKs. The equipment table is relatively static. The job table changes all the time. On the form where jobs are created and maintained, the user selects the equipment from a combo box. The jobs for that equipment are then displayed in a sub-form. The problem comes when trying to create a new job. Since there's no PK yet for the job I get an error "cannot create record; join key (to the JobEquipment table) is not in the recordset. Indeed if I put a debug statement in the BeforeInsert event of the sub-form the PK of the Jobs table is still null. How does one work around this problem? MTIA Rocky -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From harkinsss at bellsouth.net Sun Mar 19 10:18:16 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Sun, 19 Mar 2006 11:18:16 -0500 Subject: [AccessD] MAny-To-May In-Reply-To: <441D77E7.4000805@san.rr.com> Message-ID: <000d01c64b70$bc740be0$ceb3d6d1@SUSANONE> Rocky, check the updateable query article. There's a rule in there about a one-to-many-to-one, or it may be many-to-one-to-many -- I don't remember. Susan H. Dear List: The problem comes when trying to create a new job. Since there's no PK yet for the job I get an error "cannot create record; join key (to the JobEquipment table) is not in the recordset. Indeed if I put a debug statement in the BeforeInsert event of the sub-form the PK of the Jobs table is still null. How does one work around this problem? From mwp.reid at qub.ac.uk Sun Mar 19 10:18:53 2006 From: mwp.reid at qub.ac.uk (Martin Reid) Date: Sun, 19 Mar 2006 16:18:53 -0000 Subject: [AccessD] MAny-To-May References: <441D77E7.4000805@san.rr.com> Message-ID: Rocky Would you not create the Job first and then the equipment required to do the job? Martin Martin WP Reid Training and Assessment Unit Riddle Hall Belfast tel: 02890 974477 ________________________________ From: accessd-bounces at databaseadvisors.com on behalf of Rocky Smolin - Beach Access Software Sent: Sun 19/03/2006 15:25 To: Access Developers discussion and problem solving Subject: [AccessD] MAny-To-May Dear List: This is a preventive maintenance application. There is a table of Jobs and a table of Equipment. Since one job can do many equipments and one equipment can be called out in many jobs there is a table that sits between them - tblJobsEquipment which has the PK from tblJobs and the PK from tblEquipment as FKs. The equipment table is relatively static. The job table changes all the time. On the form where jobs are created and maintained, the user selects the equipment from a combo box. The jobs for that equipment are then displayed in a sub-form. The problem comes when trying to create a new job. Since there's no PK yet for the job I get an error "cannot create record; join key (to the JobEquipment table) is not in the recordset. Indeed if I put a debug statement in the BeforeInsert event of the sub-form the PK of the Jobs table is still null. How does one work around this problem? MTIA Rocky -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Sun Mar 19 10:49:09 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Sun, 19 Mar 2006 19:49:09 +0300 Subject: [AccessD] MAny-To-May References: <441D77E7.4000805@san.rr.com> Message-ID: <002901c64b75$15176770$6501a8c0@Nant> > How does one work around this problem? Rocky, This works in MS Access 2003: - create join query of relation table and Jobs - use this query as the recordsource of subform - use BOTH relation table's and job table's JobId field in this subform; - make this subform a datasheet form (not necessary - just to better see test results); - open main form in normal view; - enter new job information in subform's row and save it - watch how new autonumber Ids are assigned to relation table's row and to new job row. You can now hide autonumber IDs. Shamil ----- Original Message ----- From: "Rocky Smolin - Beach Access Software" To: "Access Developers discussion and problem solving" Sent: Sunday, March 19, 2006 6:25 PM Subject: [AccessD] MAny-To-May > Dear List: > > This is a preventive maintenance application. > > There is a table of Jobs and a table of Equipment. Since one job can do > many equipments and one equipment can be called out in many jobs there > is a table that sits between them - tblJobsEquipment which has the PK > from tblJobs and the PK from tblEquipment as FKs. > > The equipment table is relatively static. The job table changes all the > time. > > On the form where jobs are created and maintained, the user selects the > equipment from a combo box. The jobs for that equipment are then > displayed in a sub-form. > > The problem comes when trying to create a new job. Since there's no PK > yet for the job I get an error "cannot create record; join key (to the > JobEquipment table) is not in the recordset. > > Indeed if I put a debug statement in the BeforeInsert event of the > sub-form the PK of the Jobs table is still null. > > How does one work around this problem? > > MTIA > > Rocky > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Sun Mar 19 10:54:52 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Sun, 19 Mar 2006 11:54:52 -0500 Subject: [AccessD] MAny-To-May In-Reply-To: <441D77E7.4000805@san.rr.com> Message-ID: <00ac01c64b75$d84bf030$647aa8c0@ColbyM6805> Make them create the job first. Make the job the main form and the equipment a subform child to jobs. Then set the equipment subform locked while on the new record of the job form. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Sunday, March 19, 2006 10:25 AM To: Access Developers discussion and problem solving Subject: [AccessD] MAny-To-May Dear List: This is a preventive maintenance application. There is a table of Jobs and a table of Equipment. Since one job can do many equipments and one equipment can be called out in many jobs there is a table that sits between them - tblJobsEquipment which has the PK from tblJobs and the PK from tblEquipment as FKs. The equipment table is relatively static. The job table changes all the time. On the form where jobs are created and maintained, the user selects the equipment from a combo box. The jobs for that equipment are then displayed in a sub-form. The problem comes when trying to create a new job. Since there's no PK yet for the job I get an error "cannot create record; join key (to the JobEquipment table) is not in the recordset. Indeed if I put a debug statement in the BeforeInsert event of the sub-form the PK of the Jobs table is still null. How does one work around this problem? MTIA Rocky -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From harkinsss at bellsouth.net Sun Mar 19 11:20:29 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Sun, 19 Mar 2006 12:20:29 -0500 Subject: [AccessD] report sorting problem Message-ID: <000001c64b79$6c7ac8f0$ceb3d6d1@SUSANONE> I have a grouped report based on the following query: SELECT tblTopics.Title, tblTopics.DateDue, tblPublishersContacts.Contact, tblPartners.LastName, tblTopics.EstimatedFee, =IIf(IsNull([LastName]),[EstimatedFee],[EstimatedFee]/2) As SplitFee FROM tblPartners INNER JOIN (tblPublishersContacts INNER JOIN tblTopics ON tblPublishersContacts.PublisherContactID = tblTopics.PublisherContactID) ON tblPartners.PartnerID = tblTopics.PartnerID WHERE (((tblTopics.DateDue) Is Not Null) AND ((tblTopics.DateSubmitted) Is Null)) ORDER BY tblTopics.DateDue UNION SELECT Title, DateDue, Contact, LastName, EstimatedFee, 0 FROM tblScheduledItems ORDER BY tblTopics.DateDue; The report is grouped on the DateDue field and I use the report's grouping properties to group by the week. When I run the query, it sorts by the DateDue values, but the grouped report loses that sort. The records group properly, I just can't get them to sort properly within the group. Any help? Susan H. From Gustav at cactus.dk Sun Mar 19 12:05:03 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Sun, 19 Mar 2006 19:05:03 +0100 Subject: [AccessD] report sorting problem Message-ID: Hi Susan Remove the sorting from the query. Add (move from the query) any sorting to the report. /gustav >>> harkinsss at bellsouth.net 19-03-2006 18:20:29 >>> I have a grouped report based on the following query: SELECT tblTopics.Title, tblTopics.DateDue, tblPublishersContacts.Contact, tblPartners.LastName, tblTopics.EstimatedFee, =IIf(IsNull([LastName]),[EstimatedFee],[EstimatedFee]/2) As SplitFee FROM tblPartners INNER JOIN (tblPublishersContacts INNER JOIN tblTopics ON tblPublishersContacts.PublisherContactID = tblTopics.PublisherContactID) ON tblPartners.PartnerID = tblTopics.PartnerID WHERE (((tblTopics.DateDue) Is Not Null) AND ((tblTopics.DateSubmitted) Is Null)) ORDER BY tblTopics.DateDue UNION SELECT Title, DateDue, Contact, LastName, EstimatedFee, 0 FROM tblScheduledItems ORDER BY tblTopics.DateDue; The report is grouped on the DateDue field and I use the report's grouping properties to group by the week. When I run the query, it sorts by the DateDue values, but the grouped report loses that sort. The records group properly, I just can't get them to sort properly within the group. Any help? Susan H. From harkinsss at bellsouth.net Sun Mar 19 12:27:08 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Sun, 19 Mar 2006 13:27:08 -0500 Subject: [AccessD] report sorting problem In-Reply-To: Message-ID: <000001c64b82$bbceed10$ceb3d6d1@SUSANONE> Hmmmmmm... Tried it and that alone didn't work. I added a second group on DateDue and that did it -- thanks Gustav. Susan H. Hi Susan Remove the sorting from the query. Add (move from the query) any sorting to the report. From tewald at wowway.com Sun Mar 19 12:50:33 2006 From: tewald at wowway.com (Thomas F. Ewald) Date: Sun, 19 Mar 2006 13:50:33 -0500 Subject: [AccessD] Converting from Excel to Access In-Reply-To: Message-ID: <000b01c64b86$00d2e580$6401a8c0@64bit> No, I mean taking a complex workbook, which should have been in Access in the first place, and recreating it as an Access database, complete with relationships, forms, reports, etc. Of course this depends on how it's been used and will be used; I was looking for a generic list of things to watch out for. Data types would be on the list, I would expect. Thanks, Tom Ewald Date: Sat, 18 Mar 2006 14:33:44 -0500 From: "Susan Harkins" Subject: Re: [AccessD] Converting from Excel to Access To: "'Access Developers discussion and problem solving'" Message-ID: <000001c64ac2$df5fb4a0$92b3d6d1 at SUSANONE> Content-Type: text/plain; charset="us-ascii" By convert, do you mean import? The biggest gotcha I've found when importing Excel data into an Access database is data type problems. Susan H. Does anyone have a list of items to watch out for when converting a database from Excel (multiple worksheets) to Access? I can do it all right, but a checklist, some instructions, some hints, etc., could certainly be helpful. -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.1.385 / Virus Database: 268.2.5/284 - Release Date: 3/17/2006 From bchacc at san.rr.com Sun Mar 19 12:57:04 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Sun, 19 Mar 2006 10:57:04 -0800 Subject: [AccessD] MAny-To-May In-Reply-To: References: <441D77E7.4000805@san.rr.com> Message-ID: <441DA980.5000701@san.rr.com> Martin: I actually had it that way - job in the header, equipment in the sub-form. But we had to change the way the jobs are created because of the way the job is actually looked at by users. You pick the equipment first now and see the list of jobs for that piece of equipment in the sub-form. Rocky Martin Reid wrote: > Rocky > > Would you not create the Job first and then the equipment required to do the job? > > Martin > > Martin WP Reid > Training and Assessment Unit > Riddle Hall > Belfast > > tel: 02890 974477 > > > ________________________________ > > From: accessd-bounces at databaseadvisors.com on behalf of Rocky Smolin - Beach Access Software > Sent: Sun 19/03/2006 15:25 > To: Access Developers discussion and problem solving > Subject: [AccessD] MAny-To-May > > > > Dear List: > > This is a preventive maintenance application. > > There is a table of Jobs and a table of Equipment. Since one job can do > many equipments and one equipment can be called out in many jobs there > is a table that sits between them - tblJobsEquipment which has the PK > from tblJobs and the PK from tblEquipment as FKs. > > The equipment table is relatively static. The job table changes all the > time. > > On the form where jobs are created and maintained, the user selects the > equipment from a combo box. The jobs for that equipment are then > displayed in a sub-form. > > The problem comes when trying to create a new job. Since there's no PK > yet for the job I get an error "cannot create record; join key (to the > JobEquipment table) is not in the recordset. > > Indeed if I put a debug statement in the BeforeInsert event of the > sub-form the PK of the Jobs table is still null. > > How does one work around this problem? > > MTIA > > Rocky > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From bchacc at san.rr.com Sun Mar 19 12:58:32 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Sun, 19 Mar 2006 10:58:32 -0800 Subject: [AccessD] MAny-To-May In-Reply-To: <00ac01c64b75$d84bf030$647aa8c0@ColbyM6805> References: <00ac01c64b75$d84bf030$647aa8c0@ColbyM6805> Message-ID: <441DA9D8.7000004@san.rr.com> John: Unfortunately, I had it that way but the the users actually look at it the other way - they want to select a piece of equipment and then see all the jobs for that piece. So I have to change the job form. Rocky John Colby wrote: > Make them create the job first. Make the job the main form and the > equipment a subform child to jobs. Then set the equipment subform locked > while on the new record of the job form. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - > Beach Access Software > Sent: Sunday, March 19, 2006 10:25 AM > To: Access Developers discussion and problem solving > Subject: [AccessD] MAny-To-May > > Dear List: > > This is a preventive maintenance application. > > There is a table of Jobs and a table of Equipment. Since one job can do many > equipments and one equipment can be called out in many jobs there is a table > that sits between them - tblJobsEquipment which has the PK from tblJobs and > the PK from tblEquipment as FKs. > > The equipment table is relatively static. The job table changes all the > time. > > On the form where jobs are created and maintained, the user selects the > equipment from a combo box. The jobs for that equipment are then displayed > in a sub-form. > > The problem comes when trying to create a new job. Since there's no PK yet > for the job I get an error "cannot create record; join key (to the > JobEquipment table) is not in the recordset. > > Indeed if I put a debug statement in the BeforeInsert event of the sub-form > the PK of the Jobs table is still null. > > How does one work around this problem? > > MTIA > > Rocky > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From bchacc at san.rr.com Sun Mar 19 13:28:09 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Sun, 19 Mar 2006 11:28:09 -0800 Subject: [AccessD] MAny-To-May In-Reply-To: <002901c64b75$15176770$6501a8c0@Nant> References: <441D77E7.4000805@san.rr.com> <002901c64b75$15176770$6501a8c0@Nant> Message-ID: <441DB0C9.60402@san.rr.com> Shamil: Beautiful! I had the join query already set up as the record source of the subform. All I needed to do was to drop the FK of the relation table into the grid, add it as an invisible field on the subform (not sure if that was really necessary) and viola! it worked. But it probably would have taken me a month to figure it out. Thank you. I think I'll take the rest of the day off now. With best regards, Rocky Shamil Salakhetdinov wrote: >> How does one work around this problem? >> > Rocky, > > This works in MS Access 2003: > > - create join query of relation table and Jobs > - use this query as the recordsource of subform > - use BOTH relation table's and job table's JobId field in this subform; > - make this subform a datasheet form (not necessary - just to better see > test results); > - open main form in normal view; > - enter new job information in subform's row and save it > - watch how new autonumber Ids are assigned to relation table's row and to > new job row. > > You can now hide autonumber IDs. > > Shamil > > ----- Original Message ----- > From: "Rocky Smolin - Beach Access Software" > To: "Access Developers discussion and problem solving" > > Sent: Sunday, March 19, 2006 6:25 PM > Subject: [AccessD] MAny-To-May > > > >> Dear List: >> >> This is a preventive maintenance application. >> >> There is a table of Jobs and a table of Equipment. Since one job can do >> many equipments and one equipment can be called out in many jobs there >> is a table that sits between them - tblJobsEquipment which has the PK >> from tblJobs and the PK from tblEquipment as FKs. >> >> The equipment table is relatively static. The job table changes all the >> time. >> >> On the form where jobs are created and maintained, the user selects the >> equipment from a combo box. The jobs for that equipment are then >> displayed in a sub-form. >> >> The problem comes when trying to create a new job. Since there's no PK >> yet for the job I get an error "cannot create record; join key (to the >> JobEquipment table) is not in the recordset. >> >> Indeed if I put a debug statement in the BeforeInsert event of the >> sub-form the PK of the Jobs table is still null. >> >> How does one work around this problem? >> >> MTIA >> >> Rocky >> >> -- >> Rocky Smolin >> Beach Access Software >> 858-259-4334 >> www.e-z-mrp.com >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From shamil at users.mns.ru Sun Mar 19 14:48:18 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Sun, 19 Mar 2006 23:48:18 +0300 Subject: [AccessD] MAny-To-May References: <441D77E7.4000805@san.rr.com> <002901c64b75$15176770$6501a8c0@Nant> <441DB0C9.60402@san.rr.com> Message-ID: <002501c64b96$76ac9fc0$6501a8c0@Nant> Rocky, This is MS Access, which does this trick. Good feature, thanks MS Access developers team! I remember when "young chicken" programmer/researcher I read an article about updatable joins and how to make a real DBMS supporting them(not easy stuff in a generic case) - just 20 years after I found that feature implemented in MS Access :) But be careful if you have any plans to upsize your app to MS SQL or other backend DBs - this trick/feature may stop working. And then the usual/standard way of first creating Job record and then using it in subform to define the link with Equipment record. I do it usually using popup form, which can be activated by double clicking on a combo-box of subform (it would be Job combobox in your case) and when the new data entered in the popup form and this form is closed then a message/call is done to subform to requery combo-box tho have new value(s) in it. > Thank you. My pleasure! > I think I'll take the rest of the day off now. Yes, that's a weekend - time to go swimming I guess there in California :) And I will go skiing tomorrow here - we have got some snow fall today - nice spring time weather, still good for everyday skiing! :) Shamil ----- Original Message ----- From: "Rocky Smolin - Beach Access Software" To: "Access Developers discussion and problem solving" Sent: Sunday, March 19, 2006 10:28 PM Subject: Re: [AccessD] MAny-To-May > Shamil: > > Beautiful! I had the join query already set up as the record source of > the subform. All I needed to do was to drop the FK of the relation > table into the grid, add it as an invisible field on the subform (not > sure if that was really necessary) and viola! it worked. But it > probably would have taken me a month to figure it out. > > Thank you. I think I'll take the rest of the day off now. > > > With best regards, > > Rocky > > > Shamil Salakhetdinov wrote: >>> How does one work around this problem? >>> >> Rocky, >> >> This works in MS Access 2003: >> >> - create join query of relation table and Jobs >> - use this query as the recordsource of subform >> - use BOTH relation table's and job table's JobId field in this subform; >> - make this subform a datasheet form (not necessary - just to better see >> test results); >> - open main form in normal view; >> - enter new job information in subform's row and save it >> - watch how new autonumber Ids are assigned to relation table's row and >> to >> new job row. >> >> You can now hide autonumber IDs. >> >> Shamil >> <<< tail skipped>>> From darrend at nimble.com.au Sun Mar 19 15:52:29 2006 From: darrend at nimble.com.au (Darren DICK) Date: Mon, 20 Mar 2006 08:52:29 +1100 Subject: [AccessD] MAny-To-May In-Reply-To: <441D77E7.4000805@san.rr.com> Message-ID: <20060319215253.GCUG24931.omta02sl.mx.bigpond.com@DENZILLAP> Hi Rocky General Rule of thumb (Biologically as well) Can't have kids without parents Get 'em to create 'the job' first then allow then to add/remove Equipment etc Maybe even 'disable' the equipment list until they have created a job HTH See ya Darren -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Monday, 20 March 2006 2:25 AM To: Access Developers discussion and problem solving Subject: [AccessD] MAny-To-May Dear List: This is a preventive maintenance application. There is a table of Jobs and a table of Equipment. Since one job can do many equipments and one equipment can be called out in many jobs there is a table that sits between them - tblJobsEquipment which has the PK from tblJobs and the PK from tblEquipment as FKs. The equipment table is relatively static. The job table changes all the time. On the form where jobs are created and maintained, the user selects the equipment from a combo box. The jobs for that equipment are then displayed in a sub-form. The problem comes when trying to create a new job. Since there's no PK yet for the job I get an error "cannot create record; join key (to the JobEquipment table) is not in the recordset. Indeed if I put a debug statement in the BeforeInsert event of the sub-form the PK of the Jobs table is still null. How does one work around this problem? MTIA Rocky -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Mon Mar 20 00:42:25 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Mon, 20 Mar 2006 01:42:25 -0500 Subject: [AccessD] Too many messages in the que Message-ID: <001a01c64be9$7429d6c0$647aa8c0@ColbyM6805> If we have a list member with an email of bill_s at web.de.. You have too many messages on the server. Someone is attempting to sign up on my web site and I am getting a delivery failure notification for this individual when I try to send him a key for his signup. John W. Colby www.ColbyConsulting.com From bheid at appdevgrp.com Mon Mar 20 06:38:31 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Mon, 20 Mar 2006 07:38:31 -0500 Subject: [AccessD] [SPAM SUSPECT] Re: Single vs. double issue... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D6B526@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D35120@ADGSERVER> Everyone, thanks for all of the information posted. John, They are not storing integers, they just happened to be using one in the example. I have changed the field to a double. Thanks again, Bobby From shamil at users.mns.ru Mon Mar 20 08:04:45 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Mon, 20 Mar 2006 17:04:45 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant><004601c64932$45f25660$6501a8c0@Nant> <000801c649ea$ef906370$6501a8c0@Nant> Message-ID: <000a01c64c27$65ddfb80$6501a8c0@Nant> Hi All, New version of the subject test released at http://smsconsulting.spb.ru/download/tests/a2dds.htm Previous one didn't work well with Customers table/form because of some "dirty" data rows in Northwind sample database. Problem fixed by workarounding these "dirty" rows' data values. I did also add RSS 1.0 feed at http://smsconsulting.spb.ru/download/tests/a2dds_rss10.xml (Code to generate this feed is in the sample database.) Test application can be executed in background as I'm doing now while writing this message. The roadmap of this test is to make it more advanced/test more features as well as make its installation, running and statistics reporting automated based on RSS/Atom and other technologies and standards... Thank you in advance for testing! Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Friday, March 17, 2006 8:47 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > New version ob subject tests is available at > http://smsconsulting.spb.ru/download/tests/a2dds.htm > Currently there is a weird problem when running in "usual binding mode" > with > MS Access backend and no any data updates - GPF > http://smsconsulting.spb.ru/download/tests/gpf.jpg. > > It would be very useful if somebody approved/disapproved this problem by > running the tests on their PC. > > Thank you. > > Shamil > <<< tail skipped >>> From Jim.Hale at FleetPride.com Mon Mar 20 09:21:53 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Mon, 20 Mar 2006 09:21:53 -0600 Subject: [AccessD] Converting from Excel to Access Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDAD7@corp-es01.fleetpride.com> Just some quick thoughts. If you are importing from an Excel table with sums be careful Excel doesn't suck in the totals as a separate garbage record. Generally I import the unnormalized tables without keys into Access first before creating all the required normalized tables with indexes and keys from inside Access. Importing the data first allows me to quickly determine if there are any issues with the data- nulls, data conversion problems, etc. If you are importing ranges make sure the ranges include all the data. You would be surprised how often this turns out to not be the case. Jim Hale -----Original Message----- From: Thomas F. Ewald [mailto:tewald at wowway.com] Sent: Sunday, March 19, 2006 12:51 PM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Converting from Excel to Access No, I mean taking a complex workbook, which should have been in Access in the first place, and recreating it as an Access database, complete with relationships, forms, reports, etc. Of course this depends on how it's been used and will be used; I was looking for a generic list of things to watch out for. Data types would be on the list, I would expect. Thanks, Tom Ewald Date: Sat, 18 Mar 2006 14:33:44 -0500 From: "Susan Harkins" Subject: Re: [AccessD] Converting from Excel to Access To: "'Access Developers discussion and problem solving'" Message-ID: <000001c64ac2$df5fb4a0$92b3d6d1 at SUSANONE> Content-Type: text/plain; charset="us-ascii" By convert, do you mean import? The biggest gotcha I've found when importing Excel data into an Access database is data type problems. Susan H. Does anyone have a list of items to watch out for when converting a database from Excel (multiple worksheets) to Access? I can do it all right, but a checklist, some instructions, some hints, etc., could certainly be helpful. -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.1.385 / Virus Database: 268.2.5/284 - Release Date: 3/17/2006 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From Jim.Hale at FleetPride.com Mon Mar 20 09:53:09 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Mon, 20 Mar 2006 09:53:09 -0600 Subject: [AccessD] Manipulating Excel Cells Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDAD8@corp-es01.fleetpride.com> look at the cell function in Excel (which you can manipulate through code) ex the formula =cell("col",D1) returns 4; =cell("row",D1) returns 1 Jim Hale -----Original Message----- From: John Colby [mailto:jwcolby at colbyconsulting.com] Sent: Wednesday, February 01, 2006 9:51 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Manipulating Excel Cells I'm baaaack. ;-) Here's the deal. I am working with a spreadsheet that has columns of systems and rows of documents. Therefore each cell represents a system-document. BTW, this was a "source" for me to build a pair of tables - tblSystem and tblDocument. I then added a field to tblDocument called SpreadsheetRow and a field to tblSystem called SpreadsheetColumn. We are tracking the receipt of these documents. The client now wants to see, back in his original spreadsheet, the "status" of a given system document using colors to express the status - white = not assigned, red = not received, yellow = partial receipt, green = received. So... I have to go "poke colors" out into the spreadsheet. I have discovered the "area" property which has a color attribute. What I need now is a translation from the column LETTERS to a column number since for some bizarre reason the columns have letter names but cells are referenced by column numbers. "Brain damaged children" as Bill Cosby would say. Does anyone have code for manipulating cells by cell(intRowNumbers, strColNames)? John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From Jim.Hale at FleetPride.com Mon Mar 20 10:14:54 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Mon, 20 Mar 2006 10:14:54 -0600 Subject: [AccessD] Manipulating Excel Cells Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDADA@corp-es01.fleetpride.com> This code was posted by Stuart McLachlan on 2/1. Is this what you were looking for? Jim Hale functions to change column numbers to name and vice versa Function ColNumToName(ColNum As Long) As String If ColNum < 27 Then ColNumToName = Chr$(ColNum + 64) Else ColNumToName = _ Chr$(Int((ColNum - 1) \ 26) + 64) _ + Chr$((ColNum - 1) Mod 26 + 65) End If End Function Function ColNameToNum(ColName As String) As Long If Len(ColName) = 1 Then ColNameToNum = Asc(UCase$(ColName)) - 64 Else ColNameToNum = 26 * (Asc(UCase$(Left$(ColName, 1))) _ - 64) + Asc(UCase$(Right$(ColName, 1))) - 64 End If End Function -----Original Message----- From: John Colby [mailto:jwcolby at colbyconsulting.com] Sent: Wednesday, February 01, 2006 9:51 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Manipulating Excel Cells I'm baaaack. ;-) Here's the deal. I am working with a spreadsheet that has columns of systems and rows of documents. Therefore each cell represents a system-document. BTW, this was a "source" for me to build a pair of tables - tblSystem and tblDocument. I then added a field to tblDocument called SpreadsheetRow and a field to tblSystem called SpreadsheetColumn. We are tracking the receipt of these documents. The client now wants to see, back in his original spreadsheet, the "status" of a given system document using colors to express the status - white = not assigned, red = not received, yellow = partial receipt, green = received. So... I have to go "poke colors" out into the spreadsheet. I have discovered the "area" property which has a color attribute. What I need now is a translation from the column LETTERS to a column number since for some bizarre reason the columns have letter names but cells are referenced by column numbers. "Brain damaged children" as Bill Cosby would say. Does anyone have code for manipulating cells by cell(intRowNumbers, strColNames)? John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From bheygood at abestsystems.com Mon Mar 20 11:26:11 2006 From: bheygood at abestsystems.com (Bob Heygood) Date: Mon, 20 Mar 2006 09:26:11 -0800 Subject: [AccessD] numbers in DLookup In-Reply-To: <001a01c64be9$7429d6c0$647aa8c0@ColbyM6805> Message-ID: Hello to the list! I am trying to use a DLookup function in some code. It uses two string variable values for the Expr and the Domain arguments. And a third string variable for the part of the Where clause. This works fine until the value of the Expr string contains digits anywhere but at the end of the string. Hard to believe, but when I remove the records from the table from which I derive the string, works fine. But if I leave in those records that contain a one or more digits except at the end, it give the error message: Syntax error(missing operator) in query expression '2004TotalTurnoverED207'. Sure enough, 2004TotalTurnoverED207 is the correct value. Other values such as TotalHours, TotalMan201 and AveUnits45 all work fine in the DLookup as values for the Expr, just not when the digits occur anywhere but at the end of the string. Any help would prevent further head banging. TIA bob From cfoust at infostatsystems.com Mon Mar 20 11:27:05 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Mon, 20 Mar 2006 09:27:05 -0800 Subject: [AccessD] ADO and ADO.NET Message-ID: Nope, ADO.Net began with 2003. ADO.Net is a different language with a definite .Net tilt to it. If you're going to interact with Visual Studio, learn ADO.Net. If you're going to play just in Access, you might as well learn DAO. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Thomas F. Ewald Sent: Saturday, March 18, 2006 11:00 AM To: accessd at databaseadvisors.com Subject: [AccessD] ADO and ADO.NET In using Access XP, how much does it matter if you use ADO or ADO.NET? I believe that ADO.NET began with XP; please let me know if I am inaccurate with that belief. If I am correct, is there much to gain by studying ADO.NET? I'm still working on learning ADO (never did learn DAO very well, I have to admit), and I'm trying to put my study time to good use. TIA, Tom Ewald -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.1.385 / Virus Database: 268.2.5/284 - Release Date: 3/17/2006 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Mon Mar 20 11:33:32 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Mon, 20 Mar 2006 09:33:32 -0800 Subject: [AccessD] Acquiring subform's subform object name Message-ID: The sourceobject is a pointer to an object viewed in the control. Tab controls aren't containers in the same sense as are forms and subforms so they always get ignored. How you acquire the name depends on where you do it from. The subform itself always knows who it is, but the parent doesn't need to know as long as the sourceobject is set, and it doesn't necessarily have to be set to the same sourceobject all the time. From the parent form you should always be able to use Me.subformcontrol.Form.name to get the name of the subform object itself, once you know that a sourceobject exists. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Erbach Sent: Saturday, March 18, 2006 3:25 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Acquiring subform's subform object name Shamil, Interesting. When I was experimenting with this I was flabbergasted that a subform control's SourceObject could not directly tell the name of its subform control. In my case the Me.Parent.Name skipped right past the Subform, the Page, and the Tab controls to the main Form as if those three intervening "containers" weren't even there. Your code does the trick but it sure looks like a game of Blind Man's Bluff to me. Thank you very much for taking time to help me, Shamil. Steve Erbach Neenah, WI http://TheTownCrank.blogspot.com On 3/18/06, Shamil Salakhetdinov wrote: > Steve, > > Here is the code to call from subform: > > Dim ectl As Access.Control > Dim fsub As Access.SubForm > For Each ectl In Me.Parent.Controls > If ectl.ControlType = acSubform Then > Set fsub = ectl > If Len(fsub.SourceObject) > 0 Then > If Not fsub.Form Is Nothing Then > If fsub.Form Is Me.Form Then > MsgBox "My subform control name is " & fsub.Name, _ > vbInformation + vbOKOnly > End If > End If > End If > End If > Next ectl > > Be careful with calling this code from subform's Open or Load event, > especially in the case when on main form there are several subform > controls using the same form.... > > HTH, > Shamil > > ----- Original Message ----- > From: "Steve Erbach" > To: "Access Developers discussion and problem solving" > > Sent: Saturday, March 18, 2006 4:52 PM > Subject: [AccessD] Acquiring subform's subform object name > > > > Dear Group, > > > > I have a form, frmMainMenu, that contains a Tab Control. The 8 tabs > > in the Tab Control are generically named Tab1, Tab2, etc. > > > > Each of the Tabs has one Subform Control "embedded" in it; each > > Subform is also generically named: Subform1, Subform2, etc. The > > reason for this is that frmMainMenu is set up with another Subform > > Control "outside" the Tab Control. This subform acts like the > > vertical menu in an Access database window. Once a menu item is > > clicked, then all the tabs change, sometimes fewer tabs visible, > > sometimes more, depending on which vertical menu item is selected. > > > > Anyway my problem is this: > > > > Say that Tab3's subform control, Subform3, has the form frmCustomers > > as the subform's Source Object. From the code within frmCustomers I > > would like to be able to determine the name of it's subform control > > "container". > > > > Me.Parent.Name gives me the name of the "master" form, frmMainMenu. > > I've tried all sorts of things short of enumerating the collection > > of controls to simply find the name of the subform control that > > "contains" frmCustomers. > > > > Could you give me an idea? > > > > Regards, > > > > Steve Erbach -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Mon Mar 20 11:38:47 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Mon, 20 Mar 2006 09:38:47 -0800 Subject: [AccessD] MAny-To-May Message-ID: Rocky, No matter how they look at it, that doesn't make a lot of sense when trying to create a new job. Obviously, you can't see a new job for the equipment because they haven't created it yet. If they insist on that arrangement, then you need a "New Job" button or something similar to do the necessary work in the background. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Sunday, March 19, 2006 10:57 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] MAny-To-May Martin: I actually had it that way - job in the header, equipment in the sub-form. But we had to change the way the jobs are created because of the way the job is actually looked at by users. You pick the equipment first now and see the list of jobs for that piece of equipment in the sub-form. Rocky Martin Reid wrote: > Rocky > > Would you not create the Job first and then the equipment required to do the job? > > Martin > > Martin WP Reid > Training and Assessment Unit > Riddle Hall > Belfast > > tel: 02890 974477 > > > ________________________________ > > From: accessd-bounces at databaseadvisors.com on behalf of Rocky Smolin - > Beach Access Software > Sent: Sun 19/03/2006 15:25 > To: Access Developers discussion and problem solving > Subject: [AccessD] MAny-To-May > > > > Dear List: > > This is a preventive maintenance application. > > There is a table of Jobs and a table of Equipment. Since one job can > do many equipments and one equipment can be called out in many jobs > there is a table that sits between them - tblJobsEquipment which has > the PK from tblJobs and the PK from tblEquipment as FKs. > > The equipment table is relatively static. The job table changes all > the time. > > On the form where jobs are created and maintained, the user selects > the equipment from a combo box. The jobs for that equipment are then > displayed in a sub-form. > > The problem comes when trying to create a new job. Since there's no > PK yet for the job I get an error "cannot create record; join key (to > the JobEquipment table) is not in the recordset. > > Indeed if I put a debug statement in the BeforeInsert event of the > sub-form the PK of the Jobs table is still null. > > How does one work around this problem? > > MTIA > > Rocky > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Mon Mar 20 11:41:51 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Mon, 20 Mar 2006 09:41:51 -0800 Subject: [AccessD] numbers in DLookup Message-ID: Put the value with numbers at the front in square brackets, same as you would for a name with a space in it, and see if that makes a difference. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bob Heygood Sent: Monday, March 20, 2006 9:26 AM To: Access Developers discussion and problem solving Subject: [AccessD] numbers in DLookup Hello to the list! I am trying to use a DLookup function in some code. It uses two string variable values for the Expr and the Domain arguments. And a third string variable for the part of the Where clause. This works fine until the value of the Expr string contains digits anywhere but at the end of the string. Hard to believe, but when I remove the records from the table from which I derive the string, works fine. But if I leave in those records that contain a one or more digits except at the end, it give the error message: Syntax error(missing operator) in query expression '2004TotalTurnoverED207'. Sure enough, 2004TotalTurnoverED207 is the correct value. Other values such as TotalHours, TotalMan201 and AveUnits45 all work fine in the DLookup as values for the Expr, just not when the digits occur anywhere but at the end of the string. Any help would prevent further head banging. TIA bob -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bchacc at san.rr.com Mon Mar 20 12:05:16 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Mon, 20 Mar 2006 10:05:16 -0800 Subject: [AccessD] Many-To-Many In-Reply-To: References: Message-ID: <441EEEDC.8070103@san.rr.com> You're right from the programmer's view. But from the user's view (according to the guy I'm designing this with - and since it's a preventive maintenance app and he's a preventive maintenance veteran, I have to go with his judgment) they select equipment and want to see a list of jobs associated with that piece. However, Shamil's elegant little trick solved the problem so I can go ahead and create the job in the subform and the keys all get resolved OK. Otherwise the "New Job" modal popup form seems to be the consensus. Rocky Charlotte Foust wrote: > Rocky, > > No matter how they look at it, that doesn't make a lot of sense when > trying to create a new job. Obviously, you can't see a new job for the > equipment because they haven't created it yet. If they insist on that > arrangement, then you need a "New Job" button or something similar to do > the necessary work in the background. > > > Charlotte Foust > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin > - Beach Access Software > Sent: Sunday, March 19, 2006 10:57 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] MAny-To-May > > Martin: > > I actually had it that way - job in the header, equipment in the > sub-form. But we had to change the way the jobs are created because of > the way the job is actually looked at by users. You pick the equipment > first now and see the list of jobs for that piece of equipment in the > sub-form. > > Rocky > > > Martin Reid wrote: > >> Rocky >> >> Would you not create the Job first and then the equipment required to >> > do the job? > >> >> Martin >> >> Martin WP Reid >> Training and Assessment Unit >> Riddle Hall >> Belfast >> >> tel: 02890 974477 >> >> >> ________________________________ >> >> From: accessd-bounces at databaseadvisors.com on behalf of Rocky Smolin - >> > > >> Beach Access Software >> Sent: Sun 19/03/2006 15:25 >> To: Access Developers discussion and problem solving >> Subject: [AccessD] MAny-To-May >> >> >> >> Dear List: >> >> This is a preventive maintenance application. >> >> There is a table of Jobs and a table of Equipment. Since one job can >> do many equipments and one equipment can be called out in many jobs >> there is a table that sits between them - tblJobsEquipment which has >> the PK from tblJobs and the PK from tblEquipment as FKs. >> >> The equipment table is relatively static. The job table changes all >> the time. >> >> On the form where jobs are created and maintained, the user selects >> the equipment from a combo box. The jobs for that equipment are then >> displayed in a sub-form. >> >> The problem comes when trying to create a new job. Since there's no >> PK yet for the job I get an error "cannot create record; join key (to >> the JobEquipment table) is not in the recordset. >> >> Indeed if I put a debug statement in the BeforeInsert event of the >> sub-form the PK of the Jobs table is still null. >> >> How does one work around this problem? >> >> MTIA >> >> Rocky >> >> -- >> Rocky Smolin >> Beach Access Software >> 858-259-4334 >> www.e-z-mrp.com >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> >> >> >> > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From KIsmert at TexasSystems.com Mon Mar 20 12:06:26 2006 From: KIsmert at TexasSystems.com (Ken Ismert) Date: Mon, 20 Mar 2006 12:06:26 -0600 Subject: [AccessD] report sorting problem Message-ID: Susan, Ditch the report's grouping properties. Use something like this in the query: Year([tblTopics].[DateDue]) * 100 + DatePart("ww",[tblTopics].[DateDue]) AS GroupSort You can then group by GroupSort, and still order your records by DateDue. I lost my patience with Access' report grouping properties a long time ago. -Ken -----Original Message----- From: Susan Harkins [mailto:harkinsss at bellsouth.net] Sent: Sunday, March 19, 2006 11:20 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] report sorting problem I have a grouped report based on the following query: SELECT tblTopics.Title, tblTopics.DateDue, tblPublishersContacts.Contact, tblPartners.LastName, tblTopics.EstimatedFee, =IIf(IsNull([LastName]),[EstimatedFee],[EstimatedFee]/2) As SplitFee FROM tblPartners INNER JOIN (tblPublishersContacts INNER JOIN tblTopics ON tblPublishersContacts.PublisherContactID = tblTopics.PublisherContactID) ON tblPartners.PartnerID = tblTopics.PartnerID WHERE (((tblTopics.DateDue) Is Not Null) AND ((tblTopics.DateSubmitted) Is Null)) ORDER BY tblTopics.DateDue UNION SELECT Title, DateDue, Contact, LastName, EstimatedFee, 0 FROM tblScheduledItems ORDER BY tblTopics.DateDue; The report is grouped on the DateDue field and I use the report's grouping properties to group by the week. When I run the query, it sorts by the DateDue values, but the grouped report loses that sort. The records group properly, I just can't get them to sort properly within the group. Any help? Susan H. From Gustav at cactus.dk Mon Mar 20 12:11:52 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Mon, 20 Mar 2006 19:11:52 +0100 Subject: [AccessD] Access XP forms bound to ADO recordsets Message-ID: Hi all If you have a few spare moments I could recommend to download and run this test. It's very easy to do - Shamil has prepared everything - you just need a copy of Nortwind.mdb for A2000. You should select a loop count beyond 2011 as Shamil experiences an error at that loop ... /gustav >>> shamil at users.mns.ru 20-03-2006 15:04:45 >>> Hi All, New version of the subject test released at http://smsconsulting.spb.ru/download/tests/a2dds.htm Previous one didn't work well with Customers table/form because of some "dirty" data rows in Northwind sample database. Problem fixed by workarounding these "dirty" rows' data values. I did also add RSS 1.0 feed at http://smsconsulting.spb.ru/download/tests/a2dds_rss10.xml (Code to generate this feed is in the sample database.) Test application can be executed in background as I'm doing now while writing this message. The roadmap of this test is to make it more advanced/test more features as well as make its installation, running and statistics reporting automated based on RSS/Atom and other technologies and standards... Thank you in advance for testing! Shamil From adtp at hotmail.com Mon Mar 20 12:41:22 2006 From: adtp at hotmail.com (A.D.TEJPAL) Date: Tue, 21 Mar 2006 00:11:22 +0530 Subject: [AccessD] MAny-To-May References: <441D77E7.4000805@san.rr.com> Message-ID: Rocky, My sample db named MedicalDiagnosis might be of interest to you. It is available at Rogers Access Library (other developers library). Link - http://www.rogersaccesslibrary.com/OtherLibraries.asp#Tejpal,A.D. The db demonstrates a user friendly, integrated interface for data entry, facilitating smooth population of junction table bridging the many to many relationship between diseases & symptoms. Best wishes, A.D.Tejpal --------------- ----- Original Message ----- From: Rocky Smolin - Beach Access Software To: Access Developers discussion and problem solving Sent: Sunday, March 19, 2006 20:55 Subject: [AccessD] MAny-To-May Dear List: This is a preventive maintenance application. There is a table of Jobs and a table of Equipment. Since one job can do many equipments and one equipment can be called out in many jobs there is a table that sits between them - tblJobsEquipment which has the PK from tblJobs and the PK from tblEquipment as FKs. The equipment table is relatively static. The job table changes all the time. On the form where jobs are created and maintained, the user selects the equipment from a combo box. The jobs for that equipment are then displayed in a sub-form. The problem comes when trying to create a new job. Since there's no PK yet for the job I get an error "cannot create record; join key (to the JobEquipment table) is not in the recordset. Indeed if I put a debug statement in the BeforeInsert event of the sub-form the PK of the Jobs table is still null. How does one work around this problem? MTIA Rocky From ewaldt at gdls.com Mon Mar 20 14:32:10 2006 From: ewaldt at gdls.com (ewaldt at gdls.com) Date: Mon, 20 Mar 2006 15:32:10 -0500 Subject: [AccessD] Combo Box Won't Find Record In-Reply-To: Message-ID: I've done this many times before with no problems. Create a simple combo box using the wizard. Tell it to select a record based on the combo box. Save it. Use the combo box to find a record. However, there is no effect whatsover on the rest of the form...no record is chosen. Anything to look for? I'm using Access XP. TIA, Tom Ewald This is an e-mail from General Dynamics Land Systems. It is for the intended recipient only and may contain confidential and privileged information. No one else may read, print, store, copy, forward or act in reliance on it or its attachments. If you are not the intended recipient, please return this message to the sender and delete the message and any attachments from your computer. Your cooperation is appreciated. From darrend at nimble.com.au Mon Mar 20 15:14:27 2006 From: darrend at nimble.com.au (Darren DICK) Date: Tue, 21 Mar 2006 08:14:27 +1100 Subject: [AccessD] Combo Box Won't Find Record In-Reply-To: Message-ID: <20060320211456.ZVFK19070.omta01ps.mx.bigpond.com@DENZILLAP> Hi Tom This is how I find a record using a combo on a form In the afterrupdate of the combo Dim intEditedRecord as integer intEditedRecord= Me.SomeComboOnYourForm Me.RecordsetClone.FindFirst "YourPK_ID=" & intEditedRecord Me.Bookmark = Me.RecordsetClone.Bookmark Or even skip the declarations... In the after update of the combo Me.RecordsetClone.FindFirst "YourPK_ID=" & Me.SomeComboOnYourForm Me.Bookmark = Me.RecordsetClone.Bookmark _______________________________ Hope this helps Darren ------------------------------ T: 0424 696 433 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of ewaldt at gdls.com Sent: Tuesday, 21 March 2006 7:32 AM To: accessd at databaseadvisors.com Subject: [AccessD] Combo Box Won't Find Record I've done this many times before with no problems. Create a simple combo box using the wizard. Tell it to select a record based on the combo box. Save it. Use the combo box to find a record. However, there is no effect whatsover on the rest of the form...no record is chosen. Anything to look for? I'm using Access XP. TIA, Tom Ewald This is an e-mail from General Dynamics Land Systems. It is for the intended recipient only and may contain confidential and privileged information. No one else may read, print, store, copy, forward or act in reliance on it or its attachments. If you are not the intended recipient, please return this message to the sender and delete the message and any attachments from your computer. Your cooperation is appreciated. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From garykjos at gmail.com Mon Mar 20 15:17:32 2006 From: garykjos at gmail.com (Gary Kjos) Date: Mon, 20 Mar 2006 15:17:32 -0600 Subject: [AccessD] Combo Box Won't Find Record In-Reply-To: References: Message-ID: Hi Tom, Normally the wizard will create a bit of code for you that fires on AFTER UPDATE event of the combo box control that has some code like this in it.... ' Find the record that matches the control. Dim RS As Object Set RS = Me.Recordset.Clone RS.FindFirst "[SR #] = " & Str(Me![cmbSRNbr]) Me.Bookmark = RS.Bookmark Did you perhaps have the wizard not active when you created the combo box?? Or perhaps you changed the name of the control after you created it so the code got "lost". GK On 3/20/06, ewaldt at gdls.com wrote: > I've done this many times before with no problems. Create a simple combo > box using the wizard. Tell it to select a record based on the combo box. > Save it. Use the combo box to find a record. However, there is no effect > whatsover on the rest of the form...no record is chosen. > > Anything to look for? I'm using Access XP. > > TIA, > > Tom Ewald > > > > This is an e-mail from General Dynamics Land Systems. It is for the intended recipient only and may contain confidential and privileged information. No one else may read, print, store, copy, forward or act in reliance on it or its attachments. If you are not the intended recipient, please return this message to the sender and delete the message and any attachments from your computer. Your cooperation is appreciated. > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Gary Kjos garykjos at gmail.com From bheygood at abestsystems.com Mon Mar 20 15:27:19 2006 From: bheygood at abestsystems.com (Bob Heygood) Date: Mon, 20 Mar 2006 13:27:19 -0800 Subject: [AccessD] Numbers in DLookup In-Reply-To: <001a01c64be9$7429d6c0$647aa8c0@ColbyM6805> Message-ID: Sure enough, the brackets make the difference. Works: varData = Nz(DLookup("[" & strFieldName & "]", strTableName, "CoID =" & intCoID)) No Work: varData = Nz(DLookup(strFieldName, strTableName, "CoID =" & intCoID)) Thanks Charlotte bob Put the value with numbers at the front in square brackets, same as you would for a name with a space in it, and see if that makes a difference. Charlotte Foust Hello to the list! I am trying to use a DLookup function in some code. It uses two string variable values for the Expr and the Domain arguments. And a third string variable for the part of the Where clause. This works fine until the value of the Expr string contains digits anywhere but at the end of the string. Hard to believe, but when I remove the records from the table from which I derive the string, works fine. But if I leave in those records that contain a one or more digits except at the end, it give the error message: Syntax error(missing operator) in query expression '2004TotalTurnoverED207'. Sure enough, 2004TotalTurnoverED207 is the correct value. Other values such as TotalHours, TotalMan201 and AveUnits45 all work fine in the DLookup as values for the Expr, just not when the digits occur anywhere but at the end of the string. Any help would prevent further head banging. TIA bob From cfoust at infostatsystems.com Mon Mar 20 15:50:21 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Mon, 20 Mar 2006 13:50:21 -0800 Subject: [AccessD] Numbers in DLookup Message-ID: Glad to help. That's the first thing to try when Access starts objecting to the name of an object. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bob Heygood Sent: Monday, March 20, 2006 1:27 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Numbers in DLookup Sure enough, the brackets make the difference. Works: varData = Nz(DLookup("[" & strFieldName & "]", strTableName, "CoID =" & intCoID)) No Work: varData = Nz(DLookup(strFieldName, strTableName, "CoID =" & intCoID)) Thanks Charlotte bob Put the value with numbers at the front in square brackets, same as you would for a name with a space in it, and see if that makes a difference. Charlotte Foust Hello to the list! I am trying to use a DLookup function in some code. It uses two string variable values for the Expr and the Domain arguments. And a third string variable for the part of the Where clause. This works fine until the value of the Expr string contains digits anywhere but at the end of the string. Hard to believe, but when I remove the records from the table from which I derive the string, works fine. But if I leave in those records that contain a one or more digits except at the end, it give the error message: Syntax error(missing operator) in query expression '2004TotalTurnoverED207'. Sure enough, 2004TotalTurnoverED207 is the correct value. Other values such as TotalHours, TotalMan201 and AveUnits45 all work fine in the DLookup as values for the Expr, just not when the digits occur anywhere but at the end of the string. Any help would prevent further head banging. TIA bob -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Tue Mar 21 06:41:13 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Tue, 21 Mar 2006 15:41:13 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: Message-ID: <000d01c64ce4$c2107230$6501a8c0@Nant> > You should select a loop count beyond 2011 as Shamil experiences an error > at that loop ... Thank yoy, Gustav, Yes the error happens on loop count = 2010 - 2012 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< ADODB Bound Forms Crash Test v.1.9.2 [20-MAR-06] Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 3011 - The Microsoft Jet database engine could not find the object ''. Make sure the object exists and that you spell its name and the path name correctly. Backend: MS Access Binding: ADODB Cycles to pass: 5000 Cycles passed: 2012 Total errors: 1 Forms opened: 10059 Start time: 20.03.2006 16:46:38 End time: 20.03.2006 19:55:32 Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 71988, Disposed = 71988 >>>>>>>>> When I'm then trying to close and to reopen database window without quitting MS Access I'm getting this weird message: <<< Microsoft Office Access was unable to create the Database window Please upgrade to a newer version of Microsoft Internet Explorer >>> System statistics do not show that some of the resource exhausted or something like that: <<< MS Access: 36MB Northwind mdb size: Start: ~4MB On error: ~67MB Total Paging File Size on all drives: 1536MB CPU usage: 4% PF Usage: 890 MB Totals: Handles: 14590 Threads 664 Processes: 57 Commit Change (K) Total 912084 Limit 2532840 Peak 990096 Physical Memory (K) Total 1048020 Available 163200 System Cache 352524 Kernel Memory Total 78276 Paged 59564 Nonpaged 18712 Test application HDD:: Total: 7.99GB Free 3.87GB System HDD: Total 31.2GB Free 4.41GB >>>> Strange, very strange. I did set breakpoint on error and I did check are there any hidden non-closed forms in the Forms collection or (occasionally) non closed databases in dbengine(0).Databases collection etc. - all seems to be clean.... Shamil ----- Original Message ----- From: "Gustav Brock" To: Sent: Monday, March 20, 2006 9:11 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi all > > If you have a few spare moments I could recommend to download and run this > test. It's very easy to do - Shamil has prepared everything - you just > need a copy of Nortwind.mdb for A2000. > You should select a loop count beyond 2011 as Shamil experiences an error > at that loop ... > > /gustav > <<< tail skipped >>> From bheid at appdevgrp.com Tue Mar 21 07:06:13 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Tue, 21 Mar 2006 08:06:13 -0500 Subject: [AccessD] ADO and ADO.NET In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D788D1@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D35131@ADGSERVER> Access 2003 has ADO.Net in it? Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Monday, March 20, 2006 12:27 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] ADO and ADO.NET Nope, ADO.Net began with 2003. ADO.Net is a different language with a definite .Net tilt to it. If you're going to interact with Visual Studio, learn ADO.Net. If you're going to play just in Access, you might as well learn DAO. Charlotte Foust From bheid at appdevgrp.com Tue Mar 21 07:10:29 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Tue, 21 Mar 2006 08:10:29 -0500 Subject: [AccessD] Export to Excel via VBA, Naming Cells In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D6B519@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D35132@ADGSERVER> Jim, Nice example. But I'd like to point out one thing, if I may. I think it is a better practice to exit a for loop with an Exit For statement instead of jumping out of the loop. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Friday, March 17, 2006 4:27 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Export to Excel via VBA, Naming Cells Maybe this will give you some ideas. Starting at the top of the range e5 it finds the last number in the column and places a sum formula underneath. Jim Hale Function test() Dim rng As Range, i As Integer, strAddressBottom As String, strAddressTop As String Set rng = Range("e5") strAddressTop = rng.Address For i = 1 To 25 If rng.Offset(i, 0).Value = "" Then strAddressBottom = rng.Offset(i - 1, 0).Cells.Address rng.Offset(i, 0).Formula = "=sum(" & strAddressTop & ":" & strAddressBottom & ")" GoTo The_End End If Next The_End: Set rng = Nothing End Function From shamil at users.mns.ru Tue Mar 21 07:35:02 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Tue, 21 Mar 2006 16:35:02 +0300 Subject: [AccessD] ADO and ADO.NET References: <916187228923D311A6FE00A0CC3FAA30D35131@ADGSERVER> Message-ID: <001c01c64cec$4e74ad20$6501a8c0@Nant> No, Bobby, it hasn't. Shamil ----- Original Message ----- From: "Bobby Heid" To: "'Access Developers discussion and problem solving'" Sent: Tuesday, March 21, 2006 4:06 PM Subject: Re: [AccessD] ADO and ADO.NET > Access 2003 has ADO.Net in it? > > Bobby > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust > Sent: Monday, March 20, 2006 12:27 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] ADO and ADO.NET > > > Nope, ADO.Net began with 2003. ADO.Net is a different language with a > definite .Net tilt to it. If you're going to interact with Visual > Studio, learn ADO.Net. If you're going to play just in Access, you > might as well learn DAO. > > > Charlotte Foust > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From Jim.Hale at FleetPride.com Tue Mar 21 09:00:59 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Tue, 21 Mar 2006 09:00:59 -0600 Subject: [AccessD] Export to Excel via VBA, Naming Cells Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDADD@corp-es01.fleetpride.com> Guilty as charged. I knew I would get called on it as soon as I hit the send button. I have already had a stern talking to myself. :-) Jim Hale -----Original Message----- From: Bobby Heid [mailto:bheid at appdevgrp.com] Sent: Tuesday, March 21, 2006 7:10 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Export to Excel via VBA, Naming Cells Jim, Nice example. But I'd like to point out one thing, if I may. I think it is a better practice to exit a for loop with an Exit For statement instead of jumping out of the loop. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Friday, March 17, 2006 4:27 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Export to Excel via VBA, Naming Cells Maybe this will give you some ideas. Starting at the top of the range e5 it finds the last number in the column and places a sum formula underneath. Jim Hale Function test() Dim rng As Range, i As Integer, strAddressBottom As String, strAddressTop As String Set rng = Range("e5") strAddressTop = rng.Address For i = 1 To 25 If rng.Offset(i, 0).Value = "" Then strAddressBottom = rng.Offset(i - 1, 0).Cells.Address rng.Offset(i, 0).Formula = "=sum(" & strAddressTop & ":" & strAddressBottom & ")" GoTo The_End End If Next The_End: Set rng = Nothing End Function -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From cfoust at infostatsystems.com Tue Mar 21 10:21:28 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Tue, 21 Mar 2006 08:21:28 -0800 Subject: [AccessD] ADO and ADO.NET Message-ID: No, just some support for using things built in it I believe. I would be a lot more enthusiastic about the future of Access if it did have ADO.Net in it. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Tuesday, March 21, 2006 5:06 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] ADO and ADO.NET Access 2003 has ADO.Net in it? Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Monday, March 20, 2006 12:27 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] ADO and ADO.NET Nope, ADO.Net began with 2003. ADO.Net is a different language with a definite .Net tilt to it. If you're going to interact with Visual Studio, learn ADO.Net. If you're going to play just in Access, you might as well learn DAO. Charlotte Foust -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From scapistrant at symphonyinfo.com Tue Mar 21 10:44:11 2006 From: scapistrant at symphonyinfo.com (Steve Capistrant) Date: Tue, 21 Mar 2006 10:44:11 -0600 Subject: [AccessD] 2003 over 64 bit Message-ID: <855499653F55AD4190B242717DF132BC10C53F@dewey.Symphony.local> Hi folks. I'm stuck, and have had no luck casting about the internet for an answer... Last week I had to upgrade my PC when the motherboard melted. The new one carries Access 2003 running over the Windows 64 bit version. Problem: Some of my old apps (built in Access 2000) are taking 20 minutes to load. Gives all appearances of hanging, with 100% RAM utilization during that time, but EVENTUALLY it swallows whatever big bite it was trying to take. Note that 2003 will open 2000 apps and edit them without forcing you to upgrade their format to 2003. The loading problem doesn't happen to all my mdbs. Seems to happen after a session where I make some coding changes. Other tidbits: ~ I've got all the nasty defaults disabled (autocorrect, auto name change, etc). ~ The old apps have DAO references (no ADO) ~ After any coding session, I compile and compact. Ideas? Steve Capistrant Symphony Information Services scapistrant at symphonyinfo.com 763-391-7400 www.symphonyinfo.com From bchacc at san.rr.com Tue Mar 21 11:17:56 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Tue, 21 Mar 2006 09:17:56 -0800 Subject: [AccessD] 2003 over 64 bit In-Reply-To: <855499653F55AD4190B242717DF132BC10C53F@dewey.Symphony.local> References: <855499653F55AD4190B242717DF132BC10C53F@dewey.Symphony.local> Message-ID: <44203544.3030601@san.rr.com> Steve: I'd try: 1. Decompile 2. Create a new db container in 2003 and import all the objects. Compile. Compact. Just a shot in the dark. Rocky Steve Capistrant wrote: > Hi folks. > I'm stuck, and have had no luck casting about the internet for an > answer... > Last week I had to upgrade my PC when the motherboard melted. The new > one carries Access 2003 running over the Windows 64 bit version. > > Problem: Some of my old apps (built in Access 2000) are taking 20 > minutes to load. Gives all appearances of hanging, with 100% RAM > utilization during that time, but EVENTUALLY it swallows whatever big > bite it was trying to take. Note that 2003 will open 2000 apps and edit > them without forcing you to upgrade their format to 2003. > > The loading problem doesn't happen to all my mdbs. Seems to happen > after a session where I make some coding changes. > > Other tidbits: > ~ I've got all the nasty defaults disabled (autocorrect, auto name > change, etc). > ~ The old apps have DAO references (no ADO) > ~ After any coding session, I compile and compact. > > Ideas? > > Steve Capistrant > Symphony Information Services > scapistrant at symphonyinfo.com > 763-391-7400 > www.symphonyinfo.com > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From darsant at gmail.com Tue Mar 21 11:32:42 2006 From: darsant at gmail.com (Josh McFarlane) Date: Tue, 21 Mar 2006 11:32:42 -0600 Subject: [AccessD] ADO and ADO.NET In-Reply-To: References: Message-ID: <53c8e05a0603210932l1e567ef4pf97d740840cbafed@mail.gmail.com> On 3/21/06, Charlotte Foust wrote: > No, just some support for using things built in it I believe. I would be > a lot more enthusiastic about the future of Access if it did have > ADO.Net in it. Isn't part of the positive aspect of Access the ease of deploying the application? I'd be horrified if I had to deal with .NET runtimes in order to get a simple Access application to work, however I haven't used ADO.Net yet. Standard ADO works for everything I need it to, and the rest I just use queries and wrappers for. -- Josh McFarlane "Peace cannot be kept by force. It can only be achieved by understanding." -Albert Einstein From erbachs at gmail.com Tue Mar 21 11:35:54 2006 From: erbachs at gmail.com (Steve Erbach) Date: Tue, 21 Mar 2006 11:35:54 -0600 Subject: [AccessD] Acquiring subform's subform object name In-Reply-To: References: Message-ID: <39cb22f30603210935i5790658ds7cbf4823ca5e4731@mail.gmail.com> Charlotte, ? From the parent form you should always be able to use > Me.subformcontrol.Form.name to get the name of the subform object > itself, once you know that a sourceobject exists. ? That's exactly what happens with my application. It's just that now I'd like to have a more generic way of determining which subform control contains the current subform. Looks like a variation of Shamil's technique is going to be it; that is, look at all the subforms that have the SourceObject property set and see if one of them has the form name of the current subform. Thanks, Charlotte. Steve Erbach http://TheTownCrank.blogspot.com On 3/20/06, Charlotte Foust wrote: > The sourceobject is a pointer to an object viewed in the control. Tab > controls aren't containers in the same sense as are forms and subforms > so they always get ignored. How you acquire the name depends on where > you do it from. The subform itself always knows who it is, but the > parent doesn't need to know as long as the sourceobject is set, and it > doesn't necessarily have to be set to the same sourceobject all the > time. From the parent form you should always be able to use > Me.subformcontrol.Form.name to get the name of the subform object > itself, once you know that a sourceobject exists. > > > Charlotte Foust > From Lambert.Heenan at AIG.com Tue Mar 21 11:39:27 2006 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Tue, 21 Mar 2006 11:39:27 -0600 Subject: [AccessD] 2003 over 64 bit Message-ID: <1D7828CDB8350747AFE9D69E0E90DA1F1EE09469@xlivmbx21.aig.com> Have you disabled subdatasheets? Another 'feature' that slows things down. See http://www.sicem.biz/personal/erny/msaccess http://www.sicem.biz/personal/erny/msaccess/TurnOffSubsheets http://www.computerbooksonline.com/tips/access7.asp Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Capistrant Sent: Tuesday, March 21, 2006 11:44 AM To: Access Developers discussion and problem solving Subject: [AccessD] 2003 over 64 bit Hi folks. I'm stuck, and have had no luck casting about the internet for an answer... Last week I had to upgrade my PC when the motherboard melted. The new one carries Access 2003 running over the Windows 64 bit version. Problem: Some of my old apps (built in Access 2000) are taking 20 minutes to load. Gives all appearances of hanging, with 100% RAM utilization during that time, but EVENTUALLY it swallows whatever big bite it was trying to take. Note that 2003 will open 2000 apps and edit them without forcing you to upgrade their format to 2003. The loading problem doesn't happen to all my mdbs. Seems to happen after a session where I make some coding changes. Other tidbits: ~ I've got all the nasty defaults disabled (autocorrect, auto name change, etc). ~ The old apps have DAO references (no ADO) ~ After any coding session, I compile and compact. Ideas? Steve Capistrant Symphony Information Services scapistrant at symphonyinfo.com 763-391-7400 www.symphonyinfo.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bheid at appdevgrp.com Tue Mar 21 12:13:11 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Tue, 21 Mar 2006 13:13:11 -0500 Subject: [AccessD] ADO and ADO.NET In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D789A5@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D3513C@ADGSERVER> Phew! I was wondering where I had been if that was in there and I did not know it. LOL. Thanks, Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Tuesday, March 21, 2006 8:35 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] ADO and ADO.NET No, Bobby, it hasn't. Shamil From shamil at users.mns.ru Tue Mar 21 14:17:06 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Tue, 21 Mar 2006 23:17:06 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant><004601c64932$45f25660$6501a8c0@Nant><000801c649ea$ef906370$6501a8c0@Nant> <000a01c64c27$65ddfb80$6501a8c0@Nant> Message-ID: <000e01c64d24$70070ef0$6501a8c0@Nant> Hi All, New version (1.9.3) of the subject test released at http://smsconsulting.spb.ru/download/tests/a2dds.htm It has now RSS 2.0 feed generator and it compacts sample datbase after every 500 iterations. Still can't get it running more than 2011 iterations. It doesn't work that well on MS Access XP as it runs on MS Access 2003 where it fails on 2011th iteration as I noted above. Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Monday, March 20, 2006 5:04 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > New version of the subject test released at > http://smsconsulting.spb.ru/download/tests/a2dds.htm > Previous one didn't work well with Customers table/form because of some > "dirty" data rows in Northwind sample database. Problem fixed by > workarounding these "dirty" rows' data values. > > I did also add RSS 1.0 feed at > http://smsconsulting.spb.ru/download/tests/a2dds_rss10.xml (Code to > generate > this feed is in the sample database.) > > Test application can be executed in background as I'm doing now while > writing this message. > The roadmap of this test is to make it more advanced/test more features as > well as make its installation, running and statistics reporting automated > based on RSS/Atom and other technologies and standards... > > Thank you in advance for testing! > > Shamil > <<< tail skipped >> From prodevmg at yahoo.com Tue Mar 21 14:34:25 2006 From: prodevmg at yahoo.com (Lonnie Johnson) Date: Tue, 21 Mar 2006 12:34:25 -0800 (PST) Subject: [AccessD] Active Directory Field List Message-ID: <20060321203425.80098.qmail@web33114.mail.mud.yahoo.com> I am wanting to use Active Directory to update the passwords in a security table I have. Does anyone know how I can get a field list? I can use the code below but it has certain fields. I don't know how to get the password field because I don't know the field name.' Dim oConnection1 As Object Dim oCommand1 As Object Set oConnection1 = CreateObject("ADODB.Connection") Set oCommand1 = CreateObject("ADODB.Command") ' Open the connection. oConnection1.Provider = "ADsDSOObject" ' This is the ADSI OLE-DB provider name oConnection1.Open "Active Directory Provider" ' Create a command object for this connection. Set oCommand1.ActiveConnection = oConnection1 ' Compose a search string. oCommand1.CommandText = "select name, displayname, userprincipalname, mailNickname, telephoneNumber from 'LDAP://kvckc' WHERE objectCategory='Person' AND objectClass='user' AND name='Lonnie Johnson'" ' Execute the query. Set rs = oCommand1.Execute '-------------------------------------- ' Navigate the record set '-------------------------------------- May God bless you beyond your imagination! Lonnie Johnson ProDev, Professional Development of MS Access Databases Visit me at ==> http://www.prodev.us --------------------------------- Relax. Yahoo! Mail virus scanning helps detect nasty viruses! From ewaldt at gdls.com Tue Mar 21 14:40:58 2006 From: ewaldt at gdls.com (ewaldt at gdls.com) Date: Tue, 21 Mar 2006 15:40:58 -0500 Subject: [AccessD] Combo Box Won't Find Record In-Reply-To: Message-ID: Well, I did find one problem. Actually, I had two combo boxes: One called the form with the desired record already up (obviously from another form), and the other was on the form itself. The second still won't work, but I found the problem with the first one: Somehow the "Data Entry" property was switched to "Yes". Duh. Strange, though, since I had never touched it, nor any properties close to it on the list. Oh, well. Access gremlins at work, I suppose. Thanks for your help. I can do without the second combo box, which still doesn't work. Thomas F. Ewald FCS Database Manager General Dynamics Land Systems (586) 276-1256 This is an e-mail from General Dynamics Land Systems. It is for the intended recipient only and may contain confidential and privileged information. No one else may read, print, store, copy, forward or act in reliance on it or its attachments. If you are not the intended recipient, please return this message to the sender and delete the message and any attachments from your computer. Your cooperation is appreciated. From DWUTKA at marlow.com Tue Mar 21 14:35:09 2006 From: DWUTKA at marlow.com (DWUTKA at marlow.com) Date: Tue, 21 Mar 2006 14:35:09 -0600 Subject: [AccessD] Active Directory Field List Message-ID: <17724746D360394AA3BFE5B8D40A9C1BD9CE@main2.marlow.com> You can't get the passwords of a user account from Active Directory, at least not this way. You have to 'crack' them. Passwords are not stored in an unencrypted format. When a user changes their password, NT creates a 'hash' that is an encrypted string of text which can only be recreated with their account, password and domain. There are utilities out there to crack NT account passwords, the most common would be L0phtCrack (spelled with a zero after the L) Drew -----Original Message----- From: Lonnie Johnson [mailto:prodevmg at yahoo.com] Sent: Tuesday, March 21, 2006 2:34 PM To: AccessD solving' Subject: [AccessD] Active Directory Field List I am wanting to use Active Directory to update the passwords in a security table I have. Does anyone know how I can get a field list? I can use the code below but it has certain fields. I don't know how to get the password field because I don't know the field name.' Dim oConnection1 As Object Dim oCommand1 As Object Set oConnection1 = CreateObject("ADODB.Connection") Set oCommand1 = CreateObject("ADODB.Command") ' Open the connection. oConnection1.Provider = "ADsDSOObject" ' This is the ADSI OLE-DB provider name oConnection1.Open "Active Directory Provider" ' Create a command object for this connection. Set oCommand1.ActiveConnection = oConnection1 ' Compose a search string. oCommand1.CommandText = "select name, displayname, userprincipalname, mailNickname, telephoneNumber from 'LDAP://kvckc' WHERE objectCategory='Person' AND objectClass='user' AND name='Lonnie Johnson'" ' Execute the query. Set rs = oCommand1.Execute '-------------------------------------- ' Navigate the record set '-------------------------------------- May God bless you beyond your imagination! Lonnie Johnson ProDev, Professional Development of MS Access Databases Visit me at ==> http://www.prodev.us --------------------------------- Relax. Yahoo! Mail virus scanning helps detect nasty viruses! -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From prodevmg at yahoo.com Tue Mar 21 15:23:20 2006 From: prodevmg at yahoo.com (Lonnie Johnson) Date: Tue, 21 Mar 2006 13:23:20 -0800 (PST) Subject: [AccessD] Active Directory Field List In-Reply-To: <17724746D360394AA3BFE5B8D40A9C1BD9CE@main2.marlow.com> Message-ID: <20060321212320.63625.qmail@web33108.mail.mud.yahoo.com> Thanks Drew. That is not what I wanted to hear but definately what I needed to hear. DWUTKA at marlow.com wrote: You can't get the passwords of a user account from Active Directory, at least not this way. You have to 'crack' them. Passwords are not stored in an unencrypted format. When a user changes their password, NT creates a 'hash' that is an encrypted string of text which can only be recreated with their account, password and domain. There are utilities out there to crack NT account passwords, the most common would be L0phtCrack (spelled with a zero after the L) Drew -----Original Message----- From: Lonnie Johnson [mailto:prodevmg at yahoo.com] Sent: Tuesday, March 21, 2006 2:34 PM To: AccessD solving' Subject: [AccessD] Active Directory Field List I am wanting to use Active Directory to update the passwords in a security table I have. Does anyone know how I can get a field list? I can use the code below but it has certain fields. I don't know how to get the password field because I don't know the field name.' Dim oConnection1 As Object Dim oCommand1 As Object Set oConnection1 = CreateObject("ADODB.Connection") Set oCommand1 = CreateObject("ADODB.Command") ' Open the connection. oConnection1.Provider = "ADsDSOObject" ' This is the ADSI OLE-DB provider name oConnection1.Open "Active Directory Provider" ' Create a command object for this connection. Set oCommand1.ActiveConnection = oConnection1 ' Compose a search string. oCommand1.CommandText = "select name, displayname, userprincipalname, mailNickname, telephoneNumber from 'LDAP://kvckc' WHERE objectCategory='Person' AND objectClass='user' AND name='Lonnie Johnson'" ' Execute the query. Set rs = oCommand1.Execute '-------------------------------------- ' Navigate the record set '-------------------------------------- May God bless you beyond your imagination! Lonnie Johnson ProDev, Professional Development of MS Access Databases Visit me at ==> http://www.prodev.us --------------------------------- Relax. Yahoo! Mail virus scanning helps detect nasty viruses! -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com May God bless you beyond your imagination! Lonnie Johnson ProDev, Professional Development of MS Access Databases Visit me at ==> http://www.prodev.us --------------------------------- Yahoo! Mail Use Photomail to share photos without annoying attachments. From garykjos at gmail.com Tue Mar 21 15:40:26 2006 From: garykjos at gmail.com (Gary Kjos) Date: Tue, 21 Mar 2006 15:40:26 -0600 Subject: [AccessD] Combo Box Won't Find Record In-Reply-To: References: Message-ID: You might try to delete it and recreate it. GK On 3/21/06, ewaldt at gdls.com wrote: > Well, I did find one problem. Actually, I had two combo boxes: One called > the form with the desired record already up (obviously from another form), > and the other was on the form itself. The second still won't work, but I > found the problem with the first one: Somehow the "Data Entry" property was > switched to "Yes". Duh. Strange, though, since I had never touched it, nor > any properties close to it on the list. Oh, well. Access gremlins at work, > I suppose. > > Thanks for your help. I can do without the second combo box, which still > doesn't work. > > Thomas F. Ewald > FCS Database Manager > General Dynamics Land Systems > (586) 276-1256 > > > > > > This is an e-mail from General Dynamics Land Systems. It is for the intended recipient only and may contain confidential and privileged information. No one else may read, print, store, copy, forward or act in reliance on it or its attachments. If you are not the intended recipient, please return this message to the sender and delete the message and any attachments from your computer. Your cooperation is appreciated. > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Gary Kjos garykjos at gmail.com From stuart at lexacorp.com.pg Tue Mar 21 16:13:37 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Wed, 22 Mar 2006 08:13:37 +1000 Subject: [AccessD] Active Directory Field List In-Reply-To: <17724746D360394AA3BFE5B8D40A9C1BD9CE@main2.marlow.com> Message-ID: <44210731.19273.38B47CB@stuart.lexacorp.com.pg> On 21 Mar 2006 at 14:35, DWUTKA at marlow.com wrote: > > There are utilities out there to crack NT account passwords, the most common > would be L0phtCrack (spelled with a zero after the L) > Two problems with that for me: 1. I couldn't buy it previously 'cos I don't live in US/Canada. 2. Symantec have pulled it anyway. Symantec has quietly pulled the plug on sales of L0phtCrack, the venerable password auditing and recovery application. The decision to discontinue support for L0phtCrack, also known as LC5, comes just months after Symantec stopped selling the application to customers outside the United States and Canada out of concerns that it violated cryptography export controls. The Cupertino, Calif.-based security vendor could not be reached for comment on the decision, but a note sent to existing L0phtCraft users said the product did not fit into Symantec's plans for the future. The ship date of L0phtCraft was Mar. 3, 2006 and Symantec will offer customer help until Dec. 16, 2006. The company will not be shipping any product code updates, enhancements or fixes to L0phtCraft after March 3. -- Stuart From pcs at azizaz.com Tue Mar 21 17:59:34 2006 From: pcs at azizaz.com (Borge Hansen) Date: Wed, 22 Mar 2006 09:59:34 +1000 Subject: [AccessD] A2003 AXP Startup Settings References: <1D7828CDB8350747AFE9D69E0E90DA1F1EE09469@xlivmbx21.aig.com> Message-ID: <005e01c64d43$814b6f70$fa10a8c0@Albatross> Steve wrote ~ I've got all the nasty defaults disabled (autocorrect, auto name change, etc). ~ The old apps have DAO references (no ADO) ~ After any coding session, I compile and compact. What's the etc. ? So far I've got: Disable Autocorrect Disable Auto Name Change Disable Subdata Sheets Place DAO reference above ADO reference if you have old code not specifically declared as DAO cheers borge From martyconnelly at shaw.ca Tue Mar 21 19:28:33 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Tue, 21 Mar 2006 17:28:33 -0800 Subject: [AccessD] A2003 AXP Startup Settings References: <1D7828CDB8350747AFE9D69E0E90DA1F1EE09469@xlivmbx21.aig.com> <005e01c64d43$814b6f70$fa10a8c0@Albatross> Message-ID: <4420A841.60108@shaw.ca> Some other hints here Microsoft Access Performance FAQ http://www.granite.ab.ca/access/performancefaq.htm Borge Hansen wrote: >Steve wrote > ~ I've got all the nasty defaults disabled (autocorrect, auto name change, >etc). >~ The old apps have DAO references (no ADO) ~ After any coding session, I >compile and compact. > > >What's the etc. ? > >So far I've got: > >Disable Autocorrect >Disable Auto Name Change >Disable Subdata Sheets >Place DAO reference above ADO reference if you have old code not specifically >declared as DAO > > >cheers >borge > > > -- Marty Connelly Victoria, B.C. Canada From DWUTKA at marlow.com Tue Mar 21 19:34:05 2006 From: DWUTKA at marlow.com (DWUTKA at marlow.com) Date: Tue, 21 Mar 2006 19:34:05 -0600 Subject: [AccessD] Active Directory Field List Message-ID: <17724746D360394AA3BFE5B8D40A9C1BD9D4@main2.marlow.com> I hear ya. I sent you an offer of a 'nudge' off list. Drew -----Original Message----- From: Lonnie Johnson [mailto:prodevmg at yahoo.com] Sent: Tuesday, March 21, 2006 3:23 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Active Directory Field List Thanks Drew. That is not what I wanted to hear but definately what I needed to hear. DWUTKA at marlow.com wrote: You can't get the passwords of a user account from Active Directory, at least not this way. You have to 'crack' them. Passwords are not stored in an unencrypted format. When a user changes their password, NT creates a 'hash' that is an encrypted string of text which can only be recreated with their account, password and domain. There are utilities out there to crack NT account passwords, the most common would be L0phtCrack (spelled with a zero after the L) Drew -----Original Message----- From: Lonnie Johnson [mailto:prodevmg at yahoo.com] Sent: Tuesday, March 21, 2006 2:34 PM To: AccessD solving' Subject: [AccessD] Active Directory Field List I am wanting to use Active Directory to update the passwords in a security table I have. Does anyone know how I can get a field list? I can use the code below but it has certain fields. I don't know how to get the password field because I don't know the field name.' Dim oConnection1 As Object Dim oCommand1 As Object Set oConnection1 = CreateObject("ADODB.Connection") Set oCommand1 = CreateObject("ADODB.Command") ' Open the connection. oConnection1.Provider = "ADsDSOObject" ' This is the ADSI OLE-DB provider name oConnection1.Open "Active Directory Provider" ' Create a command object for this connection. Set oCommand1.ActiveConnection = oConnection1 ' Compose a search string. oCommand1.CommandText = "select name, displayname, userprincipalname, mailNickname, telephoneNumber from 'LDAP://kvckc' WHERE objectCategory='Person' AND objectClass='user' AND name='Lonnie Johnson'" ' Execute the query. Set rs = oCommand1.Execute '-------------------------------------- ' Navigate the record set '-------------------------------------- May God bless you beyond your imagination! Lonnie Johnson ProDev, Professional Development of MS Access Databases Visit me at ==> http://www.prodev.us --------------------------------- Relax. Yahoo! Mail virus scanning helps detect nasty viruses! -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com May God bless you beyond your imagination! Lonnie Johnson ProDev, Professional Development of MS Access Databases Visit me at ==> http://www.prodev.us --------------------------------- Yahoo! Mail Use Photomail to share photos without annoying attachments. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From DWUTKA at marlow.com Tue Mar 21 19:34:27 2006 From: DWUTKA at marlow.com (DWUTKA at marlow.com) Date: Tue, 21 Mar 2006 19:34:27 -0600 Subject: [AccessD] Active Directory Field List Message-ID: <17724746D360394AA3BFE5B8D40A9C1BD9D5@main2.marlow.com> I have L0phtcrack 4, works like a charm, will probably never need support! ;) Drew -----Original Message----- From: Stuart McLachlan [mailto:stuart at lexacorp.com.pg] Sent: Tuesday, March 21, 2006 4:14 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Active Directory Field List On 21 Mar 2006 at 14:35, DWUTKA at marlow.com wrote: > > There are utilities out there to crack NT account passwords, the most common > would be L0phtCrack (spelled with a zero after the L) > Two problems with that for me: 1. I couldn't buy it previously 'cos I don't live in US/Canada. 2. Symantec have pulled it anyway. Symantec has quietly pulled the plug on sales of L0phtCrack, the venerable password auditing and recovery application. The decision to discontinue support for L0phtCrack, also known as LC5, comes just months after Symantec stopped selling the application to customers outside the United States and Canada out of concerns that it violated cryptography export controls. The Cupertino, Calif.-based security vendor could not be reached for comment on the decision, but a note sent to existing L0phtCraft users said the product did not fit into Symantec's plans for the future. The ship date of L0phtCraft was Mar. 3, 2006 and Symantec will offer customer help until Dec. 16, 2006. The company will not be shipping any product code updates, enhancements or fixes to L0phtCraft after March 3. -- Stuart -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From ldoering at symphonyinfo.com Tue Mar 21 22:49:03 2006 From: ldoering at symphonyinfo.com (Liz Doering) Date: Tue, 21 Mar 2006 22:49:03 -0600 Subject: [AccessD] A2003 AXP Startup Settings Message-ID: <855499653F55AD4190B242717DF132BC10C552@dewey.Symphony.local> Knowing Steve--and I do; he's been my boss for six years--he used "etc" with no particular meaning. Great to get this list of performance FAQs; that should help in all circumstances. Thanks, Liz -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of MartyConnelly Sent: Tuesday, March 21, 2006 7:46 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] A2003 AXP Startup Settings Some other hints here Microsoft Access Performance FAQ http://www.granite.ab.ca/access/performancefaq.htm Borge Hansen wrote: >Steve wrote > ~ I've got all the nasty defaults disabled (autocorrect, auto name >change, etc). >~ The old apps have DAO references (no ADO) ~ After any coding session, >I compile and compact. > > >What's the etc. ? > >So far I've got: > >Disable Autocorrect >Disable Auto Name Change >Disable Subdata Sheets >Place DAO reference above ADO reference if you have old code not >specifically declared as DAO > > >cheers >borge > > > -- Marty Connelly Victoria, B.C. Canada -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From adtp at airtelbroadband.in Tue Mar 21 23:59:10 2006 From: adtp at airtelbroadband.in (A.D.TEJPAL) Date: Wed, 22 Mar 2006 11:29:10 +0530 Subject: [AccessD] report sorting problem References: <000001c64b82$bbceed10$ceb3d6d1@SUSANONE> Message-ID: <05ed01c64d75$ca0fbfe0$d90c65cb@pcadt> Reports - Sort Order =============== Results displayed by a report comply with the sorting specified in the source query only if no GroupLevel has been laid down in report design (via Sorting & Grouping dialog box). As soon as you lay down even one GroupLevel, the sort order indicated therein over-rules the sorting (if any) in source query. Moreover, it then becomes necessary to explicitly set up other GroupLevels (in the hierarchy) as well - if any secondary sorting is desired. For this purpose, you can no longer depend upon the source query. A.D.Tejpal ---------------- ----- Original Message ----- From: Susan Harkins To: 'Access Developers discussion and problem solving' Sent: Sunday, March 19, 2006 23:57 Subject: Re: [AccessD] report sorting problem Hmmmmmm... Tried it and that alone didn't work. I added a second group on DateDue and that did it -- thanks Gustav. Susan H. << SNIP >> From shamil at users.mns.ru Wed Mar 22 08:02:47 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Wed, 22 Mar 2006 17:02:47 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant><004601c64932$45f25660$6501a8c0@Nant><000801c649ea$ef906370$6501a8c0@Nant><000a01c64c27$65ddfb80$6501a8c0@Nant> <000e01c64d24$70070ef0$6501a8c0@Nant> Message-ID: <000c01c64db9$f195e960$6501a8c0@Nant> Hi All, New version (1.9.4) of the subject test released at http://smsconsulting.spb.ru/download/tests/a2dds.htm It has now ATOM 1.0 feed generator. BTW, youi may find the code to generate this and other formats RSS feeds is easy but to make them time is needed to find all the source information, compile it into code, test it, test that generated feeds are well formed etc. - and this happens to be quite some time... Still can't get it running more than 2011 iterations with MS Acces 2003. It seems to be an internal limitation of MS Access/windows app, which is met here because all the external system statistics(Task Manager) show that MS Access didn't "eat" all the resources. Internal checking of opened databases, forms etc. shows there is just one test form opened and one test mdb/adp opened. Anybody who has information how to access the information of internal MS WIndows process/thread resources are very welcome to share it here/within the subject test application. Anybody with MS Access 12 Beta are welcome to test it to see how it works on it. Thank you. Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 21, 2006 11:17 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > New version (1.9.3) of the subject test released at > http://smsconsulting.spb.ru/download/tests/a2dds.htm > It has now RSS 2.0 feed generator and it compacts sample datbase after > every > 500 iterations. > > Still can't get it running more than 2011 iterations. > It doesn't work that well on MS Access XP as it runs on MS Access 2003 > where > it fails on 2011th iteration as I noted above. > > Shamil > <<< tail skipped >>> From harkinsss at bellsouth.net Wed Mar 22 08:02:57 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Wed, 22 Mar 2006 09:02:57 -0500 Subject: [AccessD] report sorting problem In-Reply-To: <05ed01c64d75$ca0fbfe0$d90c65cb@pcadt> Message-ID: <001201c64db9$64d5a790$a2b3d6d1@SUSANONE> Thanks -- that does seem to be the case -- adding the DateDue field to the sorting group as a lone sort did the trick. :) It's a bit of a nasty gotcha. I think Access folks either work a lot with reports or almost never touch them -- I'm in the latter group. :) Susan H. Reports - Sort Order =============== Results displayed by a report comply with the sorting specified in the source query only if no GroupLevel has been laid down in report design (via Sorting & Grouping dialog box). As soon as you lay down even one GroupLevel, the sort order indicated therein over-rules the sorting (if any) in source query. Moreover, it then becomes necessary to explicitly set up other GroupLevels (in the hierarchy) as well - if any secondary sorting is desired. For this purpose, you can no longer depend upon the source query. A.D.Tejpal ---------------- From shamil at users.mns.ru Wed Mar 22 08:31:57 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Wed, 22 Mar 2006 17:31:57 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant><004601c64932$45f25660$6501a8c0@Nant><000801c649ea$ef906370$6501a8c0@Nant><000a01c64c27$65ddfb80$6501a8c0@Nant><000e01c64d24$70070ef0$6501a8c0@Nant> <000c01c64db9$f195e960$6501a8c0@Nant> Message-ID: <003a01c64dbd$65180af0$6501a8c0@Nant> Hi All, BTW, some testers(great help, thank you!) reported that the test database works badly with MS Access XP. I did exprience the same issue on a PC where MS Access XP only is installed. But when I tested with MS Access XP on a PC where MS Access 2003 is installed then the test results were the same as on MS Access 2003. So my guess is that the problem is somewhere in common libraries used by MS Access XP and MS Access 2003, which are upgraded by MS Access 2003 installations(including SPs) but are absent in MS Access XP installatons (including SPs). This needs more testing of course - JFYI: MS Access XP =========== ADODB Bound Forms Crash Test v.1.9.2 [20-MAR-06] Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 3011 - The Microsoft Jet database engine could not find the object ''. Make sure the object exists and that you spell its name and the path name correctly. Backend: MS Access Binding: ADODB Cycles to pass: 3000 Cycles passed: 2012 Total errors: 1 Forms opened: 10059 Start time: 21.03.2006 16:08:38 End time: 21.03.2006 21:29:04 Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 93823, Disposed = 93823 Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 22, 2006 5:02 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > New version (1.9.4) of the subject test released at > > http://smsconsulting.spb.ru/download/tests/a2dds.htm > > It has now ATOM 1.0 feed generator. BTW, youi may find the code to > generate > this and other formats RSS feeds is easy but to make them time is needed > to > find all the source information, compile it into code, test it, test that > generated feeds are well formed etc. - and this happens to be quite some > time... > > Still can't get it running more than 2011 iterations with MS Acces 2003. > It seems to be an internal limitation of MS Access/windows app, which is > met > here because all the external system statistics(Task Manager) show that MS > Access didn't "eat" all the resources. Internal checking of opened > databases, forms etc. shows there is just one test form opened and one > test > mdb/adp opened. > > Anybody who has information how to access the information of internal MS > WIndows process/thread resources are very welcome to share it here/within > the subject test application. > > Anybody with MS Access 12 Beta are welcome to test it to see how it works > on > it. > > Thank you. > > Shamil <<< tail skipped >>> From shamil at users.mns.ru Wed Mar 22 09:07:46 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Wed, 22 Mar 2006 18:07:46 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant><004601c64932$45f25660$6501a8c0@Nant><000801c649ea$ef906370$6501a8c0@Nant><000a01c64c27$65ddfb80$6501a8c0@Nant><000e01c64d24$70070ef0$6501a8c0@Nant><000c01c64db9$f195e960$6501a8c0@Nant> <003a01c64dbd$65180af0$6501a8c0@Nant> Message-ID: <005c01c64dc2$61e8d1c0$6501a8c0@Nant> Just got information from one of the great helping hand testers - they got it runing more than 2010 cycles! Therefore the high hopes now we are on the right track! <+ Test successfully finished. Backend: MS Access Binding: ADODB Cycles to pass: 2700 Cycles passed: 2700 Total errors: 0 Forms opened: 13500 Start time: 3/21/2006 4:04:06 PM End time: 3/21/2006 5:19:49 PM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 97337, Disposed = 97337 -> Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 22, 2006 5:31 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > BTW, some testers(great help, thank you!) reported that the test database > works badly with MS Access XP. > I did exprience the same issue on a PC where MS Access XP only is > installed. > > But when I tested with MS Access XP on a PC where MS Access 2003 is > installed then the test results were the same as on MS Access 2003. So my > guess is that the problem is somewhere in common libraries used by MS > Access > XP and MS Access 2003, which are upgraded by MS Access 2003 > installations(including SPs) but are absent in MS Access XP installatons > (including SPs). This needs more testing of course - JFYI: > > MS Access XP > =========== > > ADODB Bound Forms Crash Test v.1.9.2 [20-MAR-06] > > Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 3011 - The Microsoft Jet > database engine could not find the object ''. Make sure the object exists > and that you spell its name and the path name correctly. > > Backend: MS Access > Binding: ADODB > Cycles to pass: 3000 > Cycles passed: 2012 > Total errors: 1 > Forms opened: 10059 > Start time: 21.03.2006 16:08:38 > End time: 21.03.2006 21:29:04 > > Object statistics: > ClassName = CTestForm, Created = 6, Disposed = 6 > ClassName = CFormDataset, Created = 93823, Disposed = 93823 > > Shamil > <<< tail skipped >>> From jwcolby at ColbyConsulting.com Wed Mar 22 10:32:24 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Wed, 22 Mar 2006 11:32:24 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <005c01c64dc2$61e8d1c0$6501a8c0@Nant> Message-ID: <00a901c64dce$345fe7a0$647aa8c0@ColbyM6805> I am ashamed to even raise my hand given that I was the one that asked if this was possible and prompted your working on this, and then haven't even had time to test. But... Do we know what allowed him to get past the 2010 barrier, what the barrier is? And I will be testing this as I have a use for it in real life. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Wednesday, March 22, 2006 10:08 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Just got information from one of the great helping hand testers - they got it runing more than 2010 cycles! Therefore the high hopes now we are on the right track! <+ Test successfully finished. Backend: MS Access Binding: ADODB Cycles to pass: 2700 Cycles passed: 2700 Total errors: 0 Forms opened: 13500 Start time: 3/21/2006 4:04:06 PM End time: 3/21/2006 5:19:49 PM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 97337, Disposed = 97337 -> Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 22, 2006 5:31 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > BTW, some testers(great help, thank you!) reported that the test database > works badly with MS Access XP. > I did exprience the same issue on a PC where MS Access XP only is > installed. > > But when I tested with MS Access XP on a PC where MS Access 2003 is > installed then the test results were the same as on MS Access 2003. So my > guess is that the problem is somewhere in common libraries used by MS > Access > XP and MS Access 2003, which are upgraded by MS Access 2003 > installations(including SPs) but are absent in MS Access XP installatons > (including SPs). This needs more testing of course - JFYI: > > MS Access XP > =========== > > ADODB Bound Forms Crash Test v.1.9.2 [20-MAR-06] > > Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 3011 - The Microsoft Jet > database engine could not find the object ''. Make sure the object exists > and that you spell its name and the path name correctly. > > Backend: MS Access > Binding: ADODB > Cycles to pass: 3000 > Cycles passed: 2012 > Total errors: 1 > Forms opened: 10059 > Start time: 21.03.2006 16:08:38 > End time: 21.03.2006 21:29:04 > > Object statistics: > ClassName = CTestForm, Created = 6, Disposed = 6 > ClassName = CFormDataset, Created = 93823, Disposed = 93823 > > Shamil > <<< tail skipped >>> -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Wed Mar 22 12:45:07 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Wed, 22 Mar 2006 21:45:07 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <00a901c64dce$345fe7a0$647aa8c0@ColbyM6805> Message-ID: <00a101c64de0$c1963ea0$6501a8c0@Nant> >I am ashamed to even raise my hand given that I was the one that asked if > this was possible and prompted your working on this, No problem, John, you "switched on" an interesting topic and an advanced open source project, which I do think will bring useful for real work result - in fact one such result is here already (see below) > Do we know what allowed him to get past the 2010 barrier, > what the barrier is? Here is a lucky environment where the test passed 2700 cycles with 2700 defined as a max value i.e. it passed all the cycles OK. <+ Windows XP Pro SP2, Microsoft Access 2003 SP2, all other service packs are the latest, ADO 2.8. Hardware is IBM ThinkCentre with dual P4 3.2 GHz, 512 mb ram. -> <+ Backend: MS Access Binding: ADODB Cycles to pass: 2700 Cycles passed: 2700 Total errors: 0 Forms opened: 13500 Start time: 3/21/2006 4:04:06 PM End time: 3/21/2006 5:19:49 PM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 97337, Disposed = 97337 -> I will publish/post with pleasure the name of this lucky man/early adopter/great helping hand when I will get his permission. And I think the first three developers (or more?) will do deserve honorable mention on AccessD web-site in the next issue of Database Advisors Gazette - what about that? Anybody courageous soul to first reach 10000 cycles working OK - just put your PC crunching this test over week end if you have the "lucky environment". The memory consumption isn't high - when I get it stopped on ~2010 cycle MS Access has only 32MB in use - almost nothing for nowadays systems.... This is a really hardcore case and if solved it will be useful for all I think because it will define the safest current MS Access 2003 environment. It would be interesting to know how and why it comes that exactly around 2010 cycle the test breaks on MS Access 2003 SP1 but the answer can be obtained probably from MS Access development team only and the hopes to get this answer are currently low because they are busy working on MS Access 12 Beta 2 release... Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Wednesday, March 22, 2006 7:32 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >I am ashamed to even raise my hand given that I was the one that asked if > this was possible and prompted your working on this, and then haven't even > had time to test. But... > > Do we know what allowed him to get past the 2010 barrier, what the barrier > is? > > And I will be testing this as I have a use for it in real life. > > John W. Colby > www.ColbyConsulting.com > <<< tail skipped >>> From kathryn at bassett.net Wed Mar 22 13:05:30 2006 From: kathryn at bassett.net (Kathryn Bassett) Date: Wed, 22 Mar 2006 11:05:30 -0800 Subject: [AccessD] Access help needed by my brother's friend Message-ID: <20060322110533.2149237@dm17.mta.everyone.net> Phil, I'm forwarding your message to a list called AccessD run by DataBaseAdvisors http://www.databaseadvisors.com/lists/whatandhow.htm as the scope of your request is beyond my skills. I highly recommend you join the list right away to see answers from people who reply to the list instead of directly to you. I'm positive someone will be able to help you. -- Kathryn Rhinehart Bassett (Pasadena CA) "Genealogy is my bag" "GH is my soap" kathryn at bassett.net http://bassett.net -----Original Message----- From: Phil Huisman [mailto:pbhuisman at msn.com] Sent: 21 Mar 2006 7:02 am To: kathryn at bassett.net Subject: Ken Rhinehart My name is Phil Huisman and your brother Ken gave me your name as a possible contact for help with Microsoft Access. I recently developed an Access database program for a ministry I am involved with at Glenkirk Church called Shepherd's Pantry. We need a DB to track people we serve so I decided to give it a try. After some struggling, I have managed to create a DB I think will meet our needs but there is one problem: we have a network of three PC's at the Pantry and the DB cannot be updated by all three PC's. I did manage to get all three PC's to share the DB but only in the 'read only' mode. Any changes to the database on PC's 2 or 3 cannot be saved? We get an error message but I forget exactly what the message says. I am using Microsoft Office 2003 Access, and XP Home operating system on new Dell PC's. The three PC's are networked together through a Linksys router. I take it we cannot just use standard Access in a network and be able to update the database from multiple PC's? It occurred to me we made need to have a dedicated server running Windows NT or something like that? Anyway, I hope this makes sense and would certainly appreciate any help you can provide. Thank you, Phil Huisman From marcus at tsstech.com Wed Mar 22 13:44:48 2006 From: marcus at tsstech.com (Scott Marcus) Date: Wed, 22 Mar 2006 14:44:48 -0500 Subject: [AccessD] Access help needed by my brother's friend Message-ID: By default, read-only is how folders are shared in Windows XP when following the wizards. You need to give full access to the shared folder for all users. Understand the risks of doing this before actually doing it. Setting this up improperly could leave the PC open to outside attacks. Scott Marcus -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Kathryn Bassett Sent: Wednesday, March 22, 2006 2:06 PM To: 'Phil Huisman'; 'Access Developers discussion and problem solving' Subject: [AccessD] Access help needed by my brother's friend Phil, I'm forwarding your message to a list called AccessD run by DataBaseAdvisors http://www.databaseadvisors.com/lists/whatandhow.htm as the scope of your request is beyond my skills. I highly recommend you join the list right away to see answers from people who reply to the list instead of directly to you. I'm positive someone will be able to help you. -- Kathryn Rhinehart Bassett (Pasadena CA) "Genealogy is my bag" "GH is my soap" kathryn at bassett.net http://bassett.net -----Original Message----- From: Phil Huisman [mailto:pbhuisman at msn.com] Sent: 21 Mar 2006 7:02 am To: kathryn at bassett.net Subject: Ken Rhinehart My name is Phil Huisman and your brother Ken gave me your name as a possible contact for help with Microsoft Access. I recently developed an Access database program for a ministry I am involved with at Glenkirk Church called Shepherd's Pantry. We need a DB to track people we serve so I decided to give it a try. After some struggling, I have managed to create a DB I think will meet our needs but there is one problem: we have a network of three PC's at the Pantry and the DB cannot be updated by all three PC's. I did manage to get all three PC's to share the DB but only in the 'read only' mode. Any changes to the database on PC's 2 or 3 cannot be saved? We get an error message but I forget exactly what the message says. I am using Microsoft Office 2003 Access, and XP Home operating system on new Dell PC's. The three PC's are networked together through a Linksys router. I take it we cannot just use standard Access in a network and be able to update the database from multiple PC's? It occurred to me we made need to have a dedicated server running Windows NT or something like that? Anyway, I hope this makes sense and would certainly appreciate any help you can provide. Thank you, Phil Huisman -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com NOTICE: This electronic mail transmission is for the use of the named individual or entity to which it is directed and may contain information that is privileged or confidential. If you are not the intended recipient, any disclosure, copying, distribution or use of the contents of any information contained herein is prohibited. If you have received this electronic mail transmission in error, delete it from your system without copying or forwarding it, and notify the sender of the error by replying via email or calling TSS Technologies at (513) 772-7000, so that our address record can be corrected. Any information included in this email is provided on an ?as is? and ?where as? basis, and TSS Technologies makes no representations or warranties of any kind with respect to the completeness or accuracy of the information contained in this email. From garykjos at gmail.com Wed Mar 22 13:51:15 2006 From: garykjos at gmail.com (Gary Kjos) Date: Wed, 22 Mar 2006 13:51:15 -0600 Subject: [AccessD] Access help needed by my brother's friend In-Reply-To: <20060322110533.2149237@dm17.mta.everyone.net> References: <20060322110533.2149237@dm17.mta.everyone.net> Message-ID: HI Phil, The first thing that comes to my mind that could be causing your poblem would be - are the users given sufficient rights on the share to be able to CREATE, UPDATE and DELETE files on the share?? This FULL ACCESS is needed so that the LOCK file can be created when the user opens the database. If the user is not allowed to create files on the machine acting as the server, then the lock file cannot be created and so the database will be opened in read only mode. This will be an easy thing to determine - with the database open, IS there a file created with the same name as the database but with a file extension of .LDB instead of the database itself which has an MDB extension. No LDB file, then no updates. Gary Kjos garykjos at gmail.com On 3/22/06, Kathryn Bassett wrote: > Phil, I'm forwarding your message to a list called AccessD run by DataBaseAdvisors http://www.databaseadvisors.com/lists/whatandhow.htm as the scope of your request is beyond my skills. I highly recommend you join the list right away to see answers from people who reply to the list instead of directly to you. I'm positive someone will be able to help you. > -- > Kathryn Rhinehart Bassett (Pasadena CA) > "Genealogy is my bag" "GH is my soap" > kathryn at bassett.net > http://bassett.net > > -----Original Message----- > From: Phil Huisman [mailto:pbhuisman at msn.com] > Sent: 21 Mar 2006 7:02 am > To: kathryn at bassett.net > Subject: Ken Rhinehart > > My name is Phil Huisman and your brother Ken gave me your name as a possible contact for help with Microsoft Access. I recently developed an Access database program for a ministry I am involved with at Glenkirk Church called Shepherd's Pantry. We need a DB to track people we serve so I decided to give it a try. After some struggling, I have managed to create a DB I think will meet our needs but there is one problem: we have a network of three PC's at the Pantry and the DB cannot be updated by all three PC's. I did manage to get all three PC's to share the DB but only in the 'read only' mode. Any changes to the database on PC's 2 or 3 cannot be saved? We get an error message but I forget exactly what the message says. > > I am using Microsoft Office 2003 Access, and XP Home operating system on new Dell PC's. The three PC's are networked together through a Linksys router. I take it we cannot just use standard Access in a network and be able to update the database from multiple PC's? It occurred to me we made need to have a dedicated server running Windows NT or something like that? Anyway, I hope this makes sense and would certainly appreciate any help you can provide. > > Thank you, > > Phil Huisman > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Gary Kjos garykjos at gmail.com From cyx5 at cdc.gov Wed Mar 22 13:31:46 2006 From: cyx5 at cdc.gov (Nicholson, Karen) Date: Wed, 22 Mar 2006 14:31:46 -0500 Subject: [AccessD] Access help needed by my brother's friend Message-ID: I sent him off line an answer and told him to join our group - told him to split it, etc. Karen S. Nicholson Programmer Analyst EG&G Technical Services, Inc. Pittsburgh, PA Phone: 412-386-6649 Email: cyx5 at cdc.gov -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Kathryn Bassett Sent: Wednesday, March 22, 2006 2:06 PM To: 'Phil Huisman'; 'Access Developers discussion and problem solving' Subject: [AccessD] Access help needed by my brother's friend Phil, I'm forwarding your message to a list called AccessD run by DataBaseAdvisors http://www.databaseadvisors.com/lists/whatandhow.htm as the scope of your request is beyond my skills. I highly recommend you join the list right away to see answers from people who reply to the list instead of directly to you. I'm positive someone will be able to help you. -- Kathryn Rhinehart Bassett (Pasadena CA) "Genealogy is my bag" "GH is my soap" kathryn at bassett.net http://bassett.net -----Original Message----- From: Phil Huisman [mailto:pbhuisman at msn.com] Sent: 21 Mar 2006 7:02 am To: kathryn at bassett.net Subject: Ken Rhinehart My name is Phil Huisman and your brother Ken gave me your name as a possible contact for help with Microsoft Access. I recently developed an Access database program for a ministry I am involved with at Glenkirk Church called Shepherd's Pantry. We need a DB to track people we serve so I decided to give it a try. After some struggling, I have managed to create a DB I think will meet our needs but there is one problem: we have a network of three PC's at the Pantry and the DB cannot be updated by all three PC's. I did manage to get all three PC's to share the DB but only in the 'read only' mode. Any changes to the database on PC's 2 or 3 cannot be saved? We get an error message but I forget exactly what the message says. I am using Microsoft Office 2003 Access, and XP Home operating system on new Dell PC's. The three PC's are networked together through a Linksys router. I take it we cannot just use standard Access in a network and be able to update the database from multiple PC's? It occurred to me we made need to have a dedicated server running Windows NT or something like that? Anyway, I hope this makes sense and would certainly appreciate any help you can provide. Thank you, Phil Huisman -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Wed Mar 22 14:36:16 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Wed, 22 Mar 2006 23:36:16 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <00a901c64dce$345fe7a0$647aa8c0@ColbyM6805> <00a101c64de0$c1963ea0$6501a8c0@Nant> Message-ID: <003a01c64df0$49a77980$6501a8c0@Nant> Hi All, Please to not rush to upgrade for MS Office/Access SP2 - as Gustav noted you may get your MS Excel attached worksheets unupdatable: <<< You cannot change, add, or delete data in tables that are linked to an Excel workbook in Office Access 2003 or in Access 2002 http://support.microsoft.com/kb/904953/ >>> <<< Description of Office 2003 Service Pack 2 http://support.microsoft.com/kb/887616 >>> Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 22, 2006 9:45 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > >I am ashamed to even raise my hand given that I was the one that asked if >> this was possible and prompted your working on this, > No problem, John, you "switched on" an interesting topic and an advanced > open source project, which I do think will bring useful for real work > result - in fact one such result is here already (see below) > >> Do we know what allowed him to get past the 2010 barrier, >> what the barrier is? > Here is a lucky environment where the test passed 2700 cycles with 2700 > defined as a max value i.e. it passed all the cycles OK. > <+ > Windows XP Pro SP2, > Microsoft Access 2003 SP2, > all other service packs are the latest, > ADO 2.8. > Hardware is IBM ThinkCentre with dual P4 3.2 GHz, 512 mb ram. > -> > > <+ > Backend: MS Access > Binding: ADODB > Cycles to pass: 2700 > Cycles passed: 2700 > Total errors: 0 > Forms opened: 13500 > Start time: 3/21/2006 4:04:06 PM > End time: 3/21/2006 5:19:49 PM > > Object statistics: > ClassName = CTestForm, Created = 6, Disposed = 6 > ClassName = CFormDataset, Created = 97337, Disposed = 97337 > -> > > I will publish/post with pleasure the name of this lucky man/early > adopter/great helping hand when I will get his permission. > > And I think the first three developers (or more?) will do deserve > honorable > mention on AccessD web-site in the next issue of Database Advisors > Gazette - > what about that? > > Anybody courageous soul to first reach 10000 cycles working OK - just put > your PC crunching this test over week end if you have the "lucky > environment". The memory consumption isn't high - when I get it stopped on > ~2010 cycle MS Access has only 32MB in use - almost nothing for nowadays > systems.... > > This is a really hardcore case and if solved it will be useful for all I > think because it will define the safest current MS Access 2003 > environment. > > It would be interesting to know how and why it comes that exactly around > 2010 cycle the test breaks on MS Access 2003 SP1 but the answer can be > obtained probably from MS Access development team only and the hopes to > get > this answer are currently low because they are busy working on MS Access > 12 > Beta 2 release... > > Shamil <<< taile skipped >>> From Jeff at outbaktech.com Wed Mar 22 17:50:57 2006 From: Jeff at outbaktech.com (Jeff Barrows) Date: Wed, 22 Mar 2006 17:50:57 -0600 Subject: [AccessD] FW: Focus database Message-ID: Anyone have any suggestions on where to look for information on reverse engineering a FOCUS database? Jeff Barrows MCP, MCAD, MCSD Outbak Technologies, LLC Racine, WI Phone: (262) 886-5913 Fax: (262) 886-5932 jeff at outbaktech.com From artful at rogers.com Wed Mar 22 21:10:19 2006 From: artful at rogers.com (Arthur Fuller) Date: Wed, 22 Mar 2006 22:10:19 -0500 Subject: [AccessD] Unexpected Critical Error: Can't Start Program Message-ID: <025d01c64e27$5165e080$8e01a8c0@Camelot.com> Lately an app I'm working on is giving this error when I exit it. I have no idea what change I made caused this. Anyone got a clue? TIA, Arthur From darsant at gmail.com Wed Mar 22 21:21:27 2006 From: darsant at gmail.com (Josh McFarlane) Date: Wed, 22 Mar 2006 21:21:27 -0600 Subject: [AccessD] Unexpected Critical Error: Can't Start Program In-Reply-To: <025d01c64e27$5165e080$8e01a8c0@Camelot.com> References: <025d01c64e27$5165e080$8e01a8c0@Camelot.com> Message-ID: <53c8e05a0603221921t5634f180s15561c5047c86a15@mail.gmail.com> On 3/22/06, Arthur Fuller wrote: > Lately an app I'm working on is giving this error when I exit it. I have no > idea what change I made caused this. > Anyone got a clue? Might be a missing DLL dependancy? I know when I make MFC C++ applications, if they don't have the mfcXX.dll it will give a similar error. -- Josh McFarlane "Peace cannot be kept by force. It can only be achieved by understanding." -Albert Einstein From shamil at users.mns.ru Wed Mar 22 23:32:08 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Thu, 23 Mar 2006 08:32:08 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant><004601c64932$45f25660$6501a8c0@Nant><000801c649ea$ef906370$6501a8c0@Nant><000a01c64c27$65ddfb80$6501a8c0@Nant><000e01c64d24$70070ef0$6501a8c0@Nant><000c01c64db9$f195e960$6501a8c0@Nant> <003a01c64dbd$65180af0$6501a8c0@Nant> Message-ID: <001401c64e3b$2c6f81a0$6501a8c0@Nant> Hi All, New version (1.9.5) of the subject test released at http://smsconsulting.spb.ru/download/tests/a2dds.htm It collects complete MS Access process information (loaded DLLs) now and writes it to XML file. It also collects system information(menory usage, MS Access context and locale) and writes into XML file. Both XML files are well formed and can be imported into MS Access database. Now it's possible to compare Access 2003 SP1 and Access 2003 SP2 and related DLLs versions to see which ones are upgraded in MS Access SP2... Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 22, 2006 5:31 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > BTW, some testers(great help, thank you!) reported that the test database > works badly with MS Access XP. > I did exprience the same issue on a PC where MS Access XP only is > installed. > > But when I tested with MS Access XP on a PC where MS Access 2003 is > installed then the test results were the same as on MS Access 2003. So my > guess is that the problem is somewhere in common libraries used by MS > Access > XP and MS Access 2003, which are upgraded by MS Access 2003 > installations(including SPs) but are absent in MS Access XP installatons > (including SPs). This needs more testing of course - JFYI: > > MS Access XP > =========== > > ADODB Bound Forms Crash Test v.1.9.2 [20-MAR-06] > > Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 3011 - The Microsoft Jet > database engine could not find the object ''. Make sure the object exists > and that you spell its name and the path name correctly. > > Backend: MS Access > Binding: ADODB > Cycles to pass: 3000 > Cycles passed: 2012 > Total errors: 1 > Forms opened: 10059 > Start time: 21.03.2006 16:08:38 > End time: 21.03.2006 21:29:04 > > Object statistics: > ClassName = CTestForm, Created = 6, Disposed = 6 > ClassName = CFormDataset, Created = 93823, Disposed = 93823 > > Shamil > <<< tail >>> From bheid at appdevgrp.com Thu Mar 23 07:12:50 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Thu, 23 Mar 2006 08:12:50 -0500 Subject: [AccessD] Access help needed by my brother's friend In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D78BF6@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D35152@ADGSERVER> Phil, I am assuming that you have the forms/code and the tables in one database. You need to split the database into a front-end (FE) and back-end (BE). That is, you have a database that only contains the data (tables) and another database that has all of the code/forms/reports/etc. in it. You link to the tables in the BE from the FE by going to File/Get External Data/Link tables and then locating the BE and selecting all of the tables that you want to be linked to the FE. Then you put the BE in one place and distribute the FE to all of the users. Without going into a lot of detail about auto-linking the tables, you should link the tables in each FE database to the one BE database. Hope this helps, Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Kathryn Bassett Sent: Wednesday, March 22, 2006 2:06 PM To: 'Phil Huisman'; 'Access Developers discussion and problem solving' Subject: [AccessD] Access help needed by my brother's friend Phil, I'm forwarding your message to a list called AccessD run by DataBaseAdvisors http://www.databaseadvisors.com/lists/whatandhow.htm as the scope of your request is beyond my skills. I highly recommend you join the list right away to see answers from people who reply to the list instead of directly to you. I'm positive someone will be able to help you. -- Kathryn Rhinehart Bassett (Pasadena CA) "Genealogy is my bag" "GH is my soap" kathryn at bassett.net http://bassett.net -----Original Message----- From: Phil Huisman [mailto:pbhuisman at msn.com] Sent: 21 Mar 2006 7:02 am To: kathryn at bassett.net Subject: Ken Rhinehart My name is Phil Huisman and your brother Ken gave me your name as a possible contact for help with Microsoft Access. I recently developed an Access database program for a ministry I am involved with at Glenkirk Church called Shepherd's Pantry. We need a DB to track people we serve so I decided to give it a try. After some struggling, I have managed to create a DB I think will meet our needs but there is one problem: we have a network of three PC's at the Pantry and the DB cannot be updated by all three PC's. I did manage to get all three PC's to share the DB but only in the 'read only' mode. Any changes to the database on PC's 2 or 3 cannot be saved? We get an error message but I forget exactly what the message says. I am using Microsoft Office 2003 Access, and XP Home operating system on new Dell PC's. The three PC's are networked together through a Linksys router. I take it we cannot just use standard Access in a network and be able to update the database from multiple PC's? It occurred to me we made need to have a dedicated server running Windows NT or something like that? Anyway, I hope this makes sense and would certainly appreciate any help you can provide. Thank you, Phil Huisman From Jdemarco at hudsonhealthplan.org Thu Mar 23 07:57:59 2006 From: Jdemarco at hudsonhealthplan.org (Jim DeMarco) Date: Thu, 23 Mar 2006 08:57:59 -0500 Subject: [AccessD] Access and .NET Message-ID: <08F823FD83787D4BA0B99CA580AD3C74016C467B@TTNEXCHCL2.hshhp.com> Hello All, I'm just reading the March 15 edition of Software Development Times and I see that M$ has released the beta of something called Visual Studio Tools for Applications SDK. From the article it looks like VB and C# may be available to VBA developers in Office 2007. The beta is a Community Technology preview so I don't thinks it's available to the general public yet. Interesting eh? Jim DeMarco *********************************************************************************** "This electronic message is intended to be for the use only of the named recipient, and may contain information from Hudson Health Plan (HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". *********************************************************************************** From shamil at users.mns.ru Thu Mar 23 08:13:56 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Thu, 23 Mar 2006 17:13:56 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant><004601c64932$45f25660$6501a8c0@Nant><000801c649ea$ef906370$6501a8c0@Nant><000a01c64c27$65ddfb80$6501a8c0@Nant><000e01c64d24$70070ef0$6501a8c0@Nant><000c01c64db9$f195e960$6501a8c0@Nant><003a01c64dbd$65180af0$6501a8c0@Nant> <001401c64e3b$2c6f81a0$6501a8c0@Nant> Message-ID: <005101c64e84$119b5540$6501a8c0@Nant> Hi All, New version (1.9.6) of the subject test released at http://smsconsulting.spb.ru/download/tests/a2dds.htm You can now use Customers form to manually add and deleted rows, which are bound to disconnected ADODB recordsets. The code to automate testing of inserting and deleting is under development. And it is planned to be released over weekend. Here are two new success stories for the test - over 2010 cycles passed OK (not my PC - others) - Access SP2 seems to be a solution: <<<+ Test successfully finished. Backend: MS Access Binding: ADODB Cycles to pass: 3000 Cycles passed: 3000 Total errors: 0 Forms opened: 15000 Start time: 3/22/2006 2:10:25 PM End time: 3/22/2006 4:28:43 PM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 107634, Disposed = 107634 ->>> <<<+ Backend: MS Access Binding: ADODB Cycles to pass: 2600 Cycles passed: 2600 Total errors: 0 Forms opened: 13000 Start time: 22/03/2006 10:00:18 AM End time: 22/03/2006 2:21:28 PM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 93583, Disposed = 93583 ->>> Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Thursday, March 23, 2006 8:32 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > New version (1.9.5) of the subject test released at > > http://smsconsulting.spb.ru/download/tests/a2dds.htm > > It collects complete MS Access process information (loaded DLLs) now and > writes it to XML file. > It also collects system information(menory usage, MS Access context and > locale) and writes into XML file. > > Both XML files are well formed and can be imported into MS Access > database. > > Now it's possible to compare Access 2003 SP1 and Access 2003 SP2 and > related > DLLs versions to see which ones are upgraded in MS Access SP2... > > Shamil > <<< tail skipped >>> From erbachs at gmail.com Thu Mar 23 10:55:21 2006 From: erbachs at gmail.com (Steve Erbach) Date: Thu, 23 Mar 2006 10:55:21 -0600 Subject: [AccessD] Access and .NET In-Reply-To: <08F823FD83787D4BA0B99CA580AD3C74016C467B@TTNEXCHCL2.hshhp.com> References: <08F823FD83787D4BA0B99CA580AD3C74016C467B@TTNEXCHCL2.hshhp.com> Message-ID: <39cb22f30603230855t5b8545d9n9b139c5919829666@mail.gmail.com> Jim, Just received my MSDN Universal update yesterday and it contained the Visual Studio 2005 Tools for the Microsoft Office System, aka VSTO. There's an MSDN blog for it: http://blogs.msdn.com/vsto2/ More Microsoft info: http://msdn.microsoft.com/office/understanding/vsto/ Steve Erbach Neenah, WI http://TheTownCrank.blogspot.com On 3/23/06, Jim DeMarco wrote: > Hello All, > > I'm just reading the March 15 edition of Software Development Times and > I see that M$ has released the beta of something called Visual Studio > Tools for Applications SDK. From the article it looks like VB and C# may > be available to VBA developers in Office 2007. The beta is a Community > Technology preview so I don't thinks it's available to the general > public yet. > > Interesting eh? > > Jim DeMarco > > > *********************************************************************************** From prodevmg at yahoo.com Thu Mar 23 13:01:30 2006 From: prodevmg at yahoo.com (Lonnie Johnson) Date: Thu, 23 Mar 2006 11:01:30 -0800 (PST) Subject: [AccessD] Validating user and password against Active Directory Message-ID: <20060323190130.13221.qmail@web33108.mail.mud.yahoo.com> Does anyone have vba code that I can use to validate a username and password against active directory? May God bless you beyond your imagination! Lonnie Johnson ProDev, Professional Development of MS Access Databases Visit me at ==> http://www.prodev.us --------------------------------- New Yahoo! Messenger with Voice. Call regular phones from your PC and save big. From shamil at users.mns.ru Fri Mar 24 04:50:51 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Fri, 24 Mar 2006 13:50:51 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant><004601c64932$45f25660$6501a8c0@Nant><000801c649ea$ef906370$6501a8c0@Nant><000a01c64c27$65ddfb80$6501a8c0@Nant><000e01c64d24$70070ef0$6501a8c0@Nant><000c01c64db9$f195e960$6501a8c0@Nant><003a01c64dbd$65180af0$6501a8c0@Nant><001401c64e3b$2c6f81a0$6501a8c0@Nant> <005101c64e84$119b5540$6501a8c0@Nant> Message-ID: <002d01c64f30$d70c2640$6501a8c0@Nant> Hi All, New version (1.9.7) is available on http://smsconsulting.spb.ru/download/tests/a2dds.htm - this is just a maintenance/bug fix release - no new features. Best regards, Shamil -- Web: http://smsconsulting.spb.ru/shamil_s ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Thursday, March 23, 2006 5:13 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > New version (1.9.6) of the subject test released at > > http://smsconsulting.spb.ru/download/tests/a2dds.htm > > You can now use Customers form to manually add and deleted rows, which are > bound to disconnected ADODB recordsets. > The code to automate testing of inserting and deleting is under > development. > And it is planned to be released over weekend. > > Here are two new success stories for the test - over 2010 cycles passed OK > (not my PC - others) - Access SP2 seems to be a solution: > > <<<+ > Test successfully finished. > > Backend: MS Access > Binding: ADODB > Cycles to pass: 3000 > Cycles passed: 3000 > Total errors: 0 > Forms opened: 15000 > Start time: 3/22/2006 2:10:25 PM > End time: 3/22/2006 4:28:43 PM > > Object statistics: > ClassName = CTestForm, Created = 6, Disposed = 6 > ClassName = CFormDataset, Created = 107634, Disposed = 107634 > ->>> > > <<<+ > Backend: MS Access > Binding: ADODB > Cycles to pass: 2600 > Cycles passed: 2600 > Total errors: 0 > Forms opened: 13000 > Start time: 22/03/2006 10:00:18 AM > End time: 22/03/2006 2:21:28 PM > > Object statistics: > ClassName = CTestForm, Created = 6, Disposed = 6 > ClassName = CFormDataset, Created = 93583, Disposed = 93583 > ->>> > > Shamil > > ----- Original Message ----- > From: "Shamil Salakhetdinov" > To: "Access Developers discussion and problem solving" > > Sent: Thursday, March 23, 2006 8:32 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Hi All, >> >> New version (1.9.5) of the subject test released at >> >> http://smsconsulting.spb.ru/download/tests/a2dds.htm >> >> It collects complete MS Access process information (loaded DLLs) now and >> writes it to XML file. >> It also collects system information(menory usage, MS Access context and >> locale) and writes into XML file. >> >> Both XML files are well formed and can be imported into MS Access >> database. >> >> Now it's possible to compare Access 2003 SP1 and Access 2003 SP2 and >> related >> DLLs versions to see which ones are upgraded in MS Access SP2... >> >> Shamil >> > <<< tail skipped >>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From shamil at users.mns.ru Fri Mar 24 05:37:58 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Fri, 24 Mar 2006 14:37:58 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant><004601c64932$45f25660$6501a8c0@Nant><000801c649ea$ef906370$6501a8c0@Nant><000a01c64c27$65ddfb80$6501a8c0@Nant><000e01c64d24$70070ef0$6501a8c0@Nant><000c01c64db9$f195e960$6501a8c0@Nant><003a01c64dbd$65180af0$6501a8c0@Nant><001401c64e3b$2c6f81a0$6501a8c0@Nant><005101c64e84$119b5540$6501a8c0@Nant> <002d01c64f30$d70c2640$6501a8c0@Nant> Message-ID: <011c01c64f37$6c442a40$6501a8c0@Nant> Hi All, I wanted to inform you about the current results: The absolute for today result is achieved on Jim Moss system (MS Access 2003 SP2): - 8729 cycles or - 43644 opened forms (these are 130932 updates - I will add update counters later when inserts and deletes will be ready). It breaks even with MS Access SP2 but the memory consumption on this breaking is normal - ~32MB. Seems to be a Jet problem(see below) not MS Access? (It has to be rechecked) This information and the fact that 43644 opened forms is a way above of the quantity of forms, which are usually opened manually during one working day (43644/8/60/60 = ~1.52 opened form/second) lets to continue the testing and to add the new functionality. Current statistics: ----------------------- The one who fired(started I mean :)) this whole thread ========================================= John Colby of course. The best support/max test runs ======================== Author: Keith & Sandra (Keith) ------------------------------------------ They have Access SP1 system therefore ~2010 barrier isn't yet passed The best inspirer to run this test after he did run it ====================================== Gustav Brock - his appeal to run the test resulted in many new helpful test runs and we got passed ~2010 barrier The first three positive results above ~2010 barrier ======================================= 1. Author: Jim Moss ---------------------------- Backend: MS Access Binding: ADODB Cycles to pass: 2700 Cycles passed: 2700 Total errors: 0 Forms opened: 13500 Start time: 3/21/2006 4:04:06 PM End time: 3/21/2006 5:19:49 PM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 97337, Disposed = 97337 2. Author Marty Connelly ------------------------------------ Backend: MS Access Binding: ADODB Cycles to pass: 2600 Cycles passed: 2600 Total errors: 0 Forms opened: 13000 Start time: 22/03/2006 10:00:18 AM End time: 22/03/2006 2:21:28 PM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 93583, Disposed = 93583 3. Author: Jim DeMarco --------------------------------- Backend: MS Access Binding: ADODB Cycles to pass: 3000 Cycles passed: 3000 Total errors: 0 Forms opened: 15000 Start time: 3/22/2006 2:10:25 PM End time: 3/22/2006 4:28:43 PM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 107634, Disposed = 107634 Top result for today: 24-MAR-06 14:18 (GMT+3) ===================================== Author: Jim Moss ------------------------- Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 3011 - The Microsoft Jet database engine could not find the object ''. Make sure the object exists and that you spell its name and the path name correctly. Backend: MS Access Binding: ADODB Cycles to pass: 12500 Cycles passed: 8729 Total errors: 1 Forms opened: 43644 Start time: 3/22/2006 6:31:11 PM End time: 3/23/2006 9:10:46 AM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 313198, Disposed = 313198 Second top result for today ==================== Author: Rocky Smolin ------------------------------ ADODB Bound Forms Crash Test v.1.9.6 [23-MAR-06] Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 3011 - The Microsoft Jet database engine could not find the object ''. Make sure the object exists and that you spell its name and the path name correctly. Backend: MS Access Binding: ADODB Cycles to pass: 20000 Cycles passed: 6129 Total errors: 1 Forms opened: 30644 Start time: 3/23/2006 7:54:55 PM End time: 3/23/2006 10:47:24 PM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 220163, Disposed = 220163 ---------- Thank you a lot for your support - it gives the assurance that the final successful result will be reached! I plan to reorganize the web page(s) dedicated to this test and the names of all the supporters (with their permission) will be published on it. No e-mail addresses of course to prevent spam scripers to collect them. Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Friday, March 24, 2006 1:50 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > New version (1.9.7) is available on > http://smsconsulting.spb.ru/download/tests/a2dds.htm - this is just a > maintenance/bug fix release - no new features. > > Shamil <<< tail skipped >>> From viner at EUnet.yu Fri Mar 24 06:41:41 2006 From: viner at EUnet.yu (Ervin Brindza) Date: Fri, 24 Mar 2006 13:41:41 +0100 Subject: [AccessD] Access and MySQL Message-ID: <007b01c64f40$585cdd20$0100a8c0@RazvojErvin> I know, today is Friday, but I just started to "play" with Access connected (throught MyODBC) and MySQL. Can you recommend any useful: hint, code, sample application? TIA, Ervin From bchacc at san.rr.com Fri Mar 24 08:27:59 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Fri, 24 Mar 2006 06:27:59 -0800 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <002d01c64f30$d70c2640$6501a8c0@Nant> References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805> <001301c6472c$d5602960$6501a8c0@Nant> <001001c64751$d4b89ef0$6501a8c0@Nant> <007101c6478b$4c9e8040$6501a8c0@Nant> <001201c647a3$3283af10$6501a8c0@Nant> <001101c64810$f9ad0420$6501a8c0@Nant> <004601c64932$45f25660$6501a8c0@Nant> <000801c649ea$ef906370$6501a8c0@Nant> <000a01c64c27$65ddfb80$6501a8c0@Nant> <000e01c64d24$70070ef0$6501a8c0@Nant> <000c01c64db9$f195e960$6501a8c0@Nant> <003a01c64dbd$65180af0$6501a8c0@Nant> <001401c64e3b$2c6f81a0$6501a8c0@Nant> <005101c64e84$119b5540$6501a8c0@Nant> <002d01c64f30$d70c2640$6501a8c0@Nant> Message-ID: <442401EF.2040704@san.rr.com> Shamil: Do you want us to run it again with this new version? Rocky Shamil Salakhetdinov wrote: > Hi All, > > New version (1.9.7) is available on > http://smsconsulting.spb.ru/download/tests/a2dds.htm - this is just a > maintenance/bug fix release - no new features. > > Best regards, > Shamil > -- > Web: http://smsconsulting.spb.ru/shamil_s > > ----- Original Message ----- > From: "Shamil Salakhetdinov" > To: "Access Developers discussion and problem solving" > > Sent: Thursday, March 23, 2006 5:13 PM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > > >> Hi All, >> >> New version (1.9.6) of the subject test released at >> >> http://smsconsulting.spb.ru/download/tests/a2dds.htm >> >> You can now use Customers form to manually add and deleted rows, which are >> bound to disconnected ADODB recordsets. >> The code to automate testing of inserting and deleting is under >> development. >> And it is planned to be released over weekend. >> >> Here are two new success stories for the test - over 2010 cycles passed OK >> (not my PC - others) - Access SP2 seems to be a solution: >> >> <<<+ >> Test successfully finished. >> >> Backend: MS Access >> Binding: ADODB >> Cycles to pass: 3000 >> Cycles passed: 3000 >> Total errors: 0 >> Forms opened: 15000 >> Start time: 3/22/2006 2:10:25 PM >> End time: 3/22/2006 4:28:43 PM >> >> Object statistics: >> ClassName = CTestForm, Created = 6, Disposed = 6 >> ClassName = CFormDataset, Created = 107634, Disposed = 107634 >> ->>> >> >> <<<+ >> Backend: MS Access >> Binding: ADODB >> Cycles to pass: 2600 >> Cycles passed: 2600 >> Total errors: 0 >> Forms opened: 13000 >> Start time: 22/03/2006 10:00:18 AM >> End time: 22/03/2006 2:21:28 PM >> >> Object statistics: >> ClassName = CTestForm, Created = 6, Disposed = 6 >> ClassName = CFormDataset, Created = 93583, Disposed = 93583 >> ->>> >> >> Shamil >> >> ----- Original Message ----- >> From: "Shamil Salakhetdinov" >> To: "Access Developers discussion and problem solving" >> >> Sent: Thursday, March 23, 2006 8:32 AM >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> >> >>> Hi All, >>> >>> New version (1.9.5) of the subject test released at >>> >>> http://smsconsulting.spb.ru/download/tests/a2dds.htm >>> >>> It collects complete MS Access process information (loaded DLLs) now and >>> writes it to XML file. >>> It also collects system information(menory usage, MS Access context and >>> locale) and writes into XML file. >>> >>> Both XML files are well formed and can be imported into MS Access >>> database. >>> >>> Now it's possible to compare Access 2003 SP1 and Access 2003 SP2 and >>> related >>> DLLs versions to see which ones are upgraded in MS Access SP2... >>> >>> Shamil >>> >>> >> <<< tail skipped >>> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From pbhuisman at msn.com Fri Mar 24 09:01:07 2006 From: pbhuisman at msn.com (Phil Huisman) Date: Fri, 24 Mar 2006 07:01:07 -0800 Subject: [AccessD] Access help needed by my brother's friend References: <916187228923D311A6FE00A0CC3FAA30D35152@ADGSERVER> Message-ID: Bobby, Thank you for the information. I noticed there is a wizard for splitting the database, which I tried and it successfully created a BE database with only the tables. What confused me is the original DB still has the tables in it. I kind of expected the tables to be removed when the BE was created. So, does that mean I need to manually create another DB with only the forms, queries, etc. for the FE? Once I have a FE without tables and the BE with only tables, the BE resides on the host computer and the FE is distributes to the other PC's on the network? To distribute the FE do I simply copy the same FE DB to the other PC's on the network? Is the linking routine done from the host PC that has the BE DB or from the other PC's that have the FE DB? Or does it matter? Once all of this is accomplished, will multiple PC's be able to update the BE DB simultaneously, assuming they are not updating the same record? I hope this makes sense. Phil ----- Original Message ----- From: Bobby Heid To: 'Access Developers discussion and problem solving' ; 'Phil Huisman' Sent: Thursday, March 23, 2006 5:12 AM Subject: Re: [AccessD] Access help needed by my brother's friend Phil, I am assuming that you have the forms/code and the tables in one database. You need to split the database into a front-end (FE) and back-end (BE). That is, you have a database that only contains the data (tables) and another database that has all of the code/forms/reports/etc. in it. You link to the tables in the BE from the FE by going to File/Get External Data/Link tables and then locating the BE and selecting all of the tables that you want to be linked to the FE. Then you put the BE in one place and distribute the FE to all of the users. Without going into a lot of detail about auto-linking the tables, you should link the tables in each FE database to the one BE database. Hope this helps, Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Kathryn Bassett Sent: Wednesday, March 22, 2006 2:06 PM To: 'Phil Huisman'; 'Access Developers discussion and problem solving' Subject: [AccessD] Access help needed by my brother's friend Phil, I'm forwarding your message to a list called AccessD run by DataBaseAdvisors http://www.databaseadvisors.com/lists/whatandhow.htm as the scope of your request is beyond my skills. I highly recommend you join the list right away to see answers from people who reply to the list instead of directly to you. I'm positive someone will be able to help you. -- Kathryn Rhinehart Bassett (Pasadena CA) "Genealogy is my bag" "GH is my soap" kathryn at bassett.net http://bassett.net -----Original Message----- From: Phil Huisman [mailto:pbhuisman at msn.com] Sent: 21 Mar 2006 7:02 am To: kathryn at bassett.net Subject: Ken Rhinehart My name is Phil Huisman and your brother Ken gave me your name as a possible contact for help with Microsoft Access. I recently developed an Access database program for a ministry I am involved with at Glenkirk Church called Shepherd's Pantry. We need a DB to track people we serve so I decided to give it a try. After some struggling, I have managed to create a DB I think will meet our needs but there is one problem: we have a network of three PC's at the Pantry and the DB cannot be updated by all three PC's. I did manage to get all three PC's to share the DB but only in the 'read only' mode. Any changes to the database on PC's 2 or 3 cannot be saved? We get an error message but I forget exactly what the message says. I am using Microsoft Office 2003 Access, and XP Home operating system on new Dell PC's. The three PC's are networked together through a Linksys router. I take it we cannot just use standard Access in a network and be able to update the database from multiple PC's? It occurred to me we made need to have a dedicated server running Windows NT or something like that? Anyway, I hope this makes sense and would certainly appreciate any help you can provide. Thank you, Phil Huisman -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Fri Mar 24 09:47:54 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Fri, 24 Mar 2006 18:47:54 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant><004601c64932$45f25660$6501a8c0@Nant><000801c649ea$ef906370$6501a8c0@Nant><000a01c64c27$65ddfb80$6501a8c0@Nant><000e01c64d24$70070ef0$6501a8c0@Nant><000c01c64db9$f195e960$6501a8c0@Nant><003a01c64dbd$65180af0$6501a8c0@Nant><001401c64e3b$2c6f81a0$6501a8c0@Nant><005101c64e84$119b5540$6501a8c0@Nant><002d01c64f30$d70c2640$6501a8c0@Nant> <442401EF.2040704@san.rr.com> Message-ID: <007101c64f5a$55061230$6501a8c0@Nant> Thank you, Rocky, I maybe prepare this night some corrections to try to catch the problem below with more log information written and then it should be possible to run the test on weekend - below are the two results (yours) and from Jim Moss - they are for different backends but break on the same 8729 cycle. Looks like a pattern. But I must say I think I see something like that the first time in my long programming experience. Very strange. Any explanations, anybody? (Please note that the quantity of created custom classes are different for these two cases - this is probably because the class instance for subform was created less times in the second case because creation of this class instance depends on data and the data "shuffling" and updating use random numbers generator....). Jim Moss ======== ADODB Bound Forms Crash Test v.1.9.6 [23-MAR-06] Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 2113 - The value you entered isn't valid for this field. Backend: MS SQL Binding: ADODB Cycles to pass: 10000 Cycles passed: 8729 Total errors: 1 Forms opened: 43644 Start time: 3/23/2006 4:32:18 PM End time: 3/24/2006 6:13:39 AM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 271651, Disposed = 271651 Rocky Smolin ============ ADODB Bound Forms Crash Test v.1.9.6 [23-MAR-06] Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 2113 - The value you entered isn't valid for this field. Backend: MS Access Binding: ADODB Cycles to pass: 20000 Cycles passed: 8729 Total errors: 1 Forms opened: 43644 Start time: 3/23/2006 10:49:52 PM End time: 3/24/2006 5:48:18 AM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 269530, Disposed = 269530 Shamil ----- Original Message ----- From: "Rocky Smolin - Beach Access Software" To: "Access Developers discussion and problem solving" Sent: Friday, March 24, 2006 5:27 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil: > > Do you want us to run it again with this new version? > > Rocky > > Shamil Salakhetdinov wrote: >> Hi All, >> >> New version (1.9.7) is available on >> http://smsconsulting.spb.ru/download/tests/a2dds.htm - this is just a >> maintenance/bug fix release - no new features. >> >> Best regards, >> Shamil >> -- >> Web: http://smsconsulting.spb.ru/shamil_s >> >> ----- Original Message ----- >> From: "Shamil Salakhetdinov" >> To: "Access Developers discussion and problem solving" >> >> Sent: Thursday, March 23, 2006 5:13 PM >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> >> >>> Hi All, >>> >>> New version (1.9.6) of the subject test released at >>> >>> http://smsconsulting.spb.ru/download/tests/a2dds.htm >>> >>> You can now use Customers form to manually add and deleted rows, which >>> are >>> bound to disconnected ADODB recordsets. >>> The code to automate testing of inserting and deleting is under >>> development. >>> And it is planned to be released over weekend. >>> >>> Here are two new success stories for the test - over 2010 cycles passed >>> OK >>> (not my PC - others) - Access SP2 seems to be a solution: >>> >>> <<<+ >>> Test successfully finished. >>> >>> Backend: MS Access >>> Binding: ADODB >>> Cycles to pass: 3000 >>> Cycles passed: 3000 >>> Total errors: 0 >>> Forms opened: 15000 >>> Start time: 3/22/2006 2:10:25 PM >>> End time: 3/22/2006 4:28:43 PM >>> >>> Object statistics: >>> ClassName = CTestForm, Created = 6, Disposed = 6 >>> ClassName = CFormDataset, Created = 107634, Disposed = 107634 >>> ->>> >>> >>> <<<+ >>> Backend: MS Access >>> Binding: ADODB >>> Cycles to pass: 2600 >>> Cycles passed: 2600 >>> Total errors: 0 >>> Forms opened: 13000 >>> Start time: 22/03/2006 10:00:18 AM >>> End time: 22/03/2006 2:21:28 PM >>> >>> Object statistics: >>> ClassName = CTestForm, Created = 6, Disposed = 6 >>> ClassName = CFormDataset, Created = 93583, Disposed = 93583 >>> ->>> >>> >>> Shamil >>> >>> ----- Original Message ----- >>> From: "Shamil Salakhetdinov" >>> To: "Access Developers discussion and problem solving" >>> >>> Sent: Thursday, March 23, 2006 8:32 AM >>> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >>> >>> >>> >>>> Hi All, >>>> >>>> New version (1.9.5) of the subject test released at >>>> >>>> http://smsconsulting.spb.ru/download/tests/a2dds.htm >>>> >>>> It collects complete MS Access process information (loaded DLLs) now >>>> and >>>> writes it to XML file. >>>> It also collects system information(menory usage, MS Access context and >>>> locale) and writes into XML file. >>>> >>>> Both XML files are well formed and can be imported into MS Access >>>> database. >>>> >>>> Now it's possible to compare Access 2003 SP1 and Access 2003 SP2 and >>>> related >>>> DLLs versions to see which ones are upgraded in MS Access SP2... >>>> >>>> Shamil >>>> >>>> >>> <<< tail skipped >>> >>> >>> -- >>> AccessD mailing list >>> AccessD at databaseadvisors.com >>> http://databaseadvisors.com/mailman/listinfo/accessd >>> Website: http://www.databaseadvisors.com >>> >> >> > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From bheid at appdevgrp.com Fri Mar 24 09:50:10 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Fri, 24 Mar 2006 10:50:10 -0500 Subject: [AccessD] Access help needed by my brother's friend In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D78E1E@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D35171@ADGSERVER> Hi Phil, Comments in-line. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Phil Huisman Sent: Friday, March 24, 2006 10:01 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access help needed by my brother's friend Bobby, >Thank you for the information. I noticed there is a wizard for splitting the database, which I tried and >it successfully created a BE database with only the tables. What confused me is the original DB still >has the tables in it. I kind of expected the tables to be removed when the BE was created. So, does >that mean I need to manually create another DB with only the forms, queries, etc. for the FE? Assuming that what was left in the FE are not links to the BE (the linked tables have a little arrow to the left of the table name (at least in list view)), you should be able to just delete the existing tables that are in the FE db. I always design my systems with a FE/BE design, so I have not ever had to split one. >Once I have a FE without tables and the BE with only tables, the BE >resides on the host computer and the FE is distributes to the other >PC's on the network? That is correct. >To distribute the FE do I simply copy the same >FE DB to the other PC's on the network? Yes, assuming that the other PCs have Access on them. Note that you should be compiling the FE and giving the MDE to the users. >Is the linking routine done from the host PC that has the BE DB >or from the other PC's that have the FE DB? Or does it matter? The links will be in the FE - linking to the BE tables. >Once all of this is accomplished, will multiple PC's be able to >update the BE DB simultaneously, assuming they are not updating >the same record? Theoretically yes. It depends on how the system was designed. You will really just have to test it out to be sure. >I hope this makes sense. >Phil ----- Original Message ----- From: Bobby Heid To: 'Access Developers discussion and problem solving' ; 'Phil Huisman' Sent: Thursday, March 23, 2006 5:12 AM Subject: Re: [AccessD] Access help needed by my brother's friend Phil, I am assuming that you have the forms/code and the tables in one database. You need to split the database into a front-end (FE) and back-end (BE). That is, you have a database that only contains the data (tables) and another database that has all of the code/forms/reports/etc. in it. You link to the tables in the BE from the FE by going to File/Get External Data/Link tables and then locating the BE and selecting all of the tables that you want to be linked to the FE. Then you put the BE in one place and distribute the FE to all of the users. Without going into a lot of detail about auto-linking the tables, you should link the tables in each FE database to the one BE database. Hope this helps, Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Kathryn Bassett Sent: Wednesday, March 22, 2006 2:06 PM To: 'Phil Huisman'; 'Access Developers discussion and problem solving' Subject: [AccessD] Access help needed by my brother's friend Phil, I'm forwarding your message to a list called AccessD run by DataBaseAdvisors http://www.databaseadvisors.com/lists/whatandhow.htm as the scope of your request is beyond my skills. I highly recommend you join the list right away to see answers from people who reply to the list instead of directly to you. I'm positive someone will be able to help you. -- Kathryn Rhinehart Bassett (Pasadena CA) "Genealogy is my bag" "GH is my soap" kathryn at bassett.net http://bassett.net -----Original Message----- From: Phil Huisman [mailto:pbhuisman at msn.com] Sent: 21 Mar 2006 7:02 am To: kathryn at bassett.net Subject: Ken Rhinehart My name is Phil Huisman and your brother Ken gave me your name as a possible contact for help with Microsoft Access. I recently developed an Access database program for a ministry I am involved with at Glenkirk Church called Shepherd's Pantry. We need a DB to track people we serve so I decided to give it a try. After some struggling, I have managed to create a DB I think will meet our needs but there is one problem: we have a network of three PC's at the Pantry and the DB cannot be updated by all three PC's. I did manage to get all three PC's to share the DB but only in the 'read only' mode. Any changes to the database on PC's 2 or 3 cannot be saved? We get an error message but I forget exactly what the message says. I am using Microsoft Office 2003 Access, and XP Home operating system on new Dell PC's. The three PC's are networked together through a Linksys router. I take it we cannot just use standard Access in a network and be able to update the database from multiple PC's? It occurred to me we made need to have a dedicated server running Windows NT or something like that? Anyway, I hope this makes sense and would certainly appreciate any help you can provide. Thank you, Phil Huisman From Gustav at cactus.dk Fri Mar 24 10:38:24 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 24 Mar 2006 17:38:24 +0100 Subject: [AccessD] Access and MySQL Message-ID: Hi Ervin Have a look here for an OLE DB provider: http://luggle.com/~sean/frames/root.php /gustav >>> viner at eunet.yu 24-03-2006 13:41:41 >>> I know, today is Friday, but I just started to "play" with Access connected (throught MyODBC) and MySQL. Can you recommend any useful: hint, code, sample application? TIA, Ervin From bchacc at san.rr.com Fri Mar 24 11:05:36 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Fri, 24 Mar 2006 09:05:36 -0800 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <007101c64f5a$55061230$6501a8c0@Nant> References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805> <001301c6472c$d5602960$6501a8c0@Nant> <001001c64751$d4b89ef0$6501a8c0@Nant> <007101c6478b$4c9e8040$6501a8c0@Nant> <001201c647a3$3283af10$6501a8c0@Nant> <001101c64810$f9ad0420$6501a8c0@Nant> <004601c64932$45f25660$6501a8c0@Nant> <000801c649ea$ef906370$6501a8c0@Nant> <000a01c64c27$65ddfb80$6501a8c0@Nant> <000e01c64d24$70070ef0$6501a8c0@Nant> <000c01c64db9$f195e960$6501a8c0@Nant> <003a01c64dbd$65180af0$6501a8c0@Nant> <001401c64e3b$2c6f81a0$6501a8c0@Nant> <005101c64e84$119b5540$6501a8c0@Nant> <002d01c64f30$d70c2640$6501a8c0@Nant> <442401EF.2040704@san.rr.com> <007101c64f5a$55061230$6501a8c0@Nant> Message-ID: <442426E0.6040808@san.rr.com> Well, let us know when the new version is ready. And I'll run both the mdb and the adp. I have a lot of idle cycles on the weekend. :-) (Computer has some, too) Rocky Shamil Salakhetdinov wrote: > Thank you, Rocky, > > I maybe prepare this night some corrections to try to catch the problem > below with more log information written and then it should be possible to > run the test on weekend - below are the two results (yours) and from Jim > Moss - they are for different backends but break on the same 8729 cycle. > Looks like a pattern. But I must say I think I see something like that the > first time in my long programming experience. Very strange. Any > explanations, anybody? (Please note that the quantity of created custom > classes are different for these two cases - this is probably because the > class instance for subform was created less times in the second case because > creation of this class instance depends on data and the data "shuffling" and > updating use random numbers generator....). > > Jim Moss > ======== > ADODB Bound Forms Crash Test v.1.9.6 [23-MAR-06] > > Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 2113 - The value you > entered isn't valid for this field. > > Backend: MS SQL > Binding: ADODB > Cycles to pass: 10000 > Cycles passed: 8729 > Total errors: 1 > Forms opened: 43644 > Start time: 3/23/2006 4:32:18 PM > End time: 3/24/2006 6:13:39 AM > > Object statistics: > ClassName = CTestForm, Created = 6, Disposed = 6 > ClassName = CFormDataset, Created = 271651, Disposed = 271651 > > > Rocky Smolin > ============ > ADODB Bound Forms Crash Test v.1.9.6 [23-MAR-06] > > Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 2113 - The value you > entered isn't valid for this field. > > Backend: MS Access > Binding: ADODB > Cycles to pass: 20000 > Cycles passed: 8729 > Total errors: 1 > Forms opened: 43644 > Start time: 3/23/2006 10:49:52 PM > End time: 3/24/2006 5:48:18 AM > > Object statistics: > ClassName = CTestForm, Created = 6, Disposed = 6 > ClassName = CFormDataset, Created = 269530, Disposed = 269530 > > Shamil > > ----- Original Message ----- > From: "Rocky Smolin - Beach Access Software" > To: "Access Developers discussion and problem solving" > > Sent: Friday, March 24, 2006 5:27 PM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > > >> Shamil: >> >> Do you want us to run it again with this new version? >> >> Rocky >> >> Shamil Salakhetdinov wrote: >> >>> Hi All, >>> >>> New version (1.9.7) is available on >>> http://smsconsulting.spb.ru/download/tests/a2dds.htm - this is just a >>> maintenance/bug fix release - no new features. >>> >>> Best regards, >>> Shamil >>> -- >>> Web: http://smsconsulting.spb.ru/shamil_s >>> >>> ----- Original Message ----- >>> From: "Shamil Salakhetdinov" >>> To: "Access Developers discussion and problem solving" >>> >>> Sent: Thursday, March 23, 2006 5:13 PM >>> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >>> >>> >>> >>> >>>> Hi All, >>>> >>>> New version (1.9.6) of the subject test released at >>>> >>>> http://smsconsulting.spb.ru/download/tests/a2dds.htm >>>> >>>> You can now use Customers form to manually add and deleted rows, which >>>> are >>>> bound to disconnected ADODB recordsets. >>>> The code to automate testing of inserting and deleting is under >>>> development. >>>> And it is planned to be released over weekend. >>>> >>>> Here are two new success stories for the test - over 2010 cycles passed >>>> OK >>>> (not my PC - others) - Access SP2 seems to be a solution: >>>> >>>> <<<+ >>>> Test successfully finished. >>>> >>>> Backend: MS Access >>>> Binding: ADODB >>>> Cycles to pass: 3000 >>>> Cycles passed: 3000 >>>> Total errors: 0 >>>> Forms opened: 15000 >>>> Start time: 3/22/2006 2:10:25 PM >>>> End time: 3/22/2006 4:28:43 PM >>>> >>>> Object statistics: >>>> ClassName = CTestForm, Created = 6, Disposed = 6 >>>> ClassName = CFormDataset, Created = 107634, Disposed = 107634 >>>> ->>> >>>> >>>> <<<+ >>>> Backend: MS Access >>>> Binding: ADODB >>>> Cycles to pass: 2600 >>>> Cycles passed: 2600 >>>> Total errors: 0 >>>> Forms opened: 13000 >>>> Start time: 22/03/2006 10:00:18 AM >>>> End time: 22/03/2006 2:21:28 PM >>>> >>>> Object statistics: >>>> ClassName = CTestForm, Created = 6, Disposed = 6 >>>> ClassName = CFormDataset, Created = 93583, Disposed = 93583 >>>> ->>> >>>> >>>> Shamil >>>> >>>> ----- Original Message ----- >>>> From: "Shamil Salakhetdinov" >>>> To: "Access Developers discussion and problem solving" >>>> >>>> Sent: Thursday, March 23, 2006 8:32 AM >>>> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >>>> >>>> >>>> >>>> >>>>> Hi All, >>>>> >>>>> New version (1.9.5) of the subject test released at >>>>> >>>>> http://smsconsulting.spb.ru/download/tests/a2dds.htm >>>>> >>>>> It collects complete MS Access process information (loaded DLLs) now >>>>> and >>>>> writes it to XML file. >>>>> It also collects system information(menory usage, MS Access context and >>>>> locale) and writes into XML file. >>>>> >>>>> Both XML files are well formed and can be imported into MS Access >>>>> database. >>>>> >>>>> Now it's possible to compare Access 2003 SP1 and Access 2003 SP2 and >>>>> related >>>>> DLLs versions to see which ones are upgraded in MS Access SP2... >>>>> >>>>> Shamil >>>>> >>>>> >>>>> >>>> <<< tail skipped >>> >>>> >>>> -- >>>> AccessD mailing list >>>> AccessD at databaseadvisors.com >>>> http://databaseadvisors.com/mailman/listinfo/accessd >>>> Website: http://www.databaseadvisors.com >>>> >>>> >>> >> -- >> Rocky Smolin >> Beach Access Software >> 858-259-4334 >> www.e-z-mrp.com >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From KIsmert at TexasSystems.com Fri Mar 24 12:28:58 2006 From: KIsmert at TexasSystems.com (Ken Ismert) Date: Fri, 24 Mar 2006 12:28:58 -0600 Subject: [AccessD] Access and MySQL Message-ID: Ervin, With its new native Stored Procs and User-defined functions, MySQL 5.0 finally has key features that would interest most Access/SQL Server deveopers. If you're interested in migrating Access data to play with, check: Introduction to the MySQL Migration Toolkit http://dev.mysql.com/doc/migration-toolkit/en/mysql-migration-toolkit-in troduction.html Preparing a Microsoft Access Database for Migration http://dev.mysql.com/doc/migration-toolkit/en/mysql-migration-toolkit-ac cessprep.html MySQL Migration Toolkit Downloads http://dev.mysql.com/downloads/migration-toolkit/1.0.html -Ken -----Original Message----- From: Ervin Brindza [mailto:viner at EUnet.yu] Sent: Friday, March 24, 2006 6:42 AM To: AccessD at databaseadvisors.com Subject: [AccessD] Access and MySQL I know, today is Friday, but I just started to "play" with Access connected (throught MyODBC) and MySQL. Can you recommend any useful: hint, code, sample application? TIA, Ervin From dajomigo at tpg.com.au Fri Mar 24 15:29:16 2006 From: dajomigo at tpg.com.au (David & Joanne Gould) Date: Sat, 25 Mar 2006 08:29:16 +1100 Subject: [AccessD] Hide and show image In-Reply-To: <007b01c64f40$585cdd20$0100a8c0@RazvojErvin> References: <007b01c64f40$585cdd20$0100a8c0@RazvojErvin> Message-ID: <6.2.1.2.2.20060325082512.046f9ee8@mail.tpg.com.au> A database has a check box in its table/form for whether a certain location has wheelchair access or not. If it does have wheelchair access, then on a listing report, the usual wheelchair symbol is to be displayed next to its address. If it doesn't have access, a symbol is not displayed. 1. Can this be done and if so how? I couldn't find anywhere to set the code. 2. The only option I could think of was to actually store the image in the table with the user having to manually insert the image into the field. Can the insertion be automated based on their choice at the checkbox? TIA David From JHewson at karta.com Fri Mar 24 15:42:59 2006 From: JHewson at karta.com (Jim Hewson) Date: Fri, 24 Mar 2006 15:42:59 -0600 Subject: [AccessD] Hide and show image Message-ID: <9C382E065F54AE48BC3AA7925DCBB01C03ECAD4E@karta-exc-int.Karta.com> David, WI would use the image control with the picture of the wheelchair (bmp). The image control can be scaled to the size you need. Just make sure the Size Mode is set to Zoom. Then use code to hide or unhide the image control as needed using the docmd visible command. For example: On the after update event of the checkbox use a simple if statement. If Check6 = 0 Then Me.Image5.Visible = False Else Me.Image5.Visible = True End If Then when it's checked the Wheelchair will show, unchecked the image is not shown. HTH Jim jhewson at karta.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & Joanne Gould Sent: Friday, March 24, 2006 3:29 PM To: Access Developers discussion and problem solving Subject: [AccessD] Hide and show image A database has a check box in its table/form for whether a certain location has wheelchair access or not. If it does have wheelchair access, then on a listing report, the usual wheelchair symbol is to be displayed next to its address. If it doesn't have access, a symbol is not displayed. 1. Can this be done and if so how? I couldn't find anywhere to set the code. 2. The only option I could think of was to actually store the image in the table with the user having to manually insert the image into the field. Can the insertion be automated based on their choice at the checkbox? TIA David -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From dajomigo at tpg.com.au Fri Mar 24 16:08:38 2006 From: dajomigo at tpg.com.au (David & Joanne Gould) Date: Sat, 25 Mar 2006 09:08:38 +1100 Subject: [AccessD] Hide and show image In-Reply-To: <9C382E065F54AE48BC3AA7925DCBB01C03ECAD4E@karta-exc-int.Kar ta.com> References: <9C382E065F54AE48BC3AA7925DCBB01C03ECAD4E@karta-exc-int.Karta.com> Message-ID: <6.2.1.2.2.20060325090627.047188e0@mail.tpg.com.au> Jim Thanks for you quick response. Are you talking about the report or the form? If the report, where do I put code as I couldn't find anywhere for it? If the form, how do I store the image into the table? TIA David At 08:42 AM 25/03/2006, you wrote: >David, >WI would use the image control with the picture of the wheelchair >(bmp). The image control can be scaled to the size you need. Just make >sure the Size Mode is set to Zoom. Then use code to hide or unhide the >image control as needed using the docmd visible command. >For example: >On the after update event of the checkbox use a simple if statement. > > If Check6 = 0 Then > Me.Image5.Visible = False > Else > Me.Image5.Visible = True > End If > >Then when it's checked the Wheelchair will show, unchecked the image is >not shown. > >HTH > >Jim >jhewson at karta.com > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & Joanne Gould >Sent: Friday, March 24, 2006 3:29 PM >To: Access Developers discussion and problem solving >Subject: [AccessD] Hide and show image > > >A database has a check box in its table/form for whether a certain location >has wheelchair access or not. If it does have wheelchair access, then on a >listing report, the usual wheelchair symbol is to be displayed next to its >address. If it doesn't have access, a symbol is not displayed. > >1. Can this be done and if so how? I couldn't find anywhere to set the code. >2. The only option I could think of was to actually store the image in the >table with the user having to manually insert the image into the field. Can >the insertion be automated based on their choice at the checkbox? > >TIA > >David > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From wdhindman at bellsouth.net Fri Mar 24 16:13:09 2006 From: wdhindman at bellsouth.net (William Hindman) Date: Fri, 24 Mar 2006 17:13:09 -0500 Subject: [AccessD] Hide and show image References: <9C382E065F54AE48BC3AA7925DCBB01C03ECAD4E@karta-exc-int.Karta.com> Message-ID: <002c01c64f90$22860050$6101a8c0@50NM721> ...I'd consider using the Unicode font wheelchair symbol U+267F instead of an image graphic ...if they don't have a suitable font already installed you can install it with your distribution ...you can then use an IIF to determine whether it gets displayed ...should be much quicker and simpler than an image. William ----- Original Message ----- From: "Jim Hewson" To: "Access Developers discussion and problem solving" Sent: Friday, March 24, 2006 4:42 PM Subject: Re: [AccessD] Hide and show image > David, > WI would use the image control with the picture of the wheelchair (bmp). > The image control can be scaled to the size you need. Just make sure the > Size Mode is set to Zoom. Then use code to hide or unhide the image > control as needed using the docmd visible command. > For example: > On the after update event of the checkbox use a simple if statement. > > If Check6 = 0 Then > Me.Image5.Visible = False > Else > Me.Image5.Visible = True > End If > > Then when it's checked the Wheelchair will show, unchecked the image is > not shown. > > HTH > > Jim > jhewson at karta.com > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & Joanne > Gould > Sent: Friday, March 24, 2006 3:29 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Hide and show image > > > A database has a check box in its table/form for whether a certain > location > has wheelchair access or not. If it does have wheelchair access, then on a > listing report, the usual wheelchair symbol is to be displayed next to its > address. If it doesn't have access, a symbol is not displayed. > > 1. Can this be done and if so how? I couldn't find anywhere to set the > code. > 2. The only option I could think of was to actually store the image in the > table with the user having to manually insert the image into the field. > Can > the insertion be automated based on their choice at the checkbox? > > TIA > > David > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From JHewson at karta.com Fri Mar 24 16:12:22 2006 From: JHewson at karta.com (Jim Hewson) Date: Fri, 24 Mar 2006 16:12:22 -0600 Subject: [AccessD] Hide and show image Message-ID: <9C382E065F54AE48BC3AA7925DCBB01C03ECAD56@karta-exc-int.Karta.com> I was talking about a form. On a report, you can use the same procedure except put the image control in the detail section and use the if statement in Format event. The image will show or not show as needed. Jim jhewson at karta.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & Joanne Gould Sent: Friday, March 24, 2006 4:09 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Hide and show image Jim Thanks for you quick response. Are you talking about the report or the form? If the report, where do I put code as I couldn't find anywhere for it? If the form, how do I store the image into the table? TIA David At 08:42 AM 25/03/2006, you wrote: >David, >WI would use the image control with the picture of the wheelchair >(bmp). The image control can be scaled to the size you need. Just make >sure the Size Mode is set to Zoom. Then use code to hide or unhide the >image control as needed using the docmd visible command. >For example: >On the after update event of the checkbox use a simple if statement. > > If Check6 = 0 Then > Me.Image5.Visible = False > Else > Me.Image5.Visible = True > End If > >Then when it's checked the Wheelchair will show, unchecked the image is >not shown. > >HTH > >Jim >jhewson at karta.com > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & Joanne Gould >Sent: Friday, March 24, 2006 3:29 PM >To: Access Developers discussion and problem solving >Subject: [AccessD] Hide and show image > > >A database has a check box in its table/form for whether a certain location >has wheelchair access or not. If it does have wheelchair access, then on a >listing report, the usual wheelchair symbol is to be displayed next to its >address. If it doesn't have access, a symbol is not displayed. > >1. Can this be done and if so how? I couldn't find anywhere to set the code. >2. The only option I could think of was to actually store the image in the >table with the user having to manually insert the image into the field. Can >the insertion be automated based on their choice at the checkbox? > >TIA > >David > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From dajomigo at tpg.com.au Fri Mar 24 17:02:28 2006 From: dajomigo at tpg.com.au (David & Joanne Gould) Date: Sat, 25 Mar 2006 10:02:28 +1100 Subject: [AccessD] Hide and show image In-Reply-To: <9C382E065F54AE48BC3AA7925DCBB01C03ECAD56@karta-exc-int.Kar ta.com> References: <9C382E065F54AE48BC3AA7925DCBB01C03ECAD56@karta-exc-int.Karta.com> Message-ID: <6.2.1.2.2.20060325100210.04716220@mail.tpg.com.au> Thanks Jim Works a treat David At 09:12 AM 25/03/2006, you wrote: >I was talking about a form. >On a report, you can use the same procedure except put the image control >in the detail section and use the if statement in Format event. >The image will show or not show as needed. > >Jim >jhewson at karta.com > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & Joanne Gould >Sent: Friday, March 24, 2006 4:09 PM >To: Access Developers discussion and problem solving >Subject: Re: [AccessD] Hide and show image > >Jim > >Thanks for you quick response. > >Are you talking about the report or the form? > >If the report, where do I put code as I couldn't find anywhere for it? > >If the form, how do I store the image into the table? > >TIA > >David > >At 08:42 AM 25/03/2006, you wrote: > >David, > >WI would use the image control with the picture of the wheelchair > >(bmp). The image control can be scaled to the size you need. Just make > >sure the Size Mode is set to Zoom. Then use code to hide or unhide the > >image control as needed using the docmd visible command. > >For example: > >On the after update event of the checkbox use a simple if statement. > > > > If Check6 = 0 Then > > Me.Image5.Visible = False > > Else > > Me.Image5.Visible = True > > End If > > > >Then when it's checked the Wheelchair will show, unchecked the image is > >not shown. > > > >HTH > > > >Jim > >jhewson at karta.com > > > >-----Original Message----- > >From: accessd-bounces at databaseadvisors.com > >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & > Joanne Gould > >Sent: Friday, March 24, 2006 3:29 PM > >To: Access Developers discussion and problem solving > >Subject: [AccessD] Hide and show image > > > > > >A database has a check box in its table/form for whether a certain location > >has wheelchair access or not. If it does have wheelchair access, then on a > >listing report, the usual wheelchair symbol is to be displayed next to its > >address. If it doesn't have access, a symbol is not displayed. > > > >1. Can this be done and if so how? I couldn't find anywhere to set the code. > >2. The only option I could think of was to actually store the image in the > >table with the user having to manually insert the image into the field. Can > >the insertion be automated based on their choice at the checkbox? > > > >TIA > > > >David > > > > > >-- > >AccessD mailing list > >AccessD at databaseadvisors.com > >http://databaseadvisors.com/mailman/listinfo/accessd > >Website: http://www.databaseadvisors.com > >-- > >AccessD mailing list > >AccessD at databaseadvisors.com > >http://databaseadvisors.com/mailman/listinfo/accessd > >Website: http://www.databaseadvisors.com > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From dajomigo at tpg.com.au Fri Mar 24 17:03:38 2006 From: dajomigo at tpg.com.au (David & Joanne Gould) Date: Sat, 25 Mar 2006 10:03:38 +1100 Subject: [AccessD] Hide and show image In-Reply-To: <002c01c64f90$22860050$6101a8c0@50NM721> References: <9C382E065F54AE48BC3AA7925DCBB01C03ECAD4E@karta-exc-int.Karta.com> <002c01c64f90$22860050$6101a8c0@50NM721> Message-ID: <6.2.1.2.2.20060325100240.0475d610@mail.tpg.com.au> Thanks William I will look into your suggestion. It's something I haven't used before. This time I have used Jim's solution. Thanks again David At 09:13 AM 25/03/2006, you wrote: >...I'd consider using the Unicode font wheelchair symbol U+267F instead of >an image graphic ...if they don't have a suitable font already installed you >can install it with your distribution ...you can then use an IIF to >determine whether it gets displayed ...should be much quicker and simpler >than an image. > >William > >----- Original Message ----- >From: "Jim Hewson" >To: "Access Developers discussion and problem solving" > >Sent: Friday, March 24, 2006 4:42 PM >Subject: Re: [AccessD] Hide and show image > > > > David, > > WI would use the image control with the picture of the wheelchair (bmp). > > The image control can be scaled to the size you need. Just make sure the > > Size Mode is set to Zoom. Then use code to hide or unhide the image > > control as needed using the docmd visible command. > > For example: > > On the after update event of the checkbox use a simple if statement. > > > > If Check6 = 0 Then > > Me.Image5.Visible = False > > Else > > Me.Image5.Visible = True > > End If > > > > Then when it's checked the Wheelchair will show, unchecked the image is > > not shown. > > > > HTH > > > > Jim > > jhewson at karta.com > > > > -----Original Message----- > > From: accessd-bounces at databaseadvisors.com > > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & Joanne > > Gould > > Sent: Friday, March 24, 2006 3:29 PM > > To: Access Developers discussion and problem solving > > Subject: [AccessD] Hide and show image > > > > > > A database has a check box in its table/form for whether a certain > > location > > has wheelchair access or not. If it does have wheelchair access, then on a > > listing report, the usual wheelchair symbol is to be displayed next to its > > address. If it doesn't have access, a symbol is not displayed. > > > > 1. Can this be done and if so how? I couldn't find anywhere to set the > > code. > > 2. The only option I could think of was to actually store the image in the > > table with the user having to manually insert the image into the field. > > Can > > the insertion be automated based on their choice at the checkbox? > > > > TIA > > > > David > > > > > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From shamil at users.mns.ru Fri Mar 24 17:30:27 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Sat, 25 Mar 2006 02:30:27 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant><004601c64932$45f25660$6501a8c0@Nant><000801c649ea$ef906370$6501a8c0@Nant><000a01c64c27$65ddfb80$6501a8c0@Nant><000e01c64d24$70070ef0$6501a8c0@Nant><000c01c64db9$f195e960$6501a8c0@Nant><003a01c64dbd$65180af0$6501a8c0@Nant><001401c64e3b$2c6f81a0$6501a8c0@Nant><005101c64e84$119b5540$6501a8c0@Nant><002d01c64f30$d70c2640$6501a8c0@Nant> <442401EF.2040704@san.rr.com><007101c64f5a$55061230$6501a8c0@Nant> <442426E0.6040808@san.rr.com> Message-ID: <000c01c64f9a$f37448c0$6501a8c0@Nant> Hi All, New version (1.9.8) is published - http://smsconsulting.spb.ru/download/tests/a2dds.htm. It should give more detailed results about errors if they appear. Make your PCs busy over weekend! :) Shamil ----- Original Message ----- From: "Rocky Smolin - Beach Access Software" To: "Access Developers discussion and problem solving" Sent: Friday, March 24, 2006 8:05 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Well, let us know when the new version is ready. And I'll run both the > mdb and the adp. I have a lot of idle cycles on the weekend. :-) > (Computer has some, too) > > Rocky > > <<< tail skipped >>> From jwcolby at ColbyConsulting.com Fri Mar 24 19:46:47 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Fri, 24 Mar 2006 20:46:47 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <000c01c64f9a$f37448c0$6501a8c0@Nant> Message-ID: <002e01c64fad$faf6e9a0$647aa8c0@ColbyM6805> Shamil, I got a "not enough memory" error message on the 69th pass. AXP. I sent the error email and the XML File. Access is using 182 meg after the close. Looks like a memory leak perhaps. I will start over and watch the Access instance in Task Manager. What I have discovered by watching task manager while stepping through the code is that this code: 480 For i = 1 To 3 ' set form controls values 490 TrashForm accApp, frm 500 For Each ectl In frm.Controls 510 If Len(ControlSource(ectl)) > 0 Then 520 If ectl.ControlSource = avar(lngIdx + 1) Then 'Debug.Print avar(lngIdx) & "." & avar(lngIdx + 1) 530 Else 540 If UsualFormBinding = False Then 'ss:17mar06 550 FakeSetControlValue ectl 560 End If 570 End If 580 End If 590 Next ectl 600 Next I Is adding memory on line 550 and then when it cycles back up to 490 it adds still more memory. This memory does not appear to be returned. I am wondering if the container is expanding and the Access instance is adding memory to hold pieces or something. I do know that the TrashForm is adding memory occasionally at line 30 30 Set rst = rfrm.RecordsetClone And again occasionally when the rfrm.bookmark is set. I added code to close the rst (pointer to recordsetclone) and set it to nothing but that does NOT return the memory. I added a while 1 trashform Wend And the memory just climbs steadily. I don't have an answer to why, nor how to get the memory back. With the rst.close; set rst = nothing In TrashForm I have added the only thing I can think of to coax the system to give it back and no dice. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Friday, March 24, 2006 6:30 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Hi All, New version (1.9.8) is published - http://smsconsulting.spb.ru/download/tests/a2dds.htm. It should give more detailed results about errors if they appear. Make your PCs busy over weekend! :) Shamil ----- Original Message ----- From: "Rocky Smolin - Beach Access Software" To: "Access Developers discussion and problem solving" Sent: Friday, March 24, 2006 8:05 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Well, let us know when the new version is ready. And I'll run both the > mdb and the adp. I have a lot of idle cycles on the weekend. :-) > (Computer has some, too) > > Rocky > > <<< tail skipped >>> -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From developer at ultradnt.com Fri Mar 24 20:07:42 2006 From: developer at ultradnt.com (Steve Conklin) Date: Fri, 24 Mar 2006 21:07:42 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <002e01c64fad$faf6e9a0$647aa8c0@ColbyM6805> Message-ID: <200603250207.k2P27Wv90565@ultradnt.com> My A2k3 is at 168 mb mem, crashed at 72 cycles. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Friday, March 24, 2006 8:47 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Shamil, I got a "not enough memory" error message on the 69th pass. AXP. I sent the error email and the XML File. Access is using 182 meg after the close. Looks like a memory leak perhaps. I will start over and watch the Access instance in Task Manager. What I have discovered by watching task manager while stepping through the code is that this code: 480 For i = 1 To 3 ' set form controls values 490 TrashForm accApp, frm 500 For Each ectl In frm.Controls 510 If Len(ControlSource(ectl)) > 0 Then 520 If ectl.ControlSource = avar(lngIdx + 1) Then 'Debug.Print avar(lngIdx) & "." & avar(lngIdx + 1) 530 Else 540 If UsualFormBinding = False Then 'ss:17mar06 550 FakeSetControlValue ectl 560 End If 570 End If 580 End If 590 Next ectl 600 Next I Is adding memory on line 550 and then when it cycles back up to 490 it adds still more memory. This memory does not appear to be returned. I am wondering if the container is expanding and the Access instance is adding memory to hold pieces or something. I do know that the TrashForm is adding memory occasionally at line 30 30 Set rst = rfrm.RecordsetClone And again occasionally when the rfrm.bookmark is set. I added code to close the rst (pointer to recordsetclone) and set it to nothing but that does NOT return the memory. I added a while 1 trashform Wend And the memory just climbs steadily. I don't have an answer to why, nor how to get the memory back. With the rst.close; set rst = nothing In TrashForm I have added the only thing I can think of to coax the system to give it back and no dice. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Friday, March 24, 2006 6:30 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Hi All, New version (1.9.8) is published - http://smsconsulting.spb.ru/download/tests/a2dds.htm. It should give more detailed results about errors if they appear. Make your PCs busy over weekend! :) Shamil ----- Original Message ----- From: "Rocky Smolin - Beach Access Software" To: "Access Developers discussion and problem solving" Sent: Friday, March 24, 2006 8:05 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Well, let us know when the new version is ready. And I'll run both > the mdb and the adp. I have a lot of idle cycles on the weekend. :-) > (Computer has some, too) > > Rocky > > <<< tail skipped >>> -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Fri Mar 24 23:41:00 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Sat, 25 Mar 2006 08:41:00 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <002e01c64fad$faf6e9a0$647aa8c0@ColbyM6805> Message-ID: <008a01c64fce$b3e40400$6501a8c0@Nant> John, Something is wrong with your installation I think. I did run the test with MS Access XP and it worked OK for 500 cycles, memory alloaction was ~46MB. <<< ADODB Bound Forms Crash Test v.1.9.8 [25-MAR-06] Test successfully finished. Backend: MS Access Binding: ADODB Cycles to pass: 500 Cycles passed: 500 Total errors: 0 Forms opened: 2500 Start time: 25.03.2006 7:53:05 End time: 25.03.2006 8:21:10 Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 23221, Disposed = 23220 >>> I have another system where MS Access XP doesn't work that good. We can compare what are the differences between your system and mine - the test creates a2dds_mdb_process.xml with the information about all the used DLLs etc. - this XML can be imported into MS Access mdb etc. - i.e. we can find the differences of our installations and what part of this installation creates the trouble. But the best and easiest looks like using MS Access 2003 SP2. The other systems create trouble, which doesn't worth (at least here) to spend time on guessing how to workaround, at least until MS Access 2003 SP2 will work stable for all teh update modes (inserts, update, delete) - currently only update is tested automatically and insert and delete can be tested manually for Customers form, which doesn't have Autonumber.... Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Saturday, March 25, 2006 4:46 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > I got a "not enough memory" error message on the 69th pass. AXP. I sent > the error email and the XML File. Access is using 182 meg after the > close. > Looks like a memory leak perhaps. I will start over and watch the Access > instance in Task Manager. > > What I have discovered by watching task manager while stepping through the > code is that this code: > > 480 For i = 1 To 3 > ' set form controls values > 490 TrashForm accApp, frm > 500 For Each ectl In frm.Controls > 510 If Len(ControlSource(ectl)) > 0 Then > 520 If ectl.ControlSource = avar(lngIdx + 1) Then > 'Debug.Print avar(lngIdx) & "." & avar(lngIdx > + 1) > 530 Else > 540 If UsualFormBinding = False Then 'ss:17mar06 > 550 FakeSetControlValue ectl > 560 End If > 570 End If > 580 End If > 590 Next ectl > 600 Next I > > Is adding memory on line 550 and then when it cycles back up to 490 it > adds > still more memory. This memory does not appear to be returned. I am > wondering if the container is expanding and the Access instance is adding > memory to hold pieces or something. > > I do know that the TrashForm is adding memory occasionally at line 30 > > 30 Set rst = rfrm.RecordsetClone > > And again occasionally when the rfrm.bookmark is set. > > I added code to close the rst (pointer to recordsetclone) and set it to > nothing but that does NOT return the memory. > > I added a > > while 1 > trashform > Wend > > And the memory just climbs steadily. > I don't have an answer to why, nor how to get the memory back. With the > > rst.close; set rst = nothing > > In TrashForm I have added the only thing I can think of to coax the system > to give it back and no dice. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Friday, March 24, 2006 6:30 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > Hi All, > > New version (1.9.8) is published - > http://smsconsulting.spb.ru/download/tests/a2dds.htm. > > It should give more detailed results about errors if they appear. > > Make your PCs busy over weekend! :) > > Shamil > > ----- Original Message ----- > From: "Rocky Smolin - Beach Access Software" > To: "Access Developers discussion and problem solving" > > Sent: Friday, March 24, 2006 8:05 PM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Well, let us know when the new version is ready. And I'll run both the >> mdb and the adp. I have a lot of idle cycles on the weekend. :-) >> (Computer has some, too) >> >> Rocky >> >> > <<< tail skipped >>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From Gustav at cactus.dk Sat Mar 25 04:27:48 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Sat, 25 Mar 2006 11:27:48 +0100 Subject: [AccessD] Hide and show image Message-ID: Hi David and Jim But the checkbox is only True or False: Me.Image5.Visible = Check6.Value /gustav >>> dajomigo at tpg.com.au 25-03-2006 00:02 >>> Thanks Jim Works a treat David At 09:12 AM 25/03/2006, you wrote: >I was talking about a form. >On a report, you can use the same procedure except put the image control >in the detail section and use the if statement in Format event. >The image will show or not show as needed. > >Jim >jhewson at karta.com > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & Joanne Gould >Sent: Friday, March 24, 2006 4:09 PM >To: Access Developers discussion and problem solving >Subject: Re: [AccessD] Hide and show image > >Jim > >Thanks for you quick response. > >Are you talking about the report or the form? > >If the report, where do I put code as I couldn't find anywhere for it? > >If the form, how do I store the image into the table? > >TIA > >David > >At 08:42 AM 25/03/2006, you wrote: > >David, > >WI would use the image control with the picture of the wheelchair > >(bmp). The image control can be scaled to the size you need. Just make > >sure the Size Mode is set to Zoom. Then use code to hide or unhide the > >image control as needed using the docmd visible command. > >For example: > >On the after update event of the checkbox use a simple if statement. > > > > If Check6 = 0 Then > > Me.Image5.Visible = False > > Else > > Me.Image5.Visible = True > > End If > > > >Then when it's checked the Wheelchair will show, unchecked the image is > >not shown. From darrend at nimble.com.au Sat Mar 25 05:09:57 2006 From: darrend at nimble.com.au (Darren DICK) Date: Sat, 25 Mar 2006 22:09:57 +1100 Subject: [AccessD] Hide and show image In-Reply-To: <6.2.1.2.2.20060325090627.047188e0@mail.tpg.com.au> Message-ID: <20060325111043.VWUN1358.omta03sl.mx.bigpond.com@DENZILLAP> Hi David Either will work - That code (That Jim described) will work on a report or on a form Lets assume you have a form and You want to show the image based on the value in the checkbox Lets assume the wheelchair image is called imgWheelChair Lets assume the checkbox is called chkHasWheelChairAccess Put the image on the form and make it hidden (Visible = false) Create a little function Call it say... ps_SetWheelChairImage and - Put it in the code behind the form up near the bit that says Option Explicit Copy and paste this Private sub ps_SetWheelChairImage() If me.chkHasWheelChairAccess = -1 then ' Does have a tick in the box me.imgWheelChair.visible = true 'so show the image else ' there is no tick me.imgWheelChair.visible = false 'Don't show the image end if End sub Then in the ON_Current of the form have this ps_SetWheelChairImage() And in the OnClick of the textbox put... ps_SetWheelChairImage() That should sort out the form For the report Let's assume the image is in the detail section Let's assume the Field in the table that holds the tick is Calle HasWCAccess Let's assume it is in the record source of the report Make sure the property sheet is visible (That's the one with the tabs called Format, Data, Event, Other and All) In design view there is a horizontal greay bar going all the way across the screen called 'Detail' Click it and then click on the Event tab of the property sheet Then in the code behind the OnFormat have similar code If me.HasWCAccess =-1 then me.chkHasWheelChairAccess.visible = true Else me.chkHasWheelChairAccess.visible = False End if Phew sounds like a lot But is simple Lemme know off list if you're still aving trouble and I'll knock up a demo Hope this helps See ya Darren ------------------------------ T: 0424 696 433 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & Joanne Gould Sent: Saturday, 25 March 2006 9:09 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Hide and show image Jim Thanks for you quick response. Are you talking about the report or the form? If the report, where do I put code as I couldn't find anywhere for it? If the form, how do I store the image into the table? TIA David At 08:42 AM 25/03/2006, you wrote: >David, >WI would use the image control with the picture of the wheelchair >(bmp). The image control can be scaled to the size you need. Just make >sure the Size Mode is set to Zoom. Then use code to hide or unhide the >image control as needed using the docmd visible command. >For example: >On the after update event of the checkbox use a simple if statement. > > If Check6 = 0 Then > Me.Image5.Visible = False > Else > Me.Image5.Visible = True > End If > >Then when it's checked the Wheelchair will show, unchecked the image is >not shown. > >HTH > >Jim >jhewson at karta.com > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & >Joanne Gould >Sent: Friday, March 24, 2006 3:29 PM >To: Access Developers discussion and problem solving >Subject: [AccessD] Hide and show image > > >A database has a check box in its table/form for whether a certain >location has wheelchair access or not. If it does have wheelchair >access, then on a listing report, the usual wheelchair symbol is to be >displayed next to its address. If it doesn't have access, a symbol is not displayed. > >1. Can this be done and if so how? I couldn't find anywhere to set the code. >2. The only option I could think of was to actually store the image in >the table with the user having to manually insert the image into the >field. Can the insertion be automated based on their choice at the checkbox? > >TIA > >David > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From mwp.reid at qub.ac.uk Sat Mar 25 14:49:21 2006 From: mwp.reid at qub.ac.uk (Martin Reid) Date: Sat, 25 Mar 2006 20:49:21 -0000 Subject: [AccessD] Database Advisors Web site References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant> <004601c64932$45f25660$6501a8c0@Nant> Message-ID: Can who ever manages the web site please contact me of list. Martin Martin WP Reid Training and Assessment Unit Riddle Hall Belfast tel: 02890 974477 From john at winhaven.net Sat Mar 25 15:18:32 2006 From: john at winhaven.net (John Bartow) Date: Sat, 25 Mar 2006 15:18:32 -0600 Subject: [AccessD] Database Advisors Web site In-Reply-To: Message-ID: <00fa01c65051$abe28500$6402a8c0@ScuzzPaq> Martin, That'd be Jim Lawrence [accessd at shaw.ca] John B. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Martin Reid Sent: Saturday, March 25, 2006 2:49 PM To: Access Developers discussion and problem solving Subject: [AccessD] Database Advisors Web site Can who ever manages the web site please contact me of list. Martin Martin WP Reid Training and Assessment Unit Riddle Hall Belfast tel: 02890 974477 From mwp.reid at qub.ac.uk Sat Mar 25 15:36:55 2006 From: mwp.reid at qub.ac.uk (Martin Reid) Date: Sat, 25 Mar 2006 21:36:55 -0000 Subject: [AccessD] Database Advisors Web site References: <00fa01c65051$abe28500$6402a8c0@ScuzzPaq> Message-ID: Thanks John Could not remember Martin Martin WP Reid Training and Assessment Unit Riddle Hall Belfast tel: 02890 974477 ________________________________ From: accessd-bounces at databaseadvisors.com on behalf of John Bartow Sent: Sat 25/03/2006 21:18 To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Database Advisors Web site Martin, That'd be Jim Lawrence [accessd at shaw.ca] John B. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Martin Reid Sent: Saturday, March 25, 2006 2:49 PM To: Access Developers discussion and problem solving Subject: [AccessD] Database Advisors Web site Can who ever manages the web site please contact me of list. Martin Martin WP Reid Training and Assessment Unit Riddle Hall Belfast tel: 02890 974477 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From carbonnb at gmail.com Sat Mar 25 18:39:30 2006 From: carbonnb at gmail.com (Bryan Carbonnell) Date: Sat, 25 Mar 2006 19:39:30 -0500 Subject: [AccessD] Database Advisors Web site In-Reply-To: References: <00fa01c65051$abe28500$6402a8c0@ScuzzPaq> Message-ID: On 3/25/06, Martin Reid wrote: > Thanks John > > Could not remember Martin, Can you contact Jim directly. He has been having problems with his e-mail and DBA talking, so he may not see this thread. -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" From artful at rogers.com Sun Mar 26 10:37:38 2006 From: artful at rogers.com (Arthur Fuller) Date: Sun, 26 Mar 2006 11:37:38 -0500 Subject: [AccessD] Word Question Message-ID: <009801c650f3$9804e350$8e01a8c0@Camelot.com> On my new contract, we use Erwin data modeler. It generates Word documents describing the table structures, indexes etc. It appears that you cannot control the template Erwin uses to create the tables, and their column sizes are asinine. I have to visit each document and correct the sizes. Is there a way to create a Word macro that will resize the columns of a given table to the sizes I want? The sizes themselves are constant. The names of the tables follow a general pattern but they might be hard to predict, so I would be happy to visit each table and press the macro key and have Word do the resizing for me. In fact there are 3 kinds of tables per report, so I would like to have 3 such macros. Can this be done? Thanks, Arthur From mwp.reid at qub.ac.uk Sun Mar 26 12:39:00 2006 From: mwp.reid at qub.ac.uk (Martin Reid) Date: Sun, 26 Mar 2006 19:39:00 +0100 Subject: [AccessD] OT Test References: <00fa01c65051$abe28500$6402a8c0@ScuzzPaq> Message-ID: Ignore Martin WP Reid Training and Assessment Unit Riddle Hall Belfast tel: 02890 974477 From mwp.reid at qub.ac.uk Sun Mar 26 12:43:03 2006 From: mwp.reid at qub.ac.uk (Martin Reid) Date: Sun, 26 Mar 2006 19:43:03 +0100 Subject: [AccessD] Test References: <00fa01c65051$abe28500$6402a8c0@ScuzzPaq> Message-ID: Please ignore Martin Martin WP Reid Training and Assessment Unit Riddle Hall Belfast tel: 02890 974477 ________________________________ From: Martin Reid Sent: Sun 26/03/2006 19:39 To: Access Developers discussion and problem solving Subject: OT Test Ignore Martin WP Reid Training and Assessment Unit Riddle Hall Belfast tel: 02890 974477 From carbonnb at gmail.com Sun Mar 26 13:09:03 2006 From: carbonnb at gmail.com (Bryan Carbonnell) Date: Sun, 26 Mar 2006 14:09:03 -0500 Subject: [AccessD] Word Question In-Reply-To: <009801c650f3$9804e350$8e01a8c0@Camelot.com> References: <009801c650f3$9804e350$8e01a8c0@Camelot.com> Message-ID: On 3/26/06, Arthur Fuller wrote: > Is there a way to create a Word macro that will resize the columns of a > given table to the sizes I want? The sizes themselves are constant. The > names of the tables follow a general pattern but they might be hard to > predict, so I would be happy to visit each table and press the macro key and > have Word do the resizing for me. > In fact there are 3 kinds of tables per report, so I would like to have 3 > such macros. Can this be done? Sure, you can do something like: dim tbl as Table set tbl = activedocument.tables(1) with tbl .Columns(1).Width = inchestopoints(2) .Columns(2).Width = inchestopoints(2) .Columns(3).Width = inchestopoints(2) end with This will set Columns 1, 2 and 3 of Table 1 to 2" in width. If you want to use centimeters then you would replace InchesToPoints with CentimetersToPoints Tables and columns are both 1 based collections. -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" From artful at rogers.com Sun Mar 26 13:23:27 2006 From: artful at rogers.com (Arthur Fuller) Date: Sun, 26 Mar 2006 14:23:27 -0500 Subject: [AccessD] Backfill Office Installations? In-Reply-To: <004b01c64659$6e9a56c0$647aa8c0@ColbyM6805> Message-ID: <00b501c6510a$c346fcd0$8e01a8c0@Camelot.com> I recently removed Office2K for space reasons, only to discover that I still need parts of it. Can I reinstall it safely, without damage to the O2k3 installation, or must I remove it and then install them chronologically? TIA, Arthur From carbonnb at gmail.com Sun Mar 26 13:32:13 2006 From: carbonnb at gmail.com (Bryan Carbonnell) Date: Sun, 26 Mar 2006 14:32:13 -0500 Subject: [AccessD] Test In-Reply-To: References: <00fa01c65051$abe28500$6402a8c0@ScuzzPaq> Message-ID: On 3/26/06, Martin Reid wrote: > Please ignore Problems Martin? -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" From carbonnb at gmail.com Sun Mar 26 13:33:38 2006 From: carbonnb at gmail.com (Bryan Carbonnell) Date: Sun, 26 Mar 2006 14:33:38 -0500 Subject: [AccessD] Backfill Office Installations? In-Reply-To: <00b501c6510a$c346fcd0$8e01a8c0@Camelot.com> References: <004b01c64659$6e9a56c0$647aa8c0@ColbyM6805> <00b501c6510a$c346fcd0$8e01a8c0@Camelot.com> Message-ID: On 3/26/06, Arthur Fuller wrote: > I recently removed Office2K for space reasons, only to discover that I still > need parts of it. Can I reinstall it safely, without damage to the O2k3 > installation, or must I remove it and then install them chronologically? Having tried an O97 after an O2K installation and had it hose both installs, I'd recommend uninstalling all versions and install them chronologically. I know a PITA, but it's the only safe way to do it. -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" From DWUTKA at marlow.com Sun Mar 26 20:11:53 2006 From: DWUTKA at marlow.com (DWUTKA at marlow.com) Date: Sun, 26 Mar 2006 20:11:53 -0600 Subject: [AccessD] Backfill Office Installations? Message-ID: <17724746D360394AA3BFE5B8D40A9C1B6A6891@main2.marlow.com> I concur. I am now running 97, 2000, and 2003 on my laptop. Works great, especially when I setup special 'right click' options. (I setup opening with Access 97, 2000, 2003, and opening a 'secured database' (all my secured databases are Access 97, and since I use the same 'admin account' with them (even though most have different .mdw's, I can still open them all with just one of the .mdw's with my Admin account) as right click options. The only thing that sucks, is that you have to setup the options for each 'version' of access. Ie, setting up the options for 97 will be there only when 97 is used. If you use 2000, the 97 options disappear until you open 97 again. So I have to set them up three times....ugh, but it's worth it, saves time down the line in a major way. Drew -----Original Message----- From: Bryan Carbonnell [mailto:carbonnb at gmail.com] Sent: Sunday, March 26, 2006 1:34 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Backfill Office Installations? On 3/26/06, Arthur Fuller wrote: > I recently removed Office2K for space reasons, only to discover that I still > need parts of it. Can I reinstall it safely, without damage to the O2k3 > installation, or must I remove it and then install them chronologically? Having tried an O97 after an O2K installation and had it hose both installs, I'd recommend uninstalling all versions and install them chronologically. I know a PITA, but it's the only safe way to do it. -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From dajomigo at tpg.com.au Sun Mar 26 20:56:28 2006 From: dajomigo at tpg.com.au (David & Joanne Gould) Date: Mon, 27 Mar 2006 13:56:28 +1100 Subject: [AccessD] Hide and show image In-Reply-To: References: Message-ID: <6.2.1.2.2.20060327135529.01ef7900@mail.tpg.com.au> Hi Gustav, Sorry for the delay. That's right, I'm not sure what you mean? David At 09:27 PM 25/03/2006, you wrote: >Hi David and Jim > >But the checkbox is only True or False: > > Me.Image5.Visible = Check6.Value > >/gustav > > >>> dajomigo at tpg.com.au 25-03-2006 00:02 >>> >Thanks Jim > >Works a treat > >David > >At 09:12 AM 25/03/2006, you wrote: > >I was talking about a form. > >On a report, you can use the same procedure except put the image control > >in the detail section and use the if statement in Format event. > >The image will show or not show as needed. > > > >Jim > >jhewson at karta.com > > > > > >-----Original Message----- > >From: accessd-bounces at databaseadvisors.com > >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & > Joanne Gould > >Sent: Friday, March 24, 2006 4:09 PM > >To: Access Developers discussion and problem solving > >Subject: Re: [AccessD] Hide and show image > > > >Jim > > > >Thanks for you quick response. > > > >Are you talking about the report or the form? > > > >If the report, where do I put code as I couldn't find anywhere for it? > > > >If the form, how do I store the image into the table? > > > >TIA > > > >David > > > >At 08:42 AM 25/03/2006, you wrote: > > >David, > > >WI would use the image control with the picture of the wheelchair > > >(bmp). The image control can be scaled to the size you need. Just make > > >sure the Size Mode is set to Zoom. Then use code to hide or unhide the > > >image control as needed using the docmd visible command. > > >For example: > > >On the after update event of the checkbox use a simple if statement. > > > > > > If Check6 = 0 Then > > > Me.Image5.Visible = False > > > Else > > > Me.Image5.Visible = True > > > End If > > > > > >Then when it's checked the Wheelchair will show, unchecked the image is > > >not shown. > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From dajomigo at tpg.com.au Sun Mar 26 20:59:14 2006 From: dajomigo at tpg.com.au (David & Joanne Gould) Date: Mon, 27 Mar 2006 13:59:14 +1100 Subject: [AccessD] Hide and show image In-Reply-To: <20060325111043.VWUN1358.omta03sl.mx.bigpond.com@DENZILLAP> References: <6.2.1.2.2.20060325090627.047188e0@mail.tpg.com.au> <20060325111043.VWUN1358.omta03sl.mx.bigpond.com@DENZILLAP> Message-ID: <6.2.1.2.2.20060327135720.01ef7528@mail.tpg.com.au> Darren I've solved it using Jim's solution on the report but am still curious as to how you could programmatically enter an image into an image field in the table. David At 10:09 PM 25/03/2006, you wrote: >Hi David >Either will work - >That code (That Jim described) will work on a report or on a form >Lets assume you have a form and You want to show the image based on the >value in >the checkbox >Lets assume the wheelchair image is called imgWheelChair >Lets assume the checkbox is called chkHasWheelChairAccess > >Put the image on the form and make it hidden (Visible = false) >Create a little function >Call it say... >ps_SetWheelChairImage and - Put it in the code behind the form up near the bit >that says Option Explicit >Copy and paste this > >Private sub ps_SetWheelChairImage() > > If me.chkHasWheelChairAccess = -1 then ' Does have a tick in the box > me.imgWheelChair.visible = true 'so show the image > else ' there is no tick > me.imgWheelChair.visible = false 'Don't show the image > end if >End sub > > >Then in the ON_Current of the form have this > >ps_SetWheelChairImage() > >And in the OnClick of the textbox put... > >ps_SetWheelChairImage() > >That should sort out the form > > >For the report > >Let's assume the image is in the detail section >Let's assume the Field in the table that holds the tick is Calle HasWCAccess >Let's assume it is in the record source of the report >Make sure the property sheet is visible (That's the one with the tabs called >Format, Data, Event, Other and All) >In design view there is a horizontal greay bar going all the way across the >screen called 'Detail' >Click it and then click on the Event tab of the property sheet >Then in the code behind the OnFormat have similar code > >If me.HasWCAccess =-1 then > me.chkHasWheelChairAccess.visible = true >Else > me.chkHasWheelChairAccess.visible = False >End if > > >Phew sounds like a lot >But is simple > >Lemme know off list if you're still aving trouble and I'll knock up a demo > >Hope this helps > >See ya > > > >Darren >------------------------------ >T: 0424 696 433 > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & Joanne >Gould >Sent: Saturday, 25 March 2006 9:09 AM >To: Access Developers discussion and problem solving >Subject: Re: [AccessD] Hide and show image > >Jim > >Thanks for you quick response. > >Are you talking about the report or the form? > >If the report, where do I put code as I couldn't find anywhere for it? > >If the form, how do I store the image into the table? > >TIA > >David > >At 08:42 AM 25/03/2006, you wrote: > >David, > >WI would use the image control with the picture of the wheelchair > >(bmp). The image control can be scaled to the size you need. Just make > >sure the Size Mode is set to Zoom. Then use code to hide or unhide the > >image control as needed using the docmd visible command. > >For example: > >On the after update event of the checkbox use a simple if statement. > > > > If Check6 = 0 Then > > Me.Image5.Visible = False > > Else > > Me.Image5.Visible = True > > End If > > > >Then when it's checked the Wheelchair will show, unchecked the image is > >not shown. > > > >HTH > > > >Jim > >jhewson at karta.com > > > >-----Original Message----- > >From: accessd-bounces at databaseadvisors.com > >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & > >Joanne Gould > >Sent: Friday, March 24, 2006 3:29 PM > >To: Access Developers discussion and problem solving > >Subject: [AccessD] Hide and show image > > > > > >A database has a check box in its table/form for whether a certain > >location has wheelchair access or not. If it does have wheelchair > >access, then on a listing report, the usual wheelchair symbol is to be > >displayed next to its address. If it doesn't have access, a symbol is not >displayed. > > > >1. Can this be done and if so how? I couldn't find anywhere to set the code. > >2. The only option I could think of was to actually store the image in > >the table with the user having to manually insert the image into the > >field. Can the insertion be automated based on their choice at the checkbox? > > > >TIA > > > >David > > > > > >-- > >AccessD mailing list > >AccessD at databaseadvisors.com > >http://databaseadvisors.com/mailman/listinfo/accessd > >Website: http://www.databaseadvisors.com > >-- > >AccessD mailing list > >AccessD at databaseadvisors.com > >http://databaseadvisors.com/mailman/listinfo/accessd > >Website: http://www.databaseadvisors.com > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From viner at EUnet.yu Mon Mar 27 00:55:33 2006 From: viner at EUnet.yu (Ervin Brindza) Date: Mon, 27 Mar 2006 08:55:33 +0200 Subject: [AccessD] Access and MySQL References: <007b01c64f40$585cdd20$0100a8c0@RazvojErvin> Message-ID: <01b701c6516c$9dd55700$0100a8c0@RazvojErvin> Gustav, Ken, many thanks for the links! Have a nice day, Ervin ----- Original Message ----- From: "Ervin Brindza" To: Sent: Friday, March 24, 2006 2:41 PM Subject: [AccessD] Access and MySQL >I know, today is Friday, but I just started to "play" with Access connected >(throught MyODBC) and MySQL. Can you recommend any useful: hint, code, >sample application? > TIA, > Ervin > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From Gustav at cactus.dk Mon Mar 27 01:21:51 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Mon, 27 Mar 2006 09:21:51 +0200 Subject: [AccessD] Hide and show image Message-ID: Hi David I mean that one code line can replace five. /gustav >>> dajomigo at tpg.com.au 27-03-2006 04:56 >>> Hi Gustav, Sorry for the delay. That's right, I'm not sure what you mean? David At 09:27 PM 25/03/2006, you wrote: >But the checkbox is only True or False: > > Me.Image5.Visible = Check6.Value > > > If Check6 = 0 Then > > > Me.Image5.Visible = False > > > Else > > > Me.Image5.Visible = True > > > End If From dajomigo at tpg.com.au Mon Mar 27 02:17:48 2006 From: dajomigo at tpg.com.au (David & Joanne Gould) Date: Mon, 27 Mar 2006 19:17:48 +1100 Subject: [AccessD] Hide and show image In-Reply-To: References: Message-ID: <6.2.1.2.2.20060327191739.01ee6ba0@mail.tpg.com.au> Thanks, Gustav. At 06:21 PM 27/03/2006, you wrote: >Hi David > >I mean that one code line can replace five. > >/gustav > > >>> dajomigo at tpg.com.au 27-03-2006 04:56 >>> >Hi Gustav, > >Sorry for the delay. That's right, I'm not sure what you mean? > >David > >At 09:27 PM 25/03/2006, you wrote: > > >But the checkbox is only True or False: > > > > Me.Image5.Visible = Check6.Value > > > > > > If Check6 = 0 Then > > > > Me.Image5.Visible = False > > > > Else > > > > Me.Image5.Visible = True > > > > End If > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Mon Mar 27 08:02:32 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Mon, 27 Mar 2006 09:02:32 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <008a01c64fce$b3e40400$6501a8c0@Nant> Message-ID: <00c201c651a7$18a606c0$647aa8c0@ColbyM6805> Shamil, Can you give me a quick rundown (or a web page to read) about interfaces and why you use them? Is it simply to force compliance with the selected interface (ensure that all methods / properties are implemented) or is there some larger reason? John W. Colby www.ColbyConsulting.com From pcs at azizaz.com Mon Mar 27 18:05:25 2006 From: pcs at azizaz.com (Borge Hansen) Date: Tue, 28 Mar 2006 10:05:25 +1000 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <00c201c651a7$18a606c0$647aa8c0@ColbyM6805> Message-ID: <000a01c651fb$50820fe0$fa10a8c0@Albatross> Testing! Posted a question several hours ago. Hasn't come through. When trying to access the AccessD archives - internal server error! borge From pcs at azizaz.com Mon Mar 27 15:08:08 2006 From: pcs at azizaz.com (Borge Hansen) Date: Tue, 28 Mar 2006 07:08:08 +1000 Subject: [AccessD] Error Message References: <00c201c651a7$18a606c0$647aa8c0@ColbyM6805> Message-ID: <00f001c651e2$8efcaaa0$fa10a8c0@Albatross> Hi, Have any of you come across this : When deleting records in a subform I intermittently get the message: 3709 The Search Key was not found in any record The record deletes ok! borge From ecritt1 at alltel.net Mon Mar 27 16:15:51 2006 From: ecritt1 at alltel.net (Penn White) Date: Mon, 27 Mar 2006 17:15:51 -0500 Subject: [AccessD] Cannot uninstall Access 2003 Runtime Message-ID: <005f01c651ec$02188190$0302a8c0@pennp4> I have installed the Access 2003 Runtime on my laptop (and several clients machines) and one of my clients is having difficulties with his installation. I'd like to uninstall the Acc03 Runtime and re-install a new version but when I attempt to do it I get an error stating that another version is already installed and the install package exits. I attempt to uninstall it from Control Panel and even though it looks like it's working, the Acc03 Runtime is taill there and I get the same error when I try running the package again. Has anyone else ever had this problem? Penn From shamil at users.mns.ru Tue Mar 28 04:09:03 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Tue, 28 Mar 2006 14:09:03 +0400 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <00c201c651a7$18a606c0$647aa8c0@ColbyM6805> Message-ID: <002e01c6524f$b8a457f0$6501a8c0@Nant> > Is it simply to force compliance with the selected interface John, For this thread practical testing task (http://smsconsulting.spb.ru/download/tests/a2dds.htm) interfaces(Implements feature) is used to: - have clearly defined interfaces to bind a form to its datasource(s) and to have this form communicating with custom class(es) handling runtime events; - have prepared "socket interfaces"/pluggable test-bed to easily substitute one solution's code with the others. This substitution can be done dynamically(on run-time) or statically(on design time). I don't have a good web page link to read on interfaces(Implements feature). This concept of (abstract) interfaces has many practical applications. On the other hand there is a lot of hype around it. And there are different opinions is this concept good(has more positive effect) or bad(has almost only negative effect) in solving everyday tasks of practical programming especially in custom programming of (relatively simple) tasks for small-/middle-size businesses. >From "rocket computer science" point of view interfaces are the base to implement in practice a subset of what is called also "Liskov Principle" ( http://en.wikipedia.org/wiki/Liskov_substitution_principle) and its consequence "don't talk to stranger" OOP principle - the "Law of Demeter" - http://www.site.uottawa.ca:4321/oose/index.html#LawofDemeter My own understanding of these concepts and their applicability in practical tasks fluctuates with time. But only in positive spectrum part of opinions. And I see more and more practical applications of this concept. And especially in programming for small-/middle-size businesses or programming shareware tools - this is the market(IMO) which urge for agile eXtreme Programming(XP) and Test Driven Development (TDD) as one of the most powerful and flexible practical methods of XP. And the interfaces are a corner stone concept of TDD and code refactoring in its modern understanding - http://martinfowler.com/. The best book (IMO) I have ever read on such advanced concepts is "Object Thinking" by David West (http://www.techbookreport.com/tbr0083.html) - "a kind of philosophical journey towards an understanding of 'object thinking."... The best practical books to get broad vision on this concept and to see real samples are collected here I think (http://www.awprofessional.com/series/series.asp?st=44117&rl=1) - I have just found it. Here is one of my exersizes - http://smsconsulting.spb.ru/patterns/labs/ObserverPatternLab.htm ... Here is a very quick introduction to OOP concepts including interfaces - http://java.sun.com/docs/books/tutorial/java/concepts/ "All that jazz"/buzz of the modern understanding of programming has got a lot from the works of Christopher Alexander (http://www.greatbuildings.com/architects/Christopher_Alexander.html), Smalltalk community and from the work of GoF("Gang of Four" - Erich Gamma, Richard Helm, Ralph Johnson, John M. Vlissides) - "Design Patterns: Elements of Reusable Object-Oriented Software" http://www.awprofessional.com/bookstore/product.asp?isbn=0201633612&rl=1 and their followers as well as from the works/books of Kent Beck - "Embrace change","Test Driven Development by Example" etc. (http://search.barnesandnoble.com/booksearch/isbninquiry.asp?z=y&pwb=1&ean=9780321278654) That my e-mail may look a little bit more theoretical than practical - I wanted to outline by that not my "shift" to theoretical computer science/programming but my opinion that a modern advanced programmer has to have a broad vision/broad context picture of what are all that nowadays OOA&D principles, what associations they are based on and where they go... As a conclusion I must say I didn't read even a half of the sources/books I referred above - I just compiled their list now as a reply on your question :) If I ever had an opportunity for half an year paid vacations (dreams, dreams...) I'd spend the first part in lazy doing nothing and the second reading/investigating all that stuff I referred above - I do think (and I do know from what I read, found by myself or in books/articles and use in my practice) that this is a "nuclear power" stuff with a broad applicability in practical everyday work of every modern programmer. And I must outline as a final conclusion - reading all these good books and artciles gives a lot to not "reinvent the wheel" (because they talk about natural things every programmer will come to by themselves sooner or later) but only everyday practice in using these methods will make a developer agile. This "nuclrear stuff" is not easy and one without enough practice may have easily lost themselves in many classes of the solutions created based on these principles... I'm not there yet (where I should have been as I think after I have got where these principles lead) - "most practioners would agree that it takes a few years to really 'get' objects, unlike the weeks or months it takes to learn the syntax of a language."... Shamil P.S. Of course one can say they can program without objects etc. - yes, I also can do that - it all depends on context of a practical task/project to be developed.... ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 27, 2006 6:02 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > Can you give me a quick rundown (or a web page to read) about interfaces > and > why you use them? Is it simply to force compliance with the selected > interface (ensure that all methods / properties are implemented) or is > there > some larger reason? > > > John W. Colby > www.ColbyConsulting.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From shamil at users.mns.ru Tue Mar 28 05:43:34 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Tue, 28 Mar 2006 15:43:34 +0400 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <00c201c651a7$18a606c0$647aa8c0@ColbyM6805> <002e01c6524f$b8a457f0$6501a8c0@Nant> Message-ID: <003701c6525c$f9fb1b50$6501a8c0@Nant> Folks, I just wanted to add, please, don't get me as a "mad scientist", from my writing like in my previous posting. Yes, I do realize that what I write may sound "a bit crazy". Yes, I do know that good solid modern programming can be done without OOP. All depends on context. But OOP is helpful in this quickly changing world to create and keep well harmonic solutions/software architectures. IMO "class-less" programming is less useful here and results in many overhead expenses, which OOP allows to avoid in long run. The only concept of this "class-less" relatively flexible programming I know are C++ template functions but this is specific C++ language construct, which doesn't exist in VB6/VBA/VB.NET... ...when programming on RSX-11M macro assembler(PDP-11) I did investigate this OS assembler sources because I had a task, which needed to "dynamically patch" one bit in the core of this OS. These assembler sources were a fantastic software code - so well the parts of their functionality were packed and reused. I have never seen so well crafted code like that! And this code was "class-less" of course. But writing OSes is rather stable area, with a few releases over years - different context I mean, which is OK for "class-less" programming... And I wanted also to note that I have many other interests in this life like sports, traveling when money allow, I have a big family, which I work for rather heavy everyday as many of you do. And I see this quickly changing world around me, and I'm still quickly loosing my head with a "women in my hands"(pun intended :)) like it was several days ago when I danced on a party several times with a nice women and my wife(beautiful women) who was also on that party asked me after it - "Did you like her?"... Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 28, 2006 2:09 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> Is it simply to force compliance with the selected interface > John, > > For this thread practical testing task > (http://smsconsulting.spb.ru/download/tests/a2dds.htm) > interfaces(Implements > feature) is used to: > > - have clearly defined interfaces to bind a form to its datasource(s) and > to > have this form communicating with custom class(es) handling runtime > events; > - have prepared "socket interfaces"/pluggable test-bed to easily > substitute > one solution's code with the others. This substitution can be done > dynamically(on run-time) or statically(on design time). > > I don't have a good web page link to read on interfaces(Implements > feature). > This concept of (abstract) interfaces has many practical applications. > On the other hand there is a lot of hype around it. > And there are different opinions is this concept good(has more positive > effect) or bad(has almost only negative effect) in solving everyday tasks > of > practical programming especially in custom programming of (relatively > simple) tasks for small-/middle-size businesses. > >>From "rocket computer science" point of view interfaces are the base to > implement in practice a subset of what is called also "Liskov Principle" ( > http://en.wikipedia.org/wiki/Liskov_substitution_principle) and its > consequence "don't talk to stranger" OOP principle - the "Law of > Demeter" - > http://www.site.uottawa.ca:4321/oose/index.html#LawofDemeter > > My own understanding of these concepts and their applicability in > practical > tasks fluctuates with time. > But only in positive spectrum part of opinions. > And I see more and more practical applications of this concept. > And especially in programming for small-/middle-size businesses or > programming shareware tools - this is the market(IMO) which urge for agile > eXtreme Programming(XP) and Test Driven Development (TDD) as one of the > most > powerful and flexible practical methods of XP. And the interfaces are a > corner stone concept of TDD and code refactoring in its modern > understanding - http://martinfowler.com/. > > The best book (IMO) I have ever read on such advanced concepts is "Object > Thinking" by David West (http://www.techbookreport.com/tbr0083.html) - "a > kind of philosophical journey towards an understanding of 'object > thinking."... > > The best practical books to get broad vision on this concept and to see > real > samples are collected here I think > (http://www.awprofessional.com/series/series.asp?st=44117&rl=1) - I have > just found it. > > Here is one of my exersizes - > http://smsconsulting.spb.ru/patterns/labs/ObserverPatternLab.htm ... > > Here is a very quick introduction to OOP concepts including interfaces - > http://java.sun.com/docs/books/tutorial/java/concepts/ > > "All that jazz"/buzz of the modern understanding of programming has got a > lot from the works of Christopher Alexander > (http://www.greatbuildings.com/architects/Christopher_Alexander.html), > Smalltalk community and from the work of GoF("Gang of Four" - Erich Gamma, > Richard Helm, Ralph Johnson, John M. Vlissides) - "Design Patterns: > Elements > of Reusable Object-Oriented Software" > http://www.awprofessional.com/bookstore/product.asp?isbn=0201633612&rl=1 > and > their followers as well as from the works/books of Kent Beck - "Embrace > change","Test Driven Development by Example" etc. > (http://search.barnesandnoble.com/booksearch/isbninquiry.asp?z=y&pwb=1&ean=9780321278654) > > That my e-mail may look a little bit more theoretical than practical - I > wanted to outline by that not my "shift" to theoretical computer > science/programming but my opinion that a modern advanced programmer has > to > have a broad vision/broad context picture of what are all that nowadays > OOA&D principles, what associations they are based on and where they go... > > As a conclusion I must say I didn't read even a half of the sources/books > I > referred above - I just compiled their list now as a reply on your > question > :) > If I ever had an opportunity for half an year paid vacations (dreams, > dreams...) I'd spend the first part in lazy doing nothing and the second > reading/investigating all that stuff I referred above - I do think (and I > do > know from what I read, found by myself or in books/articles and use in my > practice) that this is a "nuclear power" stuff with a broad applicability > in > practical everyday work of every modern programmer. > > And I must outline as a final conclusion - reading all these good books > and > artciles gives a lot to not "reinvent the wheel" (because they talk about > natural things every programmer will come to by themselves sooner or > later) > but only everyday practice in using these methods will make a developer > agile. This "nuclrear stuff" is not easy and one without enough practice > may > have easily lost themselves in many classes of the solutions created based > on these principles... > > I'm not there yet (where I should have been as I think after I have got > where these principles lead) - "most practioners would agree that it takes > a > few years to really 'get' objects, unlike the weeks or months it takes to > learn the syntax of a language."... > > Shamil > > P.S. Of course one can say they can program without objects etc. - yes, I > also can do that - it all depends on context of a practical task/project > to > be developed.... > > ----- Original Message ----- > From: "John Colby" > To: "'Access Developers discussion and problem solving'" > > Sent: Monday, March 27, 2006 6:02 PM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> Can you give me a quick rundown (or a web page to read) about interfaces >> and >> why you use them? Is it simply to force compliance with the selected >> interface (ensure that all methods / properties are implemented) or is >> there >> some larger reason? >> >> >> John W. Colby >> www.ColbyConsulting.com >> <<< tail skipped >>> From cyx5 at cdc.gov Tue Mar 28 05:47:29 2006 From: cyx5 at cdc.gov (Nicholson, Karen) Date: Tue, 28 Mar 2006 06:47:29 -0500 Subject: [AccessD] Cannot uninstall Access 2003 Runtime Message-ID: Yes. There is a problem with a missing .dll. I just coded one of my apps to detect the version of Access and then to locate the proper .dll based on the extrated version number. Let me look for it and panick not. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Penn White Sent: Monday, March 27, 2006 5:16 PM To: Access Developers discussion and problem solving Subject: [AccessD] Cannot uninstall Access 2003 Runtime I have installed the Access 2003 Runtime on my laptop (and several clients machines) and one of my clients is having difficulties with his installation. I'd like to uninstall the Acc03 Runtime and re-install a new version but when I attempt to do it I get an error stating that another version is already installed and the install package exits. I attempt to uninstall it from Control Panel and even though it looks like it's working, the Acc03 Runtime is taill there and I get the same error when I try running the package again. Has anyone else ever had this problem? Penn -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From ecritt1 at alltel.net Tue Mar 28 06:34:10 2006 From: ecritt1 at alltel.net (Penn White) Date: Tue, 28 Mar 2006 07:34:10 -0500 Subject: [AccessD] Cannot uninstall Access 2003 Runtime References: Message-ID: <000c01c65263$ea43a720$0302a8c0@pennp4> Fabulous! > Let me look for it and panick not. From cyx5 at cdc.gov Tue Mar 28 07:06:50 2006 From: cyx5 at cdc.gov (Nicholson, Karen) Date: Tue, 28 Mar 2006 08:06:50 -0500 Subject: [AccessD] Cannot uninstall Access 2003 Runtime Message-ID: Microsoft finally did document the problem official fixes. When I ran into it, it was not recognized as a problem. I believe Microsoft is a partner with pharmaceutical companies - their tweeks can drive a person to turn into a Shamil!!! I need a picture of Shamil, I picture a man with 7 or 8 PCs, saying swear words in his native language. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Penn White Sent: Tuesday, March 28, 2006 7:34 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Cannot uninstall Access 2003 Runtime Fabulous! > Let me look for it and panick not. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From carbonnb at gmail.com Tue Mar 28 07:33:37 2006 From: carbonnb at gmail.com (Bryan Carbonnell) Date: Tue, 28 Mar 2006 08:33:37 -0500 Subject: [AccessD] Cannot uninstall Access 2003 Runtime In-Reply-To: References: Message-ID: On 3/28/06, Nicholson, Karen wrote: > to turn into a Shamil!!! I need a picture of Shamil, I picture a man > with 7 or 8 PCs, saying swear words in his native language. Doesn't that describe all of us here? The swearing part anyway :-) -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" From shamil at users.mns.ru Tue Mar 28 09:25:49 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Tue, 28 Mar 2006 19:25:49 +0400 Subject: [AccessD] Cannot uninstall Access 2003 Runtime References: Message-ID: <003001c6527c$a96d9030$6501a8c0@Nant> >I need a picture of Shamil, I picture a man > with 7 or 8 PCs, saying swear words in > his native language. Karen You wanted my pic - here it is :) http://smsconsulting.spb.ru/photos/Versaille.JPG This is my pic with my daughter made in spring 2003 in Versailles : I'm in jogging shoes to have it easier to drive the car all around Europe :) And I have only one PC :) (Well, we(my family) have four but I work on one only others used mainly by kids). I do not swear - I sometimes use uncensored Russian slang - it works better that swearing ...:) Shamil ----- Original Message ----- From: "Nicholson, Karen" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 28, 2006 5:06 PM Subject: Re: [AccessD] Cannot uninstall Access 2003 Runtime > Microsoft finally did document the problem official fixes. When I ran > into it, it was not recognized as a problem. I believe Microsoft is a > partner with pharmaceutical companies - their tweeks can drive a person > to turn into a Shamil!!! I need a picture of Shamil, I picture a man > with 7 or 8 PCs, saying swear words in his native language. > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Penn White > Sent: Tuesday, March 28, 2006 7:34 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Cannot uninstall Access 2003 Runtime > > > Fabulous! > >> Let me look for it and panick not. > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From garykjos at gmail.com Tue Mar 28 09:53:58 2006 From: garykjos at gmail.com (Gary Kjos) Date: Tue, 28 Mar 2006 09:53:58 -0600 Subject: [AccessD] Cannot uninstall Access 2003 Runtime In-Reply-To: <003001c6527c$a96d9030$6501a8c0@Nant> References: <003001c6527c$a96d9030$6501a8c0@Nant> Message-ID: Great picture Shamil ! Thanks for sharing. Always good to put a face with the names we see here. Gary On 3/28/06, Shamil Salakhetdinov wrote: > > >I need a picture of Shamil, I picture a man > > with 7 or 8 PCs, saying swear words in > > his native language. > Karen > > You wanted my pic - here it is :) > http://smsconsulting.spb.ru/photos/Versaille.JPG > This is my pic with my daughter made in spring 2003 in Versailles : > I'm in jogging shoes to have it easier to drive the car all around Europe :) > > And I have only one PC :) (Well, we(my family) have four but I work on one > only others used mainly by kids). > > I do not swear - I sometimes use uncensored Russian slang - it works better > that swearing ...:) > > Shamil > > ----- Original Message ----- > From: "Nicholson, Karen" > To: "Access Developers discussion and problem solving" > > Sent: Tuesday, March 28, 2006 5:06 PM > Subject: Re: [AccessD] Cannot uninstall Access 2003 Runtime > > > > Microsoft finally did document the problem official fixes. When I ran > > into it, it was not recognized as a problem. I believe Microsoft is a > > partner with pharmaceutical companies - their tweeks can drive a person > > to turn into a Shamil!!! I need a picture of Shamil, I picture a man > > with 7 or 8 PCs, saying swear words in his native language. > > > > -----Original Message----- > > From: accessd-bounces at databaseadvisors.com > > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Penn White > > Sent: Tuesday, March 28, 2006 7:34 AM > > To: Access Developers discussion and problem solving > > Subject: Re: [AccessD] Cannot uninstall Access 2003 Runtime > > > > > > Fabulous! > > > >> Let me look for it and panick not. > > > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Gary Kjos garykjos at gmail.com From wdhindman at bellsouth.net Tue Mar 28 10:07:46 2006 From: wdhindman at bellsouth.net (William Hindman) Date: Tue, 28 Mar 2006 11:07:46 -0500 Subject: [AccessD] Cannot uninstall Access 2003 Runtime References: Message-ID: <008c01c65281$c1343200$6101a8c0@50NM721> ...only 8? :) William ----- Original Message ----- From: "Nicholson, Karen" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 28, 2006 8:06 AM Subject: Re: [AccessD] Cannot uninstall Access 2003 Runtime > Microsoft finally did document the problem official fixes. When I ran > into it, it was not recognized as a problem. I believe Microsoft is a > partner with pharmaceutical companies - their tweeks can drive a person > to turn into a Shamil!!! I need a picture of Shamil, I picture a man > with 7 or 8 PCs, saying swear words in his native language. > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Penn White > Sent: Tuesday, March 28, 2006 7:34 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Cannot uninstall Access 2003 Runtime > > > Fabulous! > >> Let me look for it and panick not. > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From cfoust at infostatsystems.com Tue Mar 28 10:19:28 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Tue, 28 Mar 2006 08:19:28 -0800 Subject: [AccessD] Access XP forms bound to ADO recordsets Message-ID: Shamil, I doubt anyone who has followed your ideas over time could ever think of you as a "mad scientist"! LOL I love OOP and in my shop we use interfaces as a matter of course. The interface is a road map and the modules that implement it follow the map but put their own spin on how they do it. That makes programming consistent because you can't just arbitrarily change the input and output of a routine dictated by the interface. I fell in love with the concept inheritance long before it was available to VB.Net programmers, but I wasn't willing to learn a language like Java or C++ to use it. It was definitely worth the wait, though. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Tuesday, March 28, 2006 3:44 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Folks, I just wanted to add, please, don't get me as a "mad scientist", from my writing like in my previous posting. Yes, I do realize that what I write may sound "a bit crazy". Yes, I do know that good solid modern programming can be done without OOP. All depends on context. But OOP is helpful in this quickly changing world to create and keep well harmonic solutions/software architectures. IMO "class-less" programming is less useful here and results in many overhead expenses, which OOP allows to avoid in long run. The only concept of this "class-less" relatively flexible programming I know are C++ template functions but this is specific C++ language construct, which doesn't exist in VB6/VBA/VB.NET... ...when programming on RSX-11M macro assembler(PDP-11) I did investigate this OS assembler sources because I had a task, which needed to "dynamically patch" one bit in the core of this OS. These assembler sources were a fantastic software code - so well the parts of their functionality were packed and reused. I have never seen so well crafted code like that! And this code was "class-less" of course. But writing OSes is rather stable area, with a few releases over years - different context I mean, which is OK for "class-less" programming... And I wanted also to note that I have many other interests in this life like sports, traveling when money allow, I have a big family, which I work for rather heavy everyday as many of you do. And I see this quickly changing world around me, and I'm still quickly loosing my head with a "women in my hands"(pun intended :)) like it was several days ago when I danced on a party several times with a nice women and my wife(beautiful women) who was also on that party asked me after it - "Did you like her?"... Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 28, 2006 2:09 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> Is it simply to force compliance with the selected interface > John, > > For this thread practical testing task > (http://smsconsulting.spb.ru/download/tests/a2dds.htm) > interfaces(Implements > feature) is used to: > > - have clearly defined interfaces to bind a form to its datasource(s) and > to > have this form communicating with custom class(es) handling runtime > events; > - have prepared "socket interfaces"/pluggable test-bed to easily > substitute > one solution's code with the others. This substitution can be done > dynamically(on run-time) or statically(on design time). > > I don't have a good web page link to read on interfaces(Implements > feature). > This concept of (abstract) interfaces has many practical applications. > On the other hand there is a lot of hype around it. > And there are different opinions is this concept good(has more positive > effect) or bad(has almost only negative effect) in solving everyday tasks > of > practical programming especially in custom programming of (relatively > simple) tasks for small-/middle-size businesses. > >>From "rocket computer science" point of view interfaces are the base to > implement in practice a subset of what is called also "Liskov Principle" ( > http://en.wikipedia.org/wiki/Liskov_substitution_principle) and its > consequence "don't talk to stranger" OOP principle - the "Law of > Demeter" - > http://www.site.uottawa.ca:4321/oose/index.html#LawofDemeter > > My own understanding of these concepts and their applicability in > practical > tasks fluctuates with time. > But only in positive spectrum part of opinions. > And I see more and more practical applications of this concept. > And especially in programming for small-/middle-size businesses or > programming shareware tools - this is the market(IMO) which urge for agile > eXtreme Programming(XP) and Test Driven Development (TDD) as one of the > most > powerful and flexible practical methods of XP. And the interfaces are a > corner stone concept of TDD and code refactoring in its modern > understanding - http://martinfowler.com/. > > The best book (IMO) I have ever read on such advanced concepts is "Object > Thinking" by David West (http://www.techbookreport.com/tbr0083.html) - "a > kind of philosophical journey towards an understanding of 'object > thinking."... > > The best practical books to get broad vision on this concept and to see > real > samples are collected here I think > (http://www.awprofessional.com/series/series.asp?st=44117&rl=1) - I have > just found it. > > Here is one of my exersizes - > http://smsconsulting.spb.ru/patterns/labs/ObserverPatternLab.htm ... > > Here is a very quick introduction to OOP concepts including interfaces - > http://java.sun.com/docs/books/tutorial/java/concepts/ > > "All that jazz"/buzz of the modern understanding of programming has got a > lot from the works of Christopher Alexander > (http://www.greatbuildings.com/architects/Christopher_Alexander.html), > Smalltalk community and from the work of GoF("Gang of Four" - Erich Gamma, > Richard Helm, Ralph Johnson, John M. Vlissides) - "Design Patterns: > Elements > of Reusable Object-Oriented Software" > http://www.awprofessional.com/bookstore/product.asp?isbn=0201633612&rl=1 > and > their followers as well as from the works/books of Kent Beck - "Embrace > change","Test Driven Development by Example" etc. > (http://search.barnesandnoble.com/booksearch/isbninquiry.asp?z=y&pwb=1&e an=9780321278654) > > That my e-mail may look a little bit more theoretical than practical - I > wanted to outline by that not my "shift" to theoretical computer > science/programming but my opinion that a modern advanced programmer has > to > have a broad vision/broad context picture of what are all that nowadays > OOA&D principles, what associations they are based on and where they go... > > As a conclusion I must say I didn't read even a half of the sources/books > I > referred above - I just compiled their list now as a reply on your > question > :) > If I ever had an opportunity for half an year paid vacations (dreams, > dreams...) I'd spend the first part in lazy doing nothing and the second > reading/investigating all that stuff I referred above - I do think (and I > do > know from what I read, found by myself or in books/articles and use in my > practice) that this is a "nuclear power" stuff with a broad applicability > in > practical everyday work of every modern programmer. > > And I must outline as a final conclusion - reading all these good books > and > artciles gives a lot to not "reinvent the wheel" (because they talk about > natural things every programmer will come to by themselves sooner or > later) > but only everyday practice in using these methods will make a developer > agile. This "nuclrear stuff" is not easy and one without enough practice > may > have easily lost themselves in many classes of the solutions created based > on these principles... > > I'm not there yet (where I should have been as I think after I have got > where these principles lead) - "most practioners would agree that it takes > a > few years to really 'get' objects, unlike the weeks or months it takes to > learn the syntax of a language."... > > Shamil > > P.S. Of course one can say they can program without objects etc. - yes, I > also can do that - it all depends on context of a practical task/project > to > be developed.... > > ----- Original Message ----- > From: "John Colby" > To: "'Access Developers discussion and problem solving'" > > Sent: Monday, March 27, 2006 6:02 PM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> Can you give me a quick rundown (or a web page to read) about interfaces >> and >> why you use them? Is it simply to force compliance with the selected >> interface (ensure that all methods / properties are implemented) or is >> there >> some larger reason? >> >> >> John W. Colby >> www.ColbyConsulting.com >> <<< tail skipped >>> -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cyx5 at cdc.gov Tue Mar 28 11:15:31 2006 From: cyx5 at cdc.gov (Nicholson, Karen) Date: Tue, 28 Mar 2006 12:15:31 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets Message-ID: I don't think you are a mad scientist, I think you are brilliant. I did not mean anything like that!!! Do you watch Dexter and DiDi??? -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Tuesday, March 28, 2006 11:19 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Shamil, I doubt anyone who has followed your ideas over time could ever think of you as a "mad scientist"! LOL I love OOP and in my shop we use interfaces as a matter of course. The interface is a road map and the modules that implement it follow the map but put their own spin on how they do it. That makes programming consistent because you can't just arbitrarily change the input and output of a routine dictated by the interface. I fell in love with the concept inheritance long before it was available to VB.Net programmers, but I wasn't willing to learn a language like Java or C++ to use it. It was definitely worth the wait, though. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Tuesday, March 28, 2006 3:44 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Folks, I just wanted to add, please, don't get me as a "mad scientist", from my writing like in my previous posting. Yes, I do realize that what I write may sound "a bit crazy". Yes, I do know that good solid modern programming can be done without OOP. All depends on context. But OOP is helpful in this quickly changing world to create and keep well harmonic solutions/software architectures. IMO "class-less" programming is less useful here and results in many overhead expenses, which OOP allows to avoid in long run. The only concept of this "class-less" relatively flexible programming I know are C++ template functions but this is specific C++ language construct, which doesn't exist in VB6/VBA/VB.NET... ...when programming on RSX-11M macro assembler(PDP-11) I did investigate this OS assembler sources because I had a task, which needed to "dynamically patch" one bit in the core of this OS. These assembler sources were a fantastic software code - so well the parts of their functionality were packed and reused. I have never seen so well crafted code like that! And this code was "class-less" of course. But writing OSes is rather stable area, with a few releases over years - different context I mean, which is OK for "class-less" programming... And I wanted also to note that I have many other interests in this life like sports, traveling when money allow, I have a big family, which I work for rather heavy everyday as many of you do. And I see this quickly changing world around me, and I'm still quickly loosing my head with a "women in my hands"(pun intended :)) like it was several days ago when I danced on a party several times with a nice women and my wife(beautiful women) who was also on that party asked me after it - "Did you like her?"... Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 28, 2006 2:09 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> Is it simply to force compliance with the selected interface > John, > > For this thread practical testing task > (http://smsconsulting.spb.ru/download/tests/a2dds.htm) > interfaces(Implements > feature) is used to: > > - have clearly defined interfaces to bind a form to its datasource(s) and > to > have this form communicating with custom class(es) handling runtime > events; > - have prepared "socket interfaces"/pluggable test-bed to easily > substitute > one solution's code with the others. This substitution can be done > dynamically(on run-time) or statically(on design time). > > I don't have a good web page link to read on interfaces(Implements > feature). > This concept of (abstract) interfaces has many practical applications. > On the other hand there is a lot of hype around it. > And there are different opinions is this concept good(has more positive > effect) or bad(has almost only negative effect) in solving everyday tasks > of > practical programming especially in custom programming of (relatively > simple) tasks for small-/middle-size businesses. > >>From "rocket computer science" point of view interfaces are the base to > implement in practice a subset of what is called also "Liskov Principle" ( > http://en.wikipedia.org/wiki/Liskov_substitution_principle) and its > consequence "don't talk to stranger" OOP principle - the "Law of > Demeter" - > http://www.site.uottawa.ca:4321/oose/index.html#LawofDemeter > > My own understanding of these concepts and their applicability in > practical > tasks fluctuates with time. > But only in positive spectrum part of opinions. > And I see more and more practical applications of this concept. > And especially in programming for small-/middle-size businesses or > programming shareware tools - this is the market(IMO) which urge for agile > eXtreme Programming(XP) and Test Driven Development (TDD) as one of the > most > powerful and flexible practical methods of XP. And the interfaces are a > corner stone concept of TDD and code refactoring in its modern > understanding - http://martinfowler.com/. > > The best book (IMO) I have ever read on such advanced concepts is "Object > Thinking" by David West (http://www.techbookreport.com/tbr0083.html) - "a > kind of philosophical journey towards an understanding of 'object > thinking."... > > The best practical books to get broad vision on this concept and to see > real > samples are collected here I think > (http://www.awprofessional.com/series/series.asp?st=44117&rl=1) - I have > just found it. > > Here is one of my exersizes - > http://smsconsulting.spb.ru/patterns/labs/ObserverPatternLab.htm ... > > Here is a very quick introduction to OOP concepts including interfaces - > http://java.sun.com/docs/books/tutorial/java/concepts/ > > "All that jazz"/buzz of the modern understanding of programming has got a > lot from the works of Christopher Alexander > (http://www.greatbuildings.com/architects/Christopher_Alexander.html), > Smalltalk community and from the work of GoF("Gang of Four" - Erich Gamma, > Richard Helm, Ralph Johnson, John M. Vlissides) - "Design Patterns: > Elements > of Reusable Object-Oriented Software" > http://www.awprofessional.com/bookstore/product.asp?isbn=0201633612&rl=1 > and > their followers as well as from the works/books of Kent Beck - "Embrace > change","Test Driven Development by Example" etc. > (http://search.barnesandnoble.com/booksearch/isbninquiry.asp?z=y&pwb=1&e an=9780321278654) > > That my e-mail may look a little bit more theoretical than practical - I > wanted to outline by that not my "shift" to theoretical computer > science/programming but my opinion that a modern advanced programmer has > to > have a broad vision/broad context picture of what are all that nowadays > OOA&D principles, what associations they are based on and where they go... > > As a conclusion I must say I didn't read even a half of the sources/books > I > referred above - I just compiled their list now as a reply on your > question > :) > If I ever had an opportunity for half an year paid vacations (dreams, > dreams...) I'd spend the first part in lazy doing nothing and the second > reading/investigating all that stuff I referred above - I do think (and I > do > know from what I read, found by myself or in books/articles and use in my > practice) that this is a "nuclear power" stuff with a broad applicability > in > practical everyday work of every modern programmer. > > And I must outline as a final conclusion - reading all these good books > and > artciles gives a lot to not "reinvent the wheel" (because they talk about > natural things every programmer will come to by themselves sooner or > later) > but only everyday practice in using these methods will make a developer > agile. This "nuclrear stuff" is not easy and one without enough practice > may > have easily lost themselves in many classes of the solutions created based > on these principles... > > I'm not there yet (where I should have been as I think after I have got > where these principles lead) - "most practioners would agree that it takes > a > few years to really 'get' objects, unlike the weeks or months it takes to > learn the syntax of a language."... > > Shamil > > P.S. Of course one can say they can program without objects etc. - yes, I > also can do that - it all depends on context of a practical task/project > to > be developed.... > > ----- Original Message ----- > From: "John Colby" > To: "'Access Developers discussion and problem solving'" > > Sent: Monday, March 27, 2006 6:02 PM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> Can you give me a quick rundown (or a web page to read) about interfaces >> and >> why you use them? Is it simply to force compliance with the selected >> interface (ensure that all methods / properties are implemented) or is >> there >> some larger reason? >> >> >> John W. Colby >> www.ColbyConsulting.com >> <<< tail skipped >>> -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Tue Mar 28 14:38:18 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Wed, 29 Mar 2006 00:38:18 +0400 Subject: [AccessD] Access XP forms bound to ADO recordsets References: Message-ID: <000f01c652a9$3c752a60$6501a8c0@Nant> Thank you, Karen, No, I didn't know who are Dexter and DeeDee - I needed to consult Google and my minor son who is often watching Fox Cartoon Networks animations. I almost do not watch TV I must say. Some good old action/thriller movies or comedy/romance like "Rambo 1: First Blood","Independence Day" or "Sliver" or "Pretty Girl"...or good (old) Soviet movies/animations - we have had them a lot with really good great actors - there are just a few these days left but the situation is changing to the better both with local actors skills and with local movies quality... Shamil ----- Original Message ----- From: "Nicholson, Karen" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 28, 2006 9:15 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >I don't think you are a mad scientist, I think you are brilliant. I did > not mean anything like that!!! Do you watch Dexter and DiDi??? > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte > Foust > Sent: Tuesday, March 28, 2006 11:19 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > > Shamil, > > I doubt anyone who has followed your ideas over time could ever think of > you as a "mad scientist"! LOL > > I love OOP and in my shop we use interfaces as a matter of course. The > interface is a road map and the modules that implement it follow the map > but put their own spin on how they do it. That makes programming > consistent because you can't just arbitrarily change the input and > output of a routine dictated by the interface. I fell in love with the > concept inheritance long before it was available to VB.Net programmers, > but I wasn't willing to learn a language like Java or C++ to use it. It > was definitely worth the wait, though. > > > Charlotte Foust > <<< tail skipped >>> From shamil at users.mns.ru Tue Mar 28 14:49:54 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Wed, 29 Mar 2006 00:49:54 +0400 Subject: [AccessD] Does anybody work on this level of abstraction with real life apps data models? Message-ID: <001001c652a9$3c9dc100$6501a8c0@Nant> Hi All, I wanted to ask you how do you usually try to quickly understand existing real life applications data models? I mean the following: - imagine you've got a task to program some utility code for an application with rather tricky datamodel, working application and the question to change this tricky datamodel is out of your responsibility - you're not allowed even to discuss this question (I'm exaggerating about that latter - just wanted to outline that your task is to understand the existing datamodel whatever it's as quickly as possible, accept it and to deliver your solution in time and as good as possible in the given context because the customer is waiting for your working solution not your considerations about datamodel and how good it could have been if you have been allowed to change it....). - there is a good description of this datamodel and its business area but to program effectively you can use just a subset of this datamodel and its description, which you need to quickly filter out from all the existing (thick) stuff to make a simple submodel diagram of the tables used in your utilities and their relationships. And you do not want to spend time to understand all the rest of this datamodel because you're more interested to go watching the next series of Dexter and DeeDee or watch the 100th time your favorite action movie like I do sometimes watch "The White Sun of Desert" - a famous here Soviet action movie I first time watched in 1969 :)... The question is how to quickly understand such a data model and to get it well arranged to solve the urgent customer task? (You given the datamodel diagram but relationships are intersected in a tricky net) Did you ever try to solve such a task first of all on an abstract level? I mean did you ever try to "play" with existing datamodel relationships diagram (graphical diagram I mean) without knowing(/without even taking into account) the meanings(titles) of the tables and their relationships? With the main purpose of this playing being to finally get a relationships structure(graphical diagram) clearly showing you what are the key points of this datamodel, what a the "juncture points", what are the "bands and whistles"? I did try and I think it always work for tricky, sometimes not optimal but rather well normalized data model. I think this is called "building star schema abstract method". And it works in most of the cases. Try it. I did try to google for "start schema" concept definition and as far as I see it is usually linked with OLAP not OLTP data models as here (http://www.tdan.com/i021hy01.htm). I did read first about star schema data models abstraction in a short article in one of programming magazines somewhere in the summer 1995 and since then I use this concept and it always work well am I building datamodels from scratch or am I trying to understand/arrange existing ones... Just wanted to share how (sometimes boring task) of getting well understanding of an intersected net of an existing data model relationships can be converted in a joyful(?) game of shuffling these table's relationships to get at a clear view of the subject business area... Shamil From KIsmert at TexasSystems.com Tue Mar 28 15:44:19 2006 From: KIsmert at TexasSystems.com (Ken Ismert) Date: Tue, 28 Mar 2006 15:44:19 -0600 Subject: [AccessD] Interfaces -- WAS Access XP forms bound to ADO recordsets Message-ID: All objects have an implicit, or default interface. It is the set of property and method calling definitions (or signatures) for the object. Interfaces are nice because they allow the compiler check for calling compliance beforehand, and not wait until runtime to find out that a method was misspelled, or the wrong number of parameters given. Explicit interfaces are helpful with polymorphism -- when many objects need to assume one role, or one object needs to assume many roles. Many objects can implement a single interface, and thus provide services in a standard way to a consumer. Similarly, one object can implement many interfaces, and so fulfill many roles. Interfaces aren't as flexible as inheritance -- when an object implements an interface, it gets just the property and method signatures, but not any functionality. Each object must fill in the interface with its own functionality. Also, you get the whole interface -- you can't just implement the bits you like. While a minor part of the .NET object specification, interfaces are the cutting edge of object sophistication in VBA. And so it will remain -- VBA is a dead language, and will in not too many years be looked back on like Algol, or maybe Fortran. -Ken From shamil at users.mns.ru Tue Mar 28 16:33:15 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Wed, 29 Mar 2006 02:33:15 +0400 Subject: [AccessD] Interfaces -- WAS Access XP forms bound to ADOrecordsets References: Message-ID: <003101c652b7$9c943810$6501a8c0@Nant> Ken, I'd note all that below are "old school" definitions (beginning of 90ies) - and we all very well know what they gave us - COM and VB6/VBA, good but too inflexible to be true in this quickly changing world. This programming world is getting dynamic and late bound interfaces/run-time binding are in the same or even bigger favor now than compile time bound interfaces and implementation inheritance. Test driven development means that you tested all the interfaces by running unit tests - and therefore it doesn't matter does your compiler checks interfaces definitions syntax or not (yes, it's useful but not more than that). Ruby is the next challenge to MS C# and VB.NET... Shamil ----- Original Message ----- From: "Ken Ismert" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 29, 2006 1:44 AM Subject: Re: [AccessD] Interfaces -- WAS Access XP forms bound to ADOrecordsets > > All objects have an implicit, or default interface. It is the set of > property and method calling definitions (or signatures) for the object. > > Interfaces are nice because they allow the compiler check for calling > compliance beforehand, and not wait until runtime to find out that a > method was misspelled, or the wrong number of parameters given. > > Explicit interfaces are helpful with polymorphism -- when many objects > need to assume one role, or one object needs to assume many roles. > > Many objects can implement a single interface, and thus provide services > in a standard way to a consumer. Similarly, one object can implement > many interfaces, and so fulfill many roles. > > Interfaces aren't as flexible as inheritance -- when an object > implements an interface, it gets just the property and method > signatures, but not any functionality. Each object must fill in the > interface with its own functionality. Also, you get the whole interface > -- you can't just implement the bits you like. > > While a minor part of the .NET object specification, interfaces are the > cutting edge of object sophistication in VBA. And so it will remain -- > VBA is a dead language, and will in not too many years be looked back on > like Algol, or maybe Fortran. > > -Ken > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From ecritt1 at alltel.net Tue Mar 28 17:19:58 2006 From: ecritt1 at alltel.net (Penn White) Date: Tue, 28 Mar 2006 18:19:58 -0500 Subject: [AccessD] Cannot uninstall Access 2003 Runtime References: Message-ID: <001e01c652be$218e36f0$0302a8c0@pennp4> Karen, Do you happen to have a reference to this documentation? I have searched MSDN several times and couldn't find anything on it. I have been informed by someone else that the original install package CD needs to be in the CD drive in order for the uninstall to work. I tried it on my test runtime installation on my laptop and it didn't work but I'm going back to a pre-runtime restore point and will try it agani. Thanks again, Penn ----- Original Message ----- From: "Nicholson, Karen" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 28, 2006 8:06 AM Subject: Re: [AccessD] Cannot uninstall Access 2003 Runtime > Microsoft finally did document the problem official fixes. When I ran > into it, it was not recognized as a problem. I believe Microsoft is a > partner with pharmaceutical companies - their tweeks can drive a person > to turn into a Shamil!!! I need a picture of Shamil, I picture a man > with 7 or 8 PCs, saying swear words in his native language. > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Penn White > Sent: Tuesday, March 28, 2006 7:34 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Cannot uninstall Access 2003 Runtime > > > Fabulous! > >> Let me look for it and panick not. > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From martyconnelly at shaw.ca Tue Mar 28 17:31:12 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Tue, 28 Mar 2006 15:31:12 -0800 Subject: [AccessD] Does anybody work on this level of abstraction with real life apps data models? References: <001001c652a9$3c9dc100$6501a8c0@Nant> Message-ID: <4429C740.2020209@shaw.ca> Here is one starting point, it is a library of 4 or 5 hundred simple data models plus a simple tutorial. Handy if you need something to show a client in half an hour as a starting discussion point. Some can be used as sub-models http://www.databaseanswers.org/data_models/index.htm Some samples have a conceptual model, physical data model and or business rules Some also have an emailable Access mdb. Sample business rules http://www.databaseanswers.org/data_models/airline_booking/facts.htm For re-engineering or design, I use a CASE tool, most are in the $99 range, some go for thousands. The one I prefer for Access SQL Server work is Enterprise Architect http://www.sparxsystems.com.au/ea.htm or some of these http://www.databaseanswers.org/modelling_tools.htm The guy that runs this site prefers Dezign http://www.datanamic.com/ Shamil Salakhetdinov wrote: >Hi All, > >I wanted to ask you how do you usually try to quickly understand existing >real life applications data models? > >I mean the following: > >- imagine you've got a task to program some utility code for an application >with rather tricky datamodel, working application and the question to change >this tricky datamodel is out of your responsibility - you're not allowed >even to discuss this question (I'm exaggerating about that latter - just >wanted to outline that your task is to understand the existing datamodel >whatever it's as quickly as possible, accept it and to deliver your solution >in time and as good as possible in the given context because the customer is >waiting for your working solution not your considerations about datamodel >and how good it could have been if you have been allowed to change it....). > >- there is a good description of this datamodel and its business area but to >program effectively you can use just a subset of this datamodel and its >description, which you need to quickly filter out from all the existing >(thick) stuff to make a simple submodel diagram of the tables used in your >utilities and their relationships. And you do not want to spend time to >understand all the rest of this datamodel because you're more interested to >go watching the next series of Dexter and DeeDee or watch the 100th time >your favorite action movie like I do sometimes watch "The White Sun of >Desert" - a famous here Soviet action movie I first time watched in 1969 >:)... > >The question is how to quickly understand such a data model and to get it >well arranged to solve the urgent customer task? (You given the datamodel >diagram but relationships are intersected in a tricky net) > >Did you ever try to solve such a task first of all on an abstract level? I >mean did you ever try to "play" with existing datamodel relationships >diagram (graphical diagram I mean) without knowing(/without even taking into >account) the meanings(titles) of the tables and their relationships? With >the main purpose of this playing being to finally get a relationships >structure(graphical diagram) clearly showing you what are the key points of >this datamodel, what a the "juncture points", what are the "bands and >whistles"? > >I did try and I think it always work for tricky, sometimes not optimal but >rather well normalized data model. > >I think this is called "building star schema abstract method". >And it works in most of the cases. >Try it. > >I did try to google for "start schema" concept definition and as far as I >see it is usually linked with OLAP not OLTP data models as here >(http://www.tdan.com/i021hy01.htm). >I did read first about star schema data models abstraction in a short >article in one of programming magazines somewhere in the summer 1995 and >since then I use this concept and it always work well am I building >datamodels from scratch or am I trying to understand/arrange existing >ones... > >Just wanted to share how (sometimes boring task) of getting well >understanding of an intersected net of an existing data model relationships >can be converted in a joyful(?) game of shuffling these table's >relationships to get at a clear view of the subject business area... > >Shamil > > > -- Marty Connelly Victoria, B.C. Canada From cfoust at infostatsystems.com Tue Mar 28 18:21:13 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Tue, 28 Mar 2006 16:21:13 -0800 Subject: [AccessD] Does anybody work on this level of abstraction with reallife apps data models? Message-ID: Shamil, You'll find more star schema information if you google data warehousing, because it is commonly used in that world. The OLAP thing is just an elaboration on it. A good book is Ralph Kimball's book, The Date Warehouse Toolkit. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Tuesday, March 28, 2006 12:50 PM To: !DBA-MAIN Subject: [AccessD] Does anybody work on this level of abstraction with reallife apps data models? Hi All, I wanted to ask you how do you usually try to quickly understand existing real life applications data models? I mean the following: - imagine you've got a task to program some utility code for an application with rather tricky datamodel, working application and the question to change this tricky datamodel is out of your responsibility - you're not allowed even to discuss this question (I'm exaggerating about that latter - just wanted to outline that your task is to understand the existing datamodel whatever it's as quickly as possible, accept it and to deliver your solution in time and as good as possible in the given context because the customer is waiting for your working solution not your considerations about datamodel and how good it could have been if you have been allowed to change it....). - there is a good description of this datamodel and its business area but to program effectively you can use just a subset of this datamodel and its description, which you need to quickly filter out from all the existing (thick) stuff to make a simple submodel diagram of the tables used in your utilities and their relationships. And you do not want to spend time to understand all the rest of this datamodel because you're more interested to go watching the next series of Dexter and DeeDee or watch the 100th time your favorite action movie like I do sometimes watch "The White Sun of Desert" - a famous here Soviet action movie I first time watched in 1969 :)... The question is how to quickly understand such a data model and to get it well arranged to solve the urgent customer task? (You given the datamodel diagram but relationships are intersected in a tricky net) Did you ever try to solve such a task first of all on an abstract level? I mean did you ever try to "play" with existing datamodel relationships diagram (graphical diagram I mean) without knowing(/without even taking into account) the meanings(titles) of the tables and their relationships? With the main purpose of this playing being to finally get a relationships structure(graphical diagram) clearly showing you what are the key points of this datamodel, what a the "juncture points", what are the "bands and whistles"? I did try and I think it always work for tricky, sometimes not optimal but rather well normalized data model. I think this is called "building star schema abstract method". And it works in most of the cases. Try it. I did try to google for "start schema" concept definition and as far as I see it is usually linked with OLAP not OLTP data models as here (http://www.tdan.com/i021hy01.htm). I did read first about star schema data models abstraction in a short article in one of programming magazines somewhere in the summer 1995 and since then I use this concept and it always work well am I building datamodels from scratch or am I trying to understand/arrange existing ones... Just wanted to share how (sometimes boring task) of getting well understanding of an intersected net of an existing data model relationships can be converted in a joyful(?) game of shuffling these table's relationships to get at a clear view of the subject business area... Shamil -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From KIsmert at TexasSystems.com Tue Mar 28 18:49:47 2006 From: KIsmert at TexasSystems.com (Ken Ismert) Date: Tue, 28 Mar 2006 18:49:47 -0600 Subject: [AccessD] Access XP forms bound to ADO recordsets Message-ID: >> ...I danced on a party several times with a nice women... You go to parties ... With non-virtual women?!?!?! Can I come next time, please-please-please??? Doh ... You live in Russia ... -Ken From pcs at azizaz.com Wed Mar 29 01:05:48 2006 From: pcs at azizaz.com (Borge Hansen) Date: Wed, 29 Mar 2006 17:05:48 +1000 Subject: [AccessD] Click Event References: Message-ID: <016c01c652ff$3801d4a0$fa10a8c0@Albatross> Here's a less abstract question: We are in a Form's code module I have code on the click event of a command button, called say cmd3 Anywhere in the code module I can call the click event like this: cmd3_click Is this an ok way? Further, how can I called the click event of the same command button in this context: Me("cmd3") ????click thanks for any quick reply regards borge From shamil at users.mns.ru Wed Mar 29 02:34:16 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Wed, 29 Mar 2006 12:34:16 +0400 Subject: [AccessD] Click Event References: <016c01c652ff$3801d4a0$fa10a8c0@Albatross> Message-ID: <002201c6530b$92acc660$6501a8c0@Nant> > cmd3_click > Is this an ok way? Borge, Yes, that's OK. Although if you need to call the code of a button's Click event from several parts of your form's code or even from outside of the form's module then you'd better separate this code into a (public) function/sub. > Me("cmd3") ????click You cannot call Click event of a button - you can indirectly force it to be triggered/fired, e.g. this way: Me("cmd3").SetFocus SendKeys "{Enter}" Shamil ----- Original Message ----- From: "Borge Hansen" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 29, 2006 11:05 AM Subject: [AccessD] Click Event > Here's a less abstract question: > > We are in a Form's code module > > I have code on the click event of a command button, called say cmd3 > > Anywhere in the code module I can call the click event like this: > cmd3_click > > Is this an ok way? > > Further, how can I called the click event of the same command button in > this > context: > > Me("cmd3") ????click > > thanks for any quick reply > > regards > borge > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From bheid at appdevgrp.com Wed Mar 29 06:25:12 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Wed, 29 Mar 2006 07:25:12 -0500 Subject: [AccessD] [SPAM SUSPECT] Click Event In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D792D9@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D35191@ADGSERVER> I prefer to have a helper function that can be called from cmd3_onclick and from elsewhere as needed. That way, if the processing for cmd3 needs to change, and you would not want the changes to occur for the other locations that you are calling the existing code, you do not have to worry about changing all of your code elsewhere. But, I have to admit, I have taken that shortcut before. LOL. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Borge Hansen Sent: Wednesday, March 29, 2006 2:06 AM To: Access Developers discussion and problem solving Subject: [SPAM SUSPECT] [AccessD] Click Event Importance: Low Here's a less abstract question: We are in a Form's code module I have code on the click event of a command button, called say cmd3 Anywhere in the code module I can call the click event like this: cmd3_click Is this an ok way? Further, how can I called the click event of the same command button in this context: Me("cmd3") ????click thanks for any quick reply regards borge From Chester_Kaup at kindermorgan.com Wed Mar 29 08:03:31 2006 From: Chester_Kaup at kindermorgan.com (Kaup, Chester) Date: Wed, 29 Mar 2006 08:03:31 -0600 Subject: [AccessD] Message box in a macro Message-ID: Is it possible to display in a message box the time that a macro starts running and in another message box the total time to run the macro? Or is there a better way to do this. Chester Kaup Engineering Technician Kinder Morgan CO2 Company, LLP Office (432) 688-3797 FAX (432) 688-3799 No trees were killed in the sending of this message. However a large number of electrons were terribly inconvenienced. From bchacc at san.rr.com Wed Mar 29 08:26:56 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Wed, 29 Mar 2006 06:26:56 -0800 Subject: [AccessD] Message box in a macro In-Reply-To: References: Message-ID: <442A9930.2030007@san.rr.com> Chester: I'd store the start and stop times in a variable and display them both, with the elapsed time, at the end of the macro in a message box or a pop up form. That way you could see just how long it took to run. Rocky Kaup, Chester wrote: > Is it possible to display in a message box the time that a macro starts > running and in another message box the total time to run the macro? Or > is there a better way to do this. > > > > Chester Kaup > > Engineering Technician > > Kinder Morgan CO2 Company, LLP > > Office (432) 688-3797 > > FAX (432) 688-3799 > > > > > > No trees were killed in the sending of this message. However a large > number of electrons were terribly inconvenienced. > > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From ewaldt at gdls.com Wed Mar 29 08:42:08 2006 From: ewaldt at gdls.com (ewaldt at gdls.com) Date: Wed, 29 Mar 2006 09:42:08 -0500 Subject: [AccessD] Trusted Site question In-Reply-To: Message-ID: I'm sure you're all familiar with this wunnerful message: "Microsoft Access cannot open this file. This file is located outside your intranet or on an untrusted site. Microsoft Access will not open the file due to potential, security problems. To open the file, copy it to your machine or an accessible network location." In my particular case, the file is on a trusted site, which is correctly configured as such in Internet Explorer. Is there something else that needs to be done within Access itself? I need for this file to be accessible to several people at a time, using record-locking, so copying to one's hard drive and then uploading it back to the site won't cut it. TIA. Thomas F. Ewald FCS Database Manager General Dynamics Land Systems (586) 276-1256 This is an e-mail from General Dynamics Land Systems. It is for the intended recipient only and may contain confidential and privileged information. No one else may read, print, store, copy, forward or act in reliance on it or its attachments. If you are not the intended recipient, please return this message to the sender and delete the message and any attachments from your computer. Your cooperation is appreciated. From bill_Patten at earthlink.net Wed Mar 29 09:55:53 2006 From: bill_Patten at earthlink.net (Bill Patten) Date: Wed, 29 Mar 2006 07:55:53 -0800 Subject: [AccessD] Trusted Site question References: Message-ID: <000d01c65349$42f6b3e0$6501a8c0@BPCS> Hi Thomas, Usually you can just right click on the file and select properties, down at the bottom of the form you may see a check box marked unblock, unclick it an all should be OK. Copying the file from an ntfs format to a fat32 format and back sometimes works also. Bill ----- Original Message ----- From: To: Sent: Wednesday, March 29, 2006 6:42 AM Subject: [AccessD] Trusted Site question I'm sure you're all familiar with this wunnerful message: "Microsoft Access cannot open this file. This file is located outside your intranet or on an untrusted site. Microsoft Access will not open the file due to potential, security problems. To open the file, copy it to your machine or an accessible network location." In my particular case, the file is on a trusted site, which is correctly configured as such in Internet Explorer. Is there something else that needs to be done within Access itself? I need for this file to be accessible to several people at a time, using record-locking, so copying to one's hard drive and then uploading it back to the site won't cut it. TIA. Thomas F. Ewald FCS Database Manager General Dynamics Land Systems (586) 276-1256 This is an e-mail from General Dynamics Land Systems. It is for the intended recipient only and may contain confidential and privileged information. No one else may read, print, store, copy, forward or act in reliance on it or its attachments. If you are not the intended recipient, please return this message to the sender and delete the message and any attachments from your computer. Your cooperation is appreciated. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From ecritt1 at alltel.net Wed Mar 29 10:48:46 2006 From: ecritt1 at alltel.net (Penn White) Date: Wed, 29 Mar 2006 11:48:46 -0500 Subject: [AccessD] Cannot uninstall Access 2003 Runtime References: <001e01c652be$218e36f0$0302a8c0@pennp4> Message-ID: <002101c65350$a589d300$0302a8c0@pennp4> For anyone who's interested, I solved the problem. The uninstall MUST be run from the Setup Package CD itself. Running the "Remove" in Control Panel, Add/Remove Programs will NOT work, whether the origninal install CD is in the CD drive or not. In fact, even after running "Remove" from the CD Package Setup.exe, if you look in Control Panel - Add/Remove programs, Microsoft Access 2003 Runtime is still there. irrespective of that, you can still run a re-install off the same CD (or another, newer version, presumably, although I haven't tested it). Penn From martyconnelly at shaw.ca Wed Mar 29 12:11:00 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Wed, 29 Mar 2006 10:11:00 -0800 Subject: [AccessD] Cannot uninstall Access 2003 Runtime References: <001e01c652be$218e36f0$0302a8c0@pennp4> <002101c65350$a589d300$0302a8c0@pennp4> Message-ID: <442ACDB4.3020409@shaw.ca> I wonder, if this isn't somehow to protect against having multiple runtime installs removed either for a specific version or multiple versions of the Access runtime on the machine. Penn White wrote: >For anyone who's interested, I solved the problem. > >The uninstall MUST be run from the Setup Package CD itself. Running the >"Remove" in Control Panel, Add/Remove Programs will NOT work, whether the >origninal install CD is in the CD drive or not. In fact, even after running >"Remove" from the CD Package Setup.exe, if you look in Control Panel - >Add/Remove programs, Microsoft Access 2003 Runtime is still there. >irrespective of that, you can still run a re-install off the same CD (or >another, newer version, presumably, although I haven't tested it). > >Penn > > > -- Marty Connelly Victoria, B.C. Canada From KIsmert at TexasSystems.com Wed Mar 29 13:29:23 2006 From: KIsmert at TexasSystems.com (Ken Ismert) Date: Wed, 29 Mar 2006 13:29:23 -0600 Subject: [AccessD] Interfaces Message-ID: Shamil, >>I'd note all that below are "old school" >>definitions (beginning of 90ies) Yes, I admit that. >> ... COM and VB6/VBA, good but too inflexible ... >> ... late bound interfaces/run-time binding >> are in the same or even bigger favor ... Surprisingly, VB6/VBA is not fundamentally inflexible -- but the orthodoxy of how to use it is. Remove Option Explicit from your module header, and you can write code like: Public Sub Test() a = "ABC" b = 1234 Set c = CurrentDb() Debug.Print a, VarType(a) Debug.Print b, VarType(b) Debug.Print c.Name, TypeName(c) End Sub Looking kind of dynamic, no? But how many times have the VB gods told you that this style of code was wrong? And VB has always had late bound interfaces/run-time binding using the Object type. In fact, it may be possible to do a decent implementation of run-time introspection and partial binding to foreign interfaces -- using VBA only, with no custom support DLLs/ActiveX required. My point is not to bash the new stuff -- it has its obvious merits. But, if you are prepared to shed preconceptions, the old wave can probably do 95% of what the new wave can do. >> ... Test driven development means that you tested >> all the interfaces by running unit tests ... That is the big problem with dynamic languages: verifiability. Thus, the emphasis on test-driven development in the dynamic Ruby and Python platforms. It is the latest attempt to bridge the chasm between static/inflexible/verifiable languages (C, C++, Java, ...) and dynamic/flexible/hard-to-verify (Lisp, Smalltalk, Python, Ruby). I bring up Lisp and Smalltalk because they, in their day, were supposed to revolutionize the world with their dynamic flexibility -- but they didn't. >> Ruby is the next challenge to MS C# and VB.NET... In terms of purity of concept, Ruby is it. For the time being, I'm going with Python, not because it is the 'ideal' language, but for purely practical reasons that I am not going to outline in this post. -Ken From jmhecht at earthlink.net Wed Mar 29 14:03:29 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Wed, 29 Mar 2006 12:03:29 -0800 Subject: [AccessD] Report Grouping Question Message-ID: <002001c6536b$d97e58a0$6701a8c0@HPLaptop> No more goofing off. I need to finish this project. I have a report that groups employees by terminal they work at. If the list is one page things are fine. If there is a terminal with more than one page for that terminal I need to list that terminal on page 2 or more for a given terminal. Joe Hecht jmhecht at earthlink.net From bchacc at san.rr.com Wed Mar 29 14:20:57 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Wed, 29 Mar 2006 12:20:57 -0800 Subject: [AccessD] Report Grouping Question In-Reply-To: <002001c6536b$d97e58a0$6701a8c0@HPLaptop> References: <002001c6536b$d97e58a0$6701a8c0@HPLaptop> Message-ID: <442AEC29.4080507@san.rr.com> Joe: There's a Repeat Section property on group headers. If you're grouping on terminal set that to true and the header with the terminal ID will repeat at the top of the next page. Rocky Joe Hecht wrote: > No more goofing off. I need to finish this project. > > > > I have a report that groups employees by terminal they work > at. If the list is one page things are fine. > > > > If there is a terminal with more than one page for that > terminal I need to list that terminal on page 2 or more for > a given terminal. > > > > Joe Hecht > > jmhecht at earthlink.net > > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From Donald.A.McGillivray at sprint.com Wed Mar 29 14:35:46 2006 From: Donald.A.McGillivray at sprint.com (Mcgillivray, Don [IT]) Date: Wed, 29 Mar 2006 14:35:46 -0600 Subject: [AccessD] Report Grouping Question Message-ID: Joe, As an alternative - if horizontal report real estate permits - you might want to play around with the settings on the "Columns" tab of the Page Setup dialog. In cases where you're displaying a narrow (less than half the width of the page) column of data, this can get you much more data per page. Don From jmhecht at earthlink.net Wed Mar 29 14:38:00 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Wed, 29 Mar 2006 12:38:00 -0800 Subject: [AccessD] Report Grouping Question In-Reply-To: <442AEC29.4080507@san.rr.com> Message-ID: <002a01c65370$ac473c30$6701a8c0@HPLaptop> Thanks Rocky, That's what I forgot. Joe Hecht jmhecht at earthlink.net -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Wednesday, March 29, 2006 12:21 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Report Grouping Question Joe: There's a Repeat Section property on group headers. If you're grouping on terminal set that to true and the header with the terminal ID will repeat at the top of the next page. Rocky Joe Hecht wrote: > No more goofing off. I need to finish this project. > > > > I have a report that groups employees by terminal they work > at. If the list is one page things are fine. > > > > If there is a terminal with more than one page for that > terminal I need to list that terminal on page 2 or more for > a given terminal. > > > > Joe Hecht > > jmhecht at earthlink.net > > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jmhecht at earthlink.net Wed Mar 29 14:40:49 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Wed, 29 Mar 2006 12:40:49 -0800 Subject: [AccessD] Report Grouping Question In-Reply-To: Message-ID: <002b01c65371$10acd590$6701a8c0@HPLaptop> Good thought for future design thought. This one just has a lot of folks. Thanks Joe Hecht jmhecht at earthlink.net -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mcgillivray, Don [IT] Sent: Wednesday, March 29, 2006 12:36 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Report Grouping Question Joe, As an alternative - if horizontal report real estate permits - you might want to play around with the settings on the "Columns" tab of the Page Setup dialog. In cases where you're displaying a narrow (less than half the width of the page) column of data, this can get you much more data per page. Don -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jmhecht at earthlink.net Wed Mar 29 14:55:54 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Wed, 29 Mar 2006 12:55:54 -0800 Subject: [AccessD] Add new record issues Message-ID: <002c01c65373$2c677540$6701a8c0@HPLaptop> I have a form subform with tabs that looks at existing data no problem. I am having a bad time using it to add new records. When I put in a new employee it pulls up existing records and not necessarily for the correct employee. The add new form is opened from a command button wizard that is supposedly opening the form in add new mode. Help please. Joe Hecht jmhecht at earthlink.net From jmhecht at earthlink.net Wed Mar 29 14:59:57 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Wed, 29 Mar 2006 12:59:57 -0800 Subject: [AccessD] Add new record issues In-Reply-To: <002c01c65373$2c677540$6701a8c0@HPLaptop> Message-ID: <003101c65373$bcf47680$6701a8c0@HPLaptop> I made a copy of the form and set data entry = true. That is not the answer. Joe Hecht jmhecht at earthlink.net -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Joe Hecht Sent: Wednesday, March 29, 2006 12:56 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Add new record issues I have a form subform with tabs that looks at existing data no problem. I am having a bad time using it to add new records. When I put in a new employee it pulls up existing records and not necessarily for the correct employee. The add new form is opened from a command button wizard that is supposedly opening the form in add new mode. Help please. Joe Hecht jmhecht at earthlink.net -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Wed Mar 29 15:20:22 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Thu, 30 Mar 2006 01:20:22 +0400 Subject: [AccessD] Interfaces References: Message-ID: <000b01c65376$d5b4cc80$6501a8c0@Nant> > I bring up Lisp and Smalltalk because they, in their day, were supposed > to revolutionize the world with their dynamic flexibility -- but they > didn't. Yes, Ken, And before that(?) it was Artificial Intelligence (AI), which was expected to solve all the problems... What happens AFAIU is a natural evolution and as I was teached here on Marxists-Leninist Dialectics (:)) lectures while in high school - evolution is based on "the unity and the struggle of the contrasts/differences". And evolution evolves as a spiral and from time to time the "law of denying the denying" (sorry for my English) rejects almost all the principles, which were the foundation of an "old school" theory and practice and returns the "good old" principles and makes them the foundation of the "new" theory and practice but on higher level of evolution spiral.... This is what happens in programming now IMO - SmallTalk and LISP were great but a way ahead their time to be effectively used for practical real life programming - these days the nowadays practical challenges and the high level of the modern technology allow to "recall them from shadows" and effectively use and even go on higher level as Ruby (I'm not Ruby expert, even not a beginner - I only read about some of its principles and what it allows to do dynamically on run-time)... > But, if you are prepared to shed preconceptions, the old wave can probably > do > 95% of what the new wave can do. Ken, IMO it can't solve the issues, which can be effectively solved only by Test Driven Development and Unit Testing - the latter is the "new school" and in general the new school programming languages can exist without almost any compile time binding. Well, the pure "old school" can still do a lot but based on BDUF(Big Design UpFront) and intensive and expensive "old school" testing methods. As I noted already - all depends on context - and I do agree that good old C++(its latest standard with STL etc.) together with TDD and Unit Testing can solve 95% of the modern challenges... Shamil ----- Original Message ----- From: "Ken Ismert" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 29, 2006 11:29 PM Subject: Re: [AccessD] Interfaces > > Shamil, > >>>I'd note all that below are "old school" >>>definitions (beginning of 90ies) > > Yes, I admit that. > >>> ... COM and VB6/VBA, good but too inflexible ... >>> ... late bound interfaces/run-time binding >>> are in the same or even bigger favor ... > > Surprisingly, VB6/VBA is not fundamentally inflexible -- but the > orthodoxy of how to use it is. Remove Option Explicit from your module > header, and you can write code like: > > Public Sub Test() > a = "ABC" > b = 1234 > Set c = CurrentDb() > Debug.Print a, VarType(a) > Debug.Print b, VarType(b) > Debug.Print c.Name, TypeName(c) > End Sub > > Looking kind of dynamic, no? But how many times have the VB gods told > you that this style of code was wrong? And VB has always had late bound > interfaces/run-time binding using the Object type. In fact, it may be > possible to do a decent implementation of run-time introspection and > partial binding to foreign interfaces -- using VBA only, with no custom > support DLLs/ActiveX required. > > My point is not to bash the new stuff -- it has its obvious merits. But, > if you are prepared to shed preconceptions, the old wave can probably do > 95% of what the new wave can do. > >>> ... Test driven development means that you tested >>> all the interfaces by running unit tests ... > > That is the big problem with dynamic languages: verifiability. Thus, the > emphasis on test-driven development in the dynamic Ruby and Python > platforms. It is the latest attempt to bridge the chasm between > static/inflexible/verifiable languages (C, C++, Java, ...) and > dynamic/flexible/hard-to-verify (Lisp, Smalltalk, Python, Ruby). > > I bring up Lisp and Smalltalk because they, in their day, were supposed > to revolutionize the world with their dynamic flexibility -- but they > didn't. > >>> Ruby is the next challenge to MS C# and VB.NET... > > In terms of purity of concept, Ruby is it. For the time being, I'm going > with Python, not because it is the 'ideal' language, but for purely > practical reasons that I am not going to outline in this post. > > -Ken > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From jmhecht at earthlink.net Wed Mar 29 17:55:36 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Wed, 29 Mar 2006 15:55:36 -0800 Subject: [AccessD] SO CAL MEETING Message-ID: <004a01c6538c$46a91210$6701a8c0@HPLaptop> Any interest in a SO Cal Conference? Not sure when other than not the week of the 4th of July. This is a mood check only. Not a promise Joe Hecht jmhecht at earthlink.net From bchacc at san.rr.com Wed Mar 29 18:28:03 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Wed, 29 Mar 2006 16:28:03 -0800 Subject: [AccessD] SO CAL MEETING In-Reply-To: <004a01c6538c$46a91210$6701a8c0@HPLaptop> References: <004a01c6538c$46a91210$6701a8c0@HPLaptop> Message-ID: <442B2613.6090308@san.rr.com> No can do. 4th of July we we're at camp. Not too far away - Lake Arrowhead - but just far enough. Rocky Joe Hecht wrote: > Any interest in a SO Cal Conference? Not sure when other > than not the week of the 4th of July. > > > > This is a mood check only. Not a promise > > > > Joe Hecht > > jmhecht at earthlink.net > > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From kathryn at bassett.net Wed Mar 29 19:30:23 2006 From: kathryn at bassett.net (Kathryn Bassett) Date: Wed, 29 Mar 2006 17:30:23 -0800 Subject: [AccessD] SO CAL MEETING In-Reply-To: <004a01c6538c$46a91210$6701a8c0@HPLaptop> Message-ID: <20060329173028.3EA9542A@dm17.mta.everyone.net> Joe H said: > Any interest in a SO Cal Conference? Not sure when other than > not the week of the 4th of July. > This is a mood check only. Not a promise Will be gone Jul 11-18, but otherwise I'm pretty open (agree that 4th is not a good idea). -- Kathryn Rhinehart Bassett (Pasadena CA) "Genealogy is my bag" "GH is my soap" kathryn at bassett.net http://bassett.net From jmhecht at earthlink.net Wed Mar 29 20:23:32 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Wed, 29 Mar 2006 18:23:32 -0800 Subject: [AccessD] Update Query (I think) Question Message-ID: <005301c653a0$f16e0570$6701a8c0@HPLaptop> I have a field that currently is 00-00 format. I want to make it 00-000. I am having trouble coming up with a way to do this. Please advise. Thanks Joe Hecht jmhecht at earthlink.net From harkinsss at bellsouth.net Wed Mar 29 20:30:41 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Wed, 29 Mar 2006 21:30:41 -0500 Subject: [AccessD] Update Query (I think) Question In-Reply-To: <005301c653a0$f16e0570$6701a8c0@HPLaptop> Message-ID: <000901c653a1$f1298cf0$a7b3d6d1@SUSANONE> UPDATE table SET field = "00-000" WHERE field = "00-00" Susan H. I have a field that currently is 00-00 format. I want to make it 00-000. From jmhecht at earthlink.net Wed Mar 29 20:48:56 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Wed, 29 Mar 2006 18:48:56 -0800 Subject: [AccessD] Update Query (I think) Question In-Reply-To: <000901c653a1$f1298cf0$a7b3d6d1@SUSANONE> Message-ID: <006001c653a4$7da560d0$6701a8c0@HPLaptop> Susan, Where did I mess up your genius? UPDATE 30_tbl_AI_Master2 SET field [30_tbl_AI_Master2].ACCIDENT = "00-000" WHERE field ((([30_tbl_AI_Master2].ACCIDENT)="00-00")); Joe Hecht jmhecht at earthlink.net -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Wednesday, March 29, 2006 6:31 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Update Query (I think) Question UPDATE table SET field = "00-000" WHERE field = "00-00" Susan H. I have a field that currently is 00-00 format. I want to make it 00-000. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jmhecht at earthlink.net Wed Mar 29 21:01:53 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Wed, 29 Mar 2006 19:01:53 -0800 Subject: [AccessD] Day of week as name Message-ID: <006101c653a6$4c9b4ac0$6701a8c0@HPLaptop> Trying to return the day of the week as a name. weekdayname(txtACCIDENT_dATE,,vbUseSystemDayOfWeek) gets me runtime error 5 invalid procedure call or argument I want the after update event of txt_accident_date to stuff the day of the week into txtDayofWeek. Thanks Joe Hecht jmhecht at earthlink.net From stuart at lexacorp.com.pg Wed Mar 29 21:21:17 2006 From: stuart at lexacorp.com.pg (stuart at lexacorp.com.pg) Date: Thu, 30 Mar 2006 13:21:17 +1000 Subject: [AccessD] Day of week as name In-Reply-To: <006101c653a6$4c9b4ac0$6701a8c0@HPLaptop> Message-ID: <442BDB4D.11164.123CFF1@stuart.lexacorp.com.pg> On 29 Mar 2006 at 19:01, Joe Hecht wrote: > > weekdayname(txtACCIDENT_dATE,,vbUseSystemDayOfWeek) > Weekdayname takes a weekday number (1-7), not a date. Use Weekdayname(weekday(txtAccident_Date)) or Weekdayname(Datepart("w",txtAccident_Date)) or Format(txtAccident_Date,"dddd") -- Stuart From ldoering at symphonyinfo.com Wed Mar 29 21:21:58 2006 From: ldoering at symphonyinfo.com (Liz Doering) Date: Wed, 29 Mar 2006 21:21:58 -0600 Subject: [AccessD] Update Query (I think) Question Message-ID: <855499653F55AD4190B242717DF132BC10C5ED@dewey.Symphony.local> Leave out the words 'field' UPDATE 30_tbl_AI_Master2 SET [30_tbl_AI_Master2].ACCIDENT = "00-000" WHERE ((([30_tbl_AI_Master2].ACCIDENT)="00-00")); Liz -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Joe Hecht Sent: Wednesday, March 29, 2006 9:01 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Update Query (I think) Question Susan, Where did I mess up your genius? UPDATE 30_tbl_AI_Master2 SET field [30_tbl_AI_Master2].ACCIDENT = "00-000" WHERE field ((([30_tbl_AI_Master2].ACCIDENT)="00-00")); Joe Hecht jmhecht at earthlink.net -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Wednesday, March 29, 2006 6:31 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Update Query (I think) Question UPDATE table SET field = "00-000" WHERE field = "00-00" Susan H. I have a field that currently is 00-00 format. I want to make it 00-000. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Thu Mar 30 01:33:52 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Thu, 30 Mar 2006 09:33:52 +0200 Subject: [AccessD] Weekday count and next Monday or Thursday Message-ID: Hi all Ever had the need to find next Monday or Thursday whatever is closest? Or similar. Here's how: datNow = Date datNext = DateAdd("d", 4 - Weekday(datNow, vbMonday) Mod 4, datNow) The days to add from Monday to Wednesday is 3-2-1. The days to add from Thursday to Sunday is 4-3-2-1. Weekday(date, vbMonday) returns the weekday with Monday as weekday 1. Note that no weekday is zero. The modulus 4 "resets" the weekday count to "start over" at Thursday at which the returned value is zero. Thus the returned modified weekday for Monday to Thursday is 1-2-3-0-1-2-3. The maximum days to add is 4 days. Now, subtract the modified weekday from this to obtain the days to add for Monday to Sunday: 3-2-1-4-3-2-1. /gustav From jwcolby at ColbyConsulting.com Thu Mar 30 06:01:50 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 30 Mar 2006 07:01:50 -0500 Subject: [AccessD] OT: Where have all my outlook toolbars gone, long time passing, where have all my outlook toolbars gone, long time agooooooohhhhh Message-ID: <000f01c653f1$bb7b1fb0$647aa8c0@ColbyM6805> I built a customer toolbar for my blue frog macro, went to some effort to make it pretty, and now it is gone. The same thing happened on my wife's computer, I built the toolbar, and it just "disappeared". If I right-click on the menu area, my custom toolbar is not in the list of toolbars that exist so I can't just select it to make it re-appear. Any idea where they go? Is there any "getting them back"? John W. Colby www.ColbyConsulting.com From bheid at appdevgrp.com Thu Mar 30 07:09:24 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Thu, 30 Mar 2006 08:09:24 -0500 Subject: [AccessD] OT: Hamachi - again... Message-ID: <916187228923D311A6FE00A0CC3FAA30D3519C@ADGSERVER> Hey all, Sorry for the OT, but this was briefly discussed here earlier and I am having an issue with Hamachi. A while back there was some talk about using Hamachi. Well, I just installed it and it seems pretty neat. I am able to run tightVNC over it to securely remote control my home pc. I have run up against an issue when I try to browse my home PC through Hamachi. It returns an error message like : "The path '\\5.x.x.x' does not exist or is not a directory." with a window title of "Windows Explorer". I can message the home pc, but not browse it. I would like to be able to do file transfers. Anyone have any ideas on this? Thanks, Bobby From carbonnb at gmail.com Thu Mar 30 07:12:03 2006 From: carbonnb at gmail.com (Bryan Carbonnell) Date: Thu, 30 Mar 2006 08:12:03 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D3519C@ADGSERVER> References: <916187228923D311A6FE00A0CC3FAA30D3519C@ADGSERVER> Message-ID: On 3/30/06, Bobby Heid wrote: > A while back there was some talk about using Hamachi. Well, I just > installed it and it seems pretty neat. I am able to run tightVNC over it to > securely remote control my home pc. > > I have run up against an issue when I try to browse my home PC through > Hamachi. It returns an error message like : "The path '\\5.x.x.x' does not > exist or is not a directory." with a window title of "Windows Explorer". > > I can message the home pc, but not browse it. I would like to be able to do > file transfers. > > Anyone have any ideas on this? Sounds like it might be a file sharing permissions issue. Can't be much more help than that. -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" From ecritt1 at alltel.net Thu Mar 30 07:40:35 2006 From: ecritt1 at alltel.net (Penn White) Date: Thu, 30 Mar 2006 08:40:35 -0500 Subject: [AccessD] OT: Where have all my outlook toolbars gone, long time passing, where have all my outlook toolbars gone, long time agooooooohhhhh References: <000f01c653f1$bb7b1fb0$647aa8c0@ColbyM6805> Message-ID: <001401c653ff$864088e0$0302a8c0@pennp4> If it's a Shortcut Menu, eg. a right click popup, when you designate it as a Popup, you will find it under Custom (far right of Shortcut Menu Toolbar) when you check the Shortcut Menus box on Customize Toolbars. Penn ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Thursday, March 30, 2006 7:01 AM Subject: [AccessD] OT: Where have all my outlook toolbars gone,long time passing, where have all my outlook toolbars gone,long time agooooooohhhhh >I built a customer toolbar for my blue frog macro, went to some effort to > make it pretty, and now it is gone. The same thing happened on my wife's > computer, I built the toolbar, and it just "disappeared". If I > right-click > on the menu area, my custom toolbar is not in the list of toolbars that > exist so I can't just select it to make it re-appear. > > Any idea where they go? Is there any "getting them back"? > > John W. Colby > www.ColbyConsulting.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From stuart at lexacorp.com.pg Thu Mar 30 07:53:18 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Thu, 30 Mar 2006 23:53:18 +1000 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D3519C@ADGSERVER> Message-ID: <442C6F6E.12569.3822DE6@stuart.lexacorp.com.pg> On 30 Mar 2006 at 8:09, Bobby Heid wrote: > Hey all, > > Sorry for the OT, but this was briefly discussed here earlier and I am > having an issue with Hamachi. > > A while back there was some talk about using Hamachi. Well, I just > installed it and it seems pretty neat. I am able to run tightVNC over it to > securely remote control my home pc. > > I have run up against an issue when I try to browse my home PC through > Hamachi. It returns an error message like : "The path '\\5.x.x.x' does not > exist or is not a directory." with a window title of "Windows Explorer". > > I can message the home pc, but not browse it. I would like to be able to do > file transfers. > Browse the administrative shares \\5.x.x.x\C$ etc. You will need to log in with an administrator account. -- Stuart From bheid at appdevgrp.com Thu Mar 30 08:23:13 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Thu, 30 Mar 2006 09:23:13 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D794AF@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D3519D@ADGSERVER> I do have some shares that I can successfully access from within the home network. Thanks, Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bryan Carbonnell Sent: Thursday, March 30, 2006 8:12 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT: Hamachi - again... On 3/30/06, Bobby Heid wrote: > A while back there was some talk about using Hamachi. Well, I just > installed it and it seems pretty neat. I am able to run tightVNC over it to > securely remote control my home pc. > > I have run up against an issue when I try to browse my home PC through > Hamachi. It returns an error message like : "The path '\\5.x.x.x' does not > exist or is not a directory." with a window title of "Windows Explorer". > > I can message the home pc, but not browse it. I would like to be able to do > file transfers. > > Anyone have any ideas on this? Sounds like it might be a file sharing permissions issue. Can't be much more help than that. -- Bryan Carbonnell - carbonnb at gmail.com From bheid at appdevgrp.com Thu Mar 30 08:24:26 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Thu, 30 Mar 2006 09:24:26 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D794C0@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D3519E@ADGSERVER> All I did was right-click on the Hamachi window and select Browse. It did not give me a chance to log on or select any shares. Thanks, Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stuart McLachlan Sent: Thursday, March 30, 2006 8:53 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT: Hamachi - again... On 30 Mar 2006 at 8:09, Bobby Heid wrote: > Hey all, > > Sorry for the OT, but this was briefly discussed here earlier and I am > having an issue with Hamachi. > > A while back there was some talk about using Hamachi. Well, I just > installed it and it seems pretty neat. I am able to run tightVNC over it to > securely remote control my home pc. > > I have run up against an issue when I try to browse my home PC through > Hamachi. It returns an error message like : "The path '\\5.x.x.x' does not > exist or is not a directory." with a window title of "Windows Explorer". > > I can message the home pc, but not browse it. I would like to be able to do > file transfers. > Browse the administrative shares \\5.x.x.x\C$ etc. You will need to log in with an administrator account. -- Stuart From carbonnb at gmail.com Thu Mar 30 08:26:21 2006 From: carbonnb at gmail.com (Bryan Carbonnell) Date: Thu, 30 Mar 2006 09:26:21 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D3519D@ADGSERVER> References: <916187228923D311A6FE00A0CC3FAA30D794AF@ADGSERVER> <916187228923D311A6FE00A0CC3FAA30D3519D@ADGSERVER> Message-ID: On 3/30/06, Bobby Heid wrote: > I do have some shares that I can successfully access from within the home > network. Yes, but the machine you are on now may not be setup properly to access the shares. I'm thinking that maybe it's a workgroups name issue. I know I ran into that with my laptop accessing files across my home network. -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" From accessd at shaw.ca Thu Mar 30 09:20:57 2006 From: accessd at shaw.ca (Jim Lawrence) Date: Thu, 30 Mar 2006 07:20:57 -0800 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D3519C@ADGSERVER> Message-ID: <0IWY006FG5AHRTP0@l-daemon> Hi Bobby: It sounds like a file sharing issue at the hosting computer. You should be able to just set the remote computer as a drive letter and browse to the extent the host share settings. Do you really need to run VNC over the link? Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Thursday, March 30, 2006 5:09 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] OT: Hamachi - again... Hey all, Sorry for the OT, but this was briefly discussed here earlier and I am having an issue with Hamachi. A while back there was some talk about using Hamachi. Well, I just installed it and it seems pretty neat. I am able to run tightVNC over it to securely remote control my home pc. I have run up against an issue when I try to browse my home PC through Hamachi. It returns an error message like : "The path '\\5.x.x.x' does not exist or is not a directory." with a window title of "Windows Explorer". I can message the home pc, but not browse it. I would like to be able to do file transfers. Anyone have any ideas on this? Thanks, Bobby -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From accessd at shaw.ca Thu Mar 30 09:25:37 2006 From: accessd at shaw.ca (Jim Lawrence) Date: Thu, 30 Mar 2006 07:25:37 -0800 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D3519C@ADGSERVER> Message-ID: <0IWY006DC5I9RSO0@l-daemon> Hi Booby: Can you 'ping' the remote host? Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Thursday, March 30, 2006 5:09 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] OT: Hamachi - again... Hey all, Sorry for the OT, but this was briefly discussed here earlier and I am having an issue with Hamachi. A while back there was some talk about using Hamachi. Well, I just installed it and it seems pretty neat. I am able to run tightVNC over it to securely remote control my home pc. I have run up against an issue when I try to browse my home PC through Hamachi. It returns an error message like : "The path '\\5.x.x.x' does not exist or is not a directory." with a window title of "Windows Explorer". I can message the home pc, but not browse it. I would like to be able to do file transfers. Anyone have any ideas on this? Thanks, Bobby -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bheid at appdevgrp.com Thu Mar 30 10:18:50 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Thu, 30 Mar 2006 11:18:50 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D794D4@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D3519F@ADGSERVER> I am on a domain here and a workgroup at home. Could that be the issue? Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bryan Carbonnell Sent: Thursday, March 30, 2006 9:26 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT: Hamachi - again... On 3/30/06, Bobby Heid wrote: > I do have some shares that I can successfully access from within the home > network. Yes, but the machine you are on now may not be setup properly to access the shares. I'm thinking that maybe it's a workgroups name issue. I know I ran into that with my laptop accessing files across my home network. -- Bryan Carbonnell - carbonnb at gmail.com From bheid at appdevgrp.com Thu Mar 30 10:19:49 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Thu, 30 Mar 2006 11:19:49 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D794EF@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D351A0@ADGSERVER> I run VNC to control the pc at home. You know, to help the kids/wife/etc. Also to check my email at home and what not. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Lawrence Sent: Thursday, March 30, 2006 10:21 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... Hi Bobby: It sounds like a file sharing issue at the hosting computer. You should be able to just set the remote computer as a drive letter and browse to the extent the host share settings. Do you really need to run VNC over the link? Jim From bheid at appdevgrp.com Thu Mar 30 10:21:07 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Thu, 30 Mar 2006 11:21:07 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D794F0@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D351A1@ADGSERVER> No, but from what I read, Hamachi disallows pings. I am able to tunnel with Hamachi to run VNC and can control my home PC. I can also chat with the Hamachi chat. So I do have connectivity. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Lawrence Sent: Thursday, March 30, 2006 10:26 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... Hi Booby: Can you 'ping' the remote host? Jim From bchacc at san.rr.com Thu Mar 30 10:34:12 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 30 Mar 2006 08:34:12 -0800 Subject: [AccessD] Date Comparison Problem Message-ID: <442C0884.6090100@san.rr.com> Dear List: As I was writing this question a solution occurred to me. But since I already spent all this time framing the question thought I'd post it anyway and add the answer to the end. I have a routine which works when regional setting is set to English (United States) and fails when regional settings are set to English (United Kingdom) . The difference is in a date compare. The statement reads: "If datCurrentDate > Me.txtScheduleEndDate Then" When set to United States datCurrentDate contains 12/02/2005 and Me.txtScheduleEndDate contains 07/30/2006 based on making a break point at that statement and hovering the mouse over the two variables. So the test fails, as it should. When regional setting is set to United Kindom datCurrentDate contains 02/12/2005 and Me.txtScheduleEndDate contains 30/07/2006 . This time the test passes which it should not. Turns out that even though the text box shows 30/07/2006 it was not making the comparison correctly. So I Dimmed another date datScheduleEndDate and changed the code to read: datScheduleEndDate = Me.txtScheduleEndDate If datCurrentDate > datScheduleEndDate Then And now it works. Solution in search of a problem. Thanks (for making me think this through) and regards, Rocky -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From carbonnb at gmail.com Thu Mar 30 10:53:49 2006 From: carbonnb at gmail.com (Bryan Carbonnell) Date: Thu, 30 Mar 2006 11:53:49 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D3519F@ADGSERVER> References: <916187228923D311A6FE00A0CC3FAA30D794D4@ADGSERVER> <916187228923D311A6FE00A0CC3FAA30D3519F@ADGSERVER> Message-ID: On 3/30/06, Bobby Heid wrote: > I am on a domain here and a workgroup at home. Could that be the issue? That would be my guess. -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" From carbonnb at gmail.com Thu Mar 30 10:55:08 2006 From: carbonnb at gmail.com (Bryan Carbonnell) Date: Thu, 30 Mar 2006 11:55:08 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D351A0@ADGSERVER> References: <916187228923D311A6FE00A0CC3FAA30D794EF@ADGSERVER> <916187228923D311A6FE00A0CC3FAA30D351A0@ADGSERVER> Message-ID: On 3/30/06, Bobby Heid wrote: > I run VNC to control the pc at home. You know, to help the kids/wife/etc. > Also to check my email at home and what not. Which VNC? I believe UltraVNC allows file transfers. It may not be as easy as using windows explorer, but it may be an option to look at. -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" From bchacc at san.rr.com Thu Mar 30 11:03:00 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 30 Mar 2006 09:03:00 -0800 Subject: [AccessD] Date Comparison Problem In-Reply-To: <442C0884.6090100@san.rr.com> References: <442C0884.6090100@san.rr.com> Message-ID: <442C0F44.9020708@san.rr.com> Well I spoke (or wrote) a little too soon. There's another statement, preceding the others which works right in US date format but not in UK format. The statement reads: rstManpower.FindFirst "fldManpowerDate = #" & datCurrentDate & "# AND " _ & "fldSkillID = " & !fldSkillID datCurrentDate contains 01/12/2006 and !fldSkillID = 8 If .Nomatch = True then it adds the record and cycles back to the .FindFirst where .Nomatch should be False. But it comes back True and adds another record in an endless loop. Even if I do a rstManpower.Requery, it fails. I looked in the Manpower table and the records exists. It works correctly when Windows is in US date format and fails in UK format. Can anyone see what's wrong with this FindFirst statement? MTIA, Rocky Rocky Smolin - Beach Access Software wrote: > Dear List: > > As I was writing this question a solution occurred to me. But since I > already spent all this time framing the question thought I'd post it > anyway and add the answer to the end. > > I have a routine which works when regional setting is set to English > (United States) and fails when regional settings are set to English > (United Kingdom) . The difference is in a date compare. > > The statement reads: "If datCurrentDate > Me.txtScheduleEndDate Then" > > When set to United States datCurrentDate contains 12/02/2005 and > Me.txtScheduleEndDate contains 07/30/2006 based on making a break point > at that statement and hovering the mouse over the two variables. So the > test fails, as it should. > > When regional setting is set to United Kindom datCurrentDate contains > 02/12/2005 and Me.txtScheduleEndDate contains 30/07/2006 . This time > the test passes which it should not. > > Turns out that even though the text box shows 30/07/2006 it was not > making the comparison correctly. So I Dimmed another date > datScheduleEndDate and changed the code to read: > > datScheduleEndDate = Me.txtScheduleEndDate > If datCurrentDate > datScheduleEndDate Then > > > And now it works. > > Solution in search of a problem. > > Thanks (for making me think this through) and regards, > > Rocky > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From bheid at appdevgrp.com Thu Mar 30 11:06:00 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Thu, 30 Mar 2006 12:06:00 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D7950B@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D351A3@ADGSERVER> Update... I can browse my pc at work (via shares) from my home pc. I'm doing this from work via VNC against my home pc. LOL. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Thursday, March 30, 2006 11:21 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... No, but from what I read, Hamachi disallows pings. I am able to tunnel with Hamachi to run VNC and can control my home PC. I can also chat with the Hamachi chat. So I do have connectivity. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Lawrence Sent: Thursday, March 30, 2006 10:26 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... Hi Booby: Can you 'ping' the remote host? Jim -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Thu Mar 30 11:19:28 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Thu, 30 Mar 2006 19:19:28 +0200 Subject: [AccessD] Date Comparison Problem Message-ID: Hi Rocky I'm glad it didn't work because it shouldn't (except sometimes). You need to force a format of the date to a US format string to play safe: strCurrentDate = Format(datCurrentDate, "m\/d\/yyyy") rstManpower.FindFirst "fldManpowerDate = #" & strCurrentDate & "# AND " _ & "fldSkillID = " & !fldSkillID.Value /gustav >>> bchacc at san.rr.com 30-03-2006 19:03 >>> Well I spoke (or wrote) a little too soon. There's another statement, preceding the others which works right in US date format but not in UK format. The statement reads: rstManpower.FindFirst "fldManpowerDate = #" & datCurrentDate & "# AND " _ & "fldSkillID = " & !fldSkillID datCurrentDate contains 01/12/2006 and !fldSkillID = 8 If .Nomatch = True then it adds the record and cycles back to the .FindFirst where .Nomatch should be False. But it comes back True and adds another record in an endless loop. Even if I do a rstManpower.Requery, it fails. I looked in the Manpower table and the records exists. It works correctly when Windows is in US date format and fails in UK format. Can anyone see what's wrong with this FindFirst statement? MTIA, Rocky From bheid at appdevgrp.com Thu Mar 30 11:22:24 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Thu, 30 Mar 2006 12:22:24 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D79522@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D351A4@ADGSERVER> TightVNC. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bryan Carbonnell Sent: Thursday, March 30, 2006 11:55 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT: Hamachi - again... On 3/30/06, Bobby Heid wrote: > I run VNC to control the pc at home. You know, to help the kids/wife/etc. > Also to check my email at home and what not. Which VNC? I believe UltraVNC allows file transfers. It may not be as easy as using windows explorer, but it may be an option to look at. -- Bryan Carbonnell - carbonnb at gmail.com From carbonnb at gmail.com Thu Mar 30 11:27:15 2006 From: carbonnb at gmail.com (Bryan Carbonnell) Date: Thu, 30 Mar 2006 12:27:15 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D351A4@ADGSERVER> References: <916187228923D311A6FE00A0CC3FAA30D79522@ADGSERVER> <916187228923D311A6FE00A0CC3FAA30D351A4@ADGSERVER> Message-ID: On 3/30/06, Bobby Heid wrote: > TightVNC. Try switching to UltraVNC (ultravnc.sourceforge.net) That will allow you to use file transfer over the VNC connection. -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" From bchacc at san.rr.com Thu Mar 30 11:52:57 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 30 Mar 2006 09:52:57 -0800 Subject: [AccessD] Date Comparison Problem In-Reply-To: References: Message-ID: <442C1AF9.9040604@san.rr.com> Gustav: That did it! Many thanks. Best, Rocky Gustav Brock wrote: > Hi Rocky > > I'm glad it didn't work because it shouldn't (except sometimes). > > You need to force a format of the date to a US format string to play safe: > > strCurrentDate = Format(datCurrentDate, "m\/d\/yyyy") > rstManpower.FindFirst "fldManpowerDate = #" & strCurrentDate & "# AND " _ > & "fldSkillID = " & !fldSkillID.Value > > /gustav > > > >>>> bchacc at san.rr.com 30-03-2006 19:03 >>> >>>> > Well I spoke (or wrote) a little too soon. There's another statement, > preceding the others which works right in US date format but not in UK > format. The statement reads: > > rstManpower.FindFirst "fldManpowerDate = #" & datCurrentDate & "# > AND " _ > & "fldSkillID = " & !fldSkillID > > datCurrentDate contains 01/12/2006 and !fldSkillID = 8 > > If .Nomatch = True then it adds the record and cycles back to the > .FindFirst where .Nomatch should be False. But it comes back True and > adds another record in an endless loop. Even if I do a > rstManpower.Requery, it fails. I looked in the Manpower table and the > records exists. > > It works correctly when Windows is in US date format and fails in UK format. > > Can anyone see what's wrong with this FindFirst statement? > > MTIA, > > Rocky > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From adtp at airtelbroadband.in Thu Mar 30 12:04:52 2006 From: adtp at airtelbroadband.in (A.D.TEJPAL) Date: Thu, 30 Mar 2006 23:34:52 +0530 Subject: [AccessD] Date Comparison Problem References: <442C0884.6090100@san.rr.com> <442C0F44.9020708@san.rr.com> Message-ID: <023f01c65424$83772fe0$9a0665cb@pcadt> Rocky, If direct concatenation of date variable in a string is attempted, it gets embedded as per the short date format governed by regional settings on the particular computer - leading to problems where the settings happen to be ambiguous (using mm instead of mmm) and in deviation from US conventions. For example, if the regional setting for short date is "dd-mm-yy", the value held by date variable will get embedded in the SQL string as "dd-mm-yy". However, at the query execution stage, this part of SQL gets interpreted as "mm-dd-yy" (i.e. day part is seen as month part and month part is seen as day part), leading to unexpected results. There would have been no problem, if the system setting were non-ambiguous (e.g. "dd-mmm-yyyy"). However, the developer may not always be in a position to dictate the settings over user's computers In order to eliminate the scope for such a pitfall (despite varying regional settings on different computers), the date value should always be embedded explicitly in a non-ambiguous manner (leaving no scope for confusion between the values meant for day part and month part respectively). This is done by applying the Format() function before concatenating the date values with main SQL string. Sample given below demonstrates the concept. (TDate is a date type field in table T_Test, while StartDate & FinDate are variables holding date values)- StrSQL = "DELETE * FROM T_Test" StrSQL = StrSQL & " WHERE TDate Between #" & _ Format(StartDate, "dd-mmm-yyyy") & "#" StrSQL = StrSQL & " AND #" & _ Format(FinDate, "dd-mmm-yyyy") & "#;" Best wishes, A.D.Tejpal ----- Original Message ----- From: Rocky Smolin - Beach Access Software To: Access Developers discussion and problem solving Sent: Thursday, March 30, 2006 22:33 Subject: Re: [AccessD] Date Comparison Problem Well I spoke (or wrote) a little too soon. There's another statement, preceding the others which works right in US date format but not in UK format. The statement reads: rstManpower.FindFirst "fldManpowerDate = #" & datCurrentDate & "# AND " _ & "fldSkillID = " & !fldSkillID datCurrentDate contains 01/12/2006 and !fldSkillID = 8 If .Nomatch = True then it adds the record and cycles back to the .FindFirst where .Nomatch should be False. But it comes back True and adds another record in an endless loop. Even if I do a rstManpower.Requery, it fails. I looked in the Manpower table and the records exists. It works correctly when Windows is in US date format and fails in UK format. Can anyone see what's wrong with this FindFirst statement? MTIA, Rocky Rocky Smolin - Beach Access Software wrote: > Dear List: > > As I was writing this question a solution occurred to me. But since I > already spent all this time framing the question thought I'd post it > anyway and add the answer to the end. > > I have a routine which works when regional setting is set to English > (United States) and fails when regional settings are set to English > (United Kingdom) . The difference is in a date compare. > > The statement reads: "If datCurrentDate > Me.txtScheduleEndDate Then" > > When set to United States datCurrentDate contains 12/02/2005 and > Me.txtScheduleEndDate contains 07/30/2006 based on making a break point > at that statement and hovering the mouse over the two variables. So the > test fails, as it should. > > When regional setting is set to United Kindom datCurrentDate contains > 02/12/2005 and Me.txtScheduleEndDate contains 30/07/2006 . This time > the test passes which it should not. > > Turns out that even though the text box shows 30/07/2006 it was not > making the comparison correctly. So I Dimmed another date > datScheduleEndDate and changed the code to read: > > datScheduleEndDate = Me.txtScheduleEndDate > If datCurrentDate > datScheduleEndDate Then > > > And now it works. > > Solution in search of a problem. > > Thanks (for making me think this through) and regards, > > Rocky > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From cfoust at infostatsystems.com Thu Mar 30 12:05:42 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 30 Mar 2006 10:05:42 -0800 Subject: [AccessD] SO CAL MEETING Message-ID: I might be able to make it down, not around the 4th of course. Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Joe Hecht Sent: Wednesday, March 29, 2006 3:56 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] SO CAL MEETING Any interest in a SO Cal Conference? Not sure when other than not the week of the 4th of July. This is a mood check only. Not a promise Joe Hecht jmhecht at earthlink.net -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Thu Mar 30 12:11:43 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 30 Mar 2006 10:11:43 -0800 Subject: [AccessD] Date Comparison Problem Message-ID: The easiest way to handle it is to use Cdate functions around each date before comparing them and then forcing a us format, which is what SQL wants: If IsDate(varDate) Then strDate = Format(CDate(varDate), "mm/dd/yyyy") strTime = Format(CDate(varDate), "h:nn:ss AM/PM") If Format(Now(), "/") <> "/" Then ' we have a non-standard date separator strDate = ReplaceChars(strDate, Format(Now(), "/"), "/") End If If Format(Now(), ":") <> ":" Then ' we have a non-standard time separator strTime = ReplaceChars(strTime, Format(Now(), ":"), ":") End If USDate = "#" & strDate & " " & strTime & "#" End If Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 30, 2006 9:03 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Date Comparison Problem Well I spoke (or wrote) a little too soon. There's another statement, preceding the others which works right in US date format but not in UK format. The statement reads: rstManpower.FindFirst "fldManpowerDate = #" & datCurrentDate & "# AND " _ & "fldSkillID = " & !fldSkillID datCurrentDate contains 01/12/2006 and !fldSkillID = 8 If .Nomatch = True then it adds the record and cycles back to the .FindFirst where .Nomatch should be False. But it comes back True and adds another record in an endless loop. Even if I do a rstManpower.Requery, it fails. I looked in the Manpower table and the records exists. It works correctly when Windows is in US date format and fails in UK format. Can anyone see what's wrong with this FindFirst statement? MTIA, Rocky Rocky Smolin - Beach Access Software wrote: > Dear List: > > As I was writing this question a solution occurred to me. But since I > already spent all this time framing the question thought I'd post it > anyway and add the answer to the end. > > I have a routine which works when regional setting is set to English > (United States) and fails when regional settings are set to English > (United Kingdom) . The difference is in a date compare. > > The statement reads: "If datCurrentDate > Me.txtScheduleEndDate Then" > > When set to United States datCurrentDate contains 12/02/2005 and > Me.txtScheduleEndDate contains 07/30/2006 based on making a break > point at that statement and hovering the mouse over the two variables. > So the test fails, as it should. > > When regional setting is set to United Kindom datCurrentDate contains > 02/12/2005 and Me.txtScheduleEndDate contains 30/07/2006 . This time > the test passes which it should not. > > Turns out that even though the text box shows 30/07/2006 it was not > making the comparison correctly. So I Dimmed another date > datScheduleEndDate and changed the code to read: > > datScheduleEndDate = Me.txtScheduleEndDate > If datCurrentDate > datScheduleEndDate Then > > > And now it works. > > Solution in search of a problem. > > Thanks (for making me think this through) and regards, > > Rocky > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bchacc at san.rr.com Thu Mar 30 12:14:58 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 30 Mar 2006 10:14:58 -0800 Subject: [AccessD] Date Comparison Problem In-Reply-To: <023f01c65424$83772fe0$9a0665cb@pcadt> References: <442C0884.6090100@san.rr.com> <442C0F44.9020708@san.rr.com> <023f01c65424$83772fe0$9a0665cb@pcadt> Message-ID: <442C2022.3060809@san.rr.com> A.D.: Thanks for the reply. That clears it up. And you're right, I won't have control over the user's settings. Do you see any problem with Gustav's approach of Format(datCurrentDate, "m\/d\/yyyy") as a general purpose solution? Regards, Rocky A.D.TEJPAL wrote: > > Rocky, > > If direct concatenation of date variable in a string is attempted, it gets embedded as per the short date format governed by regional settings on the particular computer - leading to problems where the settings happen to be ambiguous (using mm instead of mmm) and in deviation from US conventions. > > For example, if the regional setting for short date is "dd-mm-yy", the value held by date variable will get embedded in the SQL string as "dd-mm-yy". However, at the query execution stage, this part of SQL gets interpreted as "mm-dd-yy" (i.e. day part is seen as month part and month part is seen as day part), leading to unexpected results. > > There would have been no problem, if the system setting were non-ambiguous (e.g. "dd-mmm-yyyy"). However, the developer may not always be in a position to dictate the settings over user's computers > > In order to eliminate the scope for such a pitfall (despite varying regional settings on different computers), the date value should always be embedded explicitly in a non-ambiguous manner (leaving no scope for confusion between the values meant for day part and month part respectively). This is done by applying the Format() function before concatenating the date values with main SQL string. > > Sample given below demonstrates the concept. (TDate is a date type field in table T_Test, while StartDate & FinDate are variables holding date values)- > > StrSQL = "DELETE * FROM T_Test" > StrSQL = StrSQL & " WHERE TDate Between #" & _ > Format(StartDate, "dd-mmm-yyyy") & "#" > StrSQL = StrSQL & " AND #" & _ > Format(FinDate, "dd-mmm-yyyy") & "#;" > > Best wishes, > A.D.Tejpal > > ----- Original Message ----- > From: Rocky Smolin - Beach Access Software > To: Access Developers discussion and problem solving > Sent: Thursday, March 30, 2006 22:33 > Subject: Re: [AccessD] Date Comparison Problem > > > Well I spoke (or wrote) a little too soon. There's another statement, > preceding the others which works right in US date format but not in UK > format. The statement reads: > > rstManpower.FindFirst "fldManpowerDate = #" & datCurrentDate & "# > AND " _ > & "fldSkillID = " & !fldSkillID > > datCurrentDate contains 01/12/2006 and !fldSkillID = 8 > > If .Nomatch = True then it adds the record and cycles back to the > .FindFirst where .Nomatch should be False. But it comes back True and > adds another record in an endless loop. Even if I do a > rstManpower.Requery, it fails. I looked in the Manpower table and the > records exists. > > It works correctly when Windows is in US date format and fails in UK format. > > Can anyone see what's wrong with this FindFirst statement? > > MTIA, > > Rocky > > > > Rocky Smolin - Beach Access Software wrote: > > Dear List: > > > > As I was writing this question a solution occurred to me. But since I > > already spent all this time framing the question thought I'd post it > > anyway and add the answer to the end. > > > > I have a routine which works when regional setting is set to English > > (United States) and fails when regional settings are set to English > > (United Kingdom) . The difference is in a date compare. > > > > The statement reads: "If datCurrentDate > Me.txtScheduleEndDate Then" > > > > When set to United States datCurrentDate contains 12/02/2005 and > > Me.txtScheduleEndDate contains 07/30/2006 based on making a break point > > at that statement and hovering the mouse over the two variables. So the > > test fails, as it should. > > > > When regional setting is set to United Kindom datCurrentDate contains > > 02/12/2005 and Me.txtScheduleEndDate contains 30/07/2006 . This time > > the test passes which it should not. > > > > Turns out that even though the text box shows 30/07/2006 it was not > > making the comparison correctly. So I Dimmed another date > > datScheduleEndDate and changed the code to read: > > > > datScheduleEndDate = Me.txtScheduleEndDate > > If datCurrentDate > datScheduleEndDate Then > > > > > > And now it works. > > > > Solution in search of a problem. > > > > Thanks (for making me think this through) and regards, > > > > Rocky > > > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From KIsmert at TexasSystems.com Thu Mar 30 12:15:23 2006 From: KIsmert at TexasSystems.com (Ken Ismert) Date: Thu, 30 Mar 2006 12:15:23 -0600 Subject: [AccessD] Interfaces Message-ID: Shamil, > and returns the "good old" principles and makes them the > foundation of the "new" theory and practice but on higher > level of evolution spiral.... As long as it is a spiral, and not a circle, I will be happy. Sometimes I get the sense that neither side of the argument (static vs. dynamic) is winnable, and what is in favor is what is fashionable for the moment. But results are what counts, in the end. > Ken, IMO it can't solve the issues, which can be effectively > solved only by Test Driven Development and Unit Testing - > the latter is the "new school" and in general the new school > programming languages can exist without almost any compile time binding. Test Driven Development as an idea has many attractive points. In theory, it should allow for stability by testing to ensure that changes don't damage existing functionality. This, in turn, gives you the confidence to rapidly evolve a large and complex system. That's great, as long as the new TDD methodology is a genuine advance, and not just a cover-up for dynamic code that is inherently hard to verify. Interestingly, the middle-ground design-by-contract ideas of Eiffel have been largely ignored. Python has a strong TDD community, so I hope to become more acquainted with these ideas. > ... and effectively use and even go on higher level as Ruby ... As Rails goes, so shall Ruby. Rails will be the big test of whether a language of such conceptual purity as Ruby can succeed in the real world. By the way, did you find this site: http://www.snakesandrubies.com/ It has pdf and video presentations by the authors of Rails and Django (a similar Python-based web framework). Lengthy downloads, but worth it. -Ken From Gustav at cactus.dk Thu Mar 30 12:18:00 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Thu, 30 Mar 2006 20:18:00 +0200 Subject: [AccessD] Date Comparison Problem Message-ID: Hi A.D. That may not work as the literal month names are localized as well. /gustav >>> adtp at airtelbroadband.in 30-03-2006 20:04 >>> StrSQL = StrSQL & " WHERE TDate Between #" & _ Format(StartDate, "dd-mmm-yyyy") & "#" From Gustav at cactus.dk Thu Mar 30 12:25:46 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Thu, 30 Mar 2006 20:25:46 +0200 Subject: [AccessD] Date Comparison Problem Message-ID: Hi Charlotte That's really a long way to go. One line of code will do. CDate() is normally not needed as you should (must) have variables of date/time value before you begin building your SQL string. Also, use the backslash as escape character: Public Function StrDateSQL(ByVal dat As Date) As String ' Formats full string of date/time in US format for SQL. ' Overrides local (non US) settings for date/time separators. ' Example output: ' ' #08/16/1998 04:03:36 PM# ' ' 1999-10-21. Cactus Data ApS, CPH. StrDateSQL = Format(dat, "\#mm\/dd\/yyyy hh\:nn\:ss AM/PM\#") End Function Credit goes to Lembit who stressed this many years ago. /gustav >>> cfoust at infostatsystems.com 30-03-2006 20:11 >>> The easiest way to handle it is to use Cdate functions around each date before comparing them and then forcing a us format, which is what SQL wants: If IsDate(varDate) Then strDate = Format(CDate(varDate), "mm/dd/yyyy") strTime = Format(CDate(varDate), "h:nn:ss AM/PM") If Format(Now(), "/") <> "/" Then ' we have a non-standard date separator strDate = ReplaceChars(strDate, Format(Now(), "/"), "/") End If If Format(Now(), ":") <> ":" Then ' we have a non-standard time separator strTime = ReplaceChars(strTime, Format(Now(), ":"), ":") End If USDate = "#" & strDate & " " & strTime & "#" End If Charlotte Foust From cfoust at infostatsystems.com Thu Mar 30 12:39:08 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 30 Mar 2006 10:39:08 -0800 Subject: [AccessD] Date Comparison Problem Message-ID: Maybe in *your* applications, Gustav! LOL Our "dates" can be in multiple date and type formats and may be dates, strings or nulls (if we're lucky). The Cdate converts them all to the system format so we're working with apples instead of fruit salad. We also have to handle time strings without a date attached and a variety of other cute oddities. That's why it goes the long way around, we wanted both insurance and code that a novice could plow through if necessary. ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Thursday, March 30, 2006 10:26 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Date Comparison Problem Hi Charlotte That's really a long way to go. One line of code will do. CDate() is normally not needed as you should (must) have variables of date/time value before you begin building your SQL string. Also, use the backslash as escape character: Public Function StrDateSQL(ByVal dat As Date) As String ' Formats full string of date/time in US format for SQL. ' Overrides local (non US) settings for date/time separators. ' Example output: ' ' #08/16/1998 04:03:36 PM# ' ' 1999-10-21. Cactus Data ApS, CPH. StrDateSQL = Format(dat, "\#mm\/dd\/yyyy hh\:nn\:ss AM/PM\#") End Function Credit goes to Lembit who stressed this many years ago. /gustav >>> cfoust at infostatsystems.com 30-03-2006 20:11 >>> The easiest way to handle it is to use Cdate functions around each date before comparing them and then forcing a us format, which is what SQL wants: If IsDate(varDate) Then strDate = Format(CDate(varDate), "mm/dd/yyyy") strTime = Format(CDate(varDate), "h:nn:ss AM/PM") If Format(Now(), "/") <> "/" Then ' we have a non-standard date separator strDate = ReplaceChars(strDate, Format(Now(), "/"), "/") End If If Format(Now(), ":") <> ":" Then ' we have a non-standard time separator strTime = ReplaceChars(strTime, Format(Now(), ":"), ":") End If USDate = "#" & strDate & " " & strTime & "#" End If Charlotte Foust -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Thu Mar 30 13:00:38 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Thu, 30 Mar 2006 21:00:38 +0200 Subject: [AccessD] Date Comparison Problem Message-ID: Hi Charlotte But all the clumsy code with Replace? Tell me you didn't write it. In our applications when I need a date I convert whatever value that may be to variables of date/time value. If that fails there isn't much to do. The only variation to that is when you have to deal with non-existing dates, Nulls, as only a Variant will hold that. Also, don't confuse the novices: CDate() does not convert expressions to a "system format" but to a date/time value. It fails for Null, but if you need to pass Null to a varDate holding Null or a date, use good old CVDate(). /gustav >>> cfoust at infostatsystems.com 30-03-2006 20:39 >>> Maybe in *your* applications, Gustav! LOL Our "dates" can be in multiple date and type formats and may be dates, strings or nulls (if we're lucky). The Cdate converts them all to the system format so we're working with apples instead of fruit salad. We also have to handle time strings without a date attached and a variety of other cute oddities. That's why it goes the long way around, we wanted both insurance and code that a novice could plow through if necessary. ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Thursday, March 30, 2006 10:26 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Date Comparison Problem Hi Charlotte That's really a long way to go. One line of code will do. CDate() is normally not needed as you should (must) have variables of date/time value before you begin building your SQL string. Also, use the backslash as escape character: Public Function StrDateSQL(ByVal dat As Date) As String ' Formats full string of date/time in US format for SQL. ' Overrides local (non US) settings for date/time separators. ' Example output: ' ' #08/16/1998 04:03:36 PM# ' ' 1999-10-21. Cactus Data ApS, CPH. StrDateSQL = Format(dat, "\#mm\/dd\/yyyy hh\:nn\:ss AM/PM\#") End Function Credit goes to Lembit who stressed this many years ago. /gustav >>> cfoust at infostatsystems.com 30-03-2006 20:11 >>> The easiest way to handle it is to use Cdate functions around each date before comparing them and then forcing a us format, which is what SQL wants: If IsDate(varDate) Then strDate = Format(CDate(varDate), "mm/dd/yyyy") strTime = Format(CDate(varDate), "h:nn:ss AM/PM") If Format(Now(), "/") <> "/" Then ' we have a non-standard date separator strDate = ReplaceChars(strDate, Format(Now(), "/"), "/") End If If Format(Now(), ":") <> ":" Then ' we have a non-standard time separator strTime = ReplaceChars(strTime, Format(Now(), ":"), ":") End If USDate = "#" & strDate & " " & strTime & "#" End If Charlotte Foust From adtp at airtelbroadband.in Thu Mar 30 13:24:28 2006 From: adtp at airtelbroadband.in (A.D.TEJPAL) Date: Fri, 31 Mar 2006 00:54:28 +0530 Subject: [AccessD] Date Comparison Problem References: Message-ID: <002b01c6542f$a3b87a10$f70165cb@pcadt> Gustav, I agree that "m/d/yyyyy" format for concatenation into a string should always give consistent results. Similar have been the findings with adoption of "dd-mmm-yyyy" format. One advantage of non-ambiguous format is that even if the programmer happens to slip up from standard sequence, the result still gets interpreted correctly. For example, all the following permutations will work OK: dd-mmm-yyyy, mmm-dd-yyyy, dd-yyyy-mmm, mmm-yyyy-dd, yyyy-mmm-dd, yyyy-dd-mmm. Are you in a position to test out and verify whether there is any specific situation where non-ambiguous format represented by "dd-mmm-yyyy" is not found to give consistent results ? Do you have some language other than English in mind ? Best wishes, A.D.Tejpal --------------- ----- Original Message ----- From: Gustav Brock To: accessd at databaseadvisors.com Sent: Thursday, March 30, 2006 23:48 Subject: Re: [AccessD] Date Comparison Problem Hi A.D. That may not work as the literal month names are localized as well. /gustav >>> adtp at airtelbroadband.in 30-03-2006 20:04 >>> StrSQL = StrSQL & " WHERE TDate Between #" & _ Format(StartDate, "dd-mmm-yyyy") & "#" From bheid at appdevgrp.com Thu Mar 30 13:26:36 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Thu, 30 Mar 2006 14:26:36 -0500 Subject: [AccessD] [SPAM SUSPECT] Re: OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D79539@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D351AA@ADGSERVER> Thanks, I'll check it out. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bryan Carbonnell Sent: Thursday, March 30, 2006 12:27 PM To: Access Developers discussion and problem solving Subject: [SPAM SUSPECT] Re: [AccessD] OT: Hamachi - again... Importance: Low On 3/30/06, Bobby Heid wrote: > TightVNC. Try switching to UltraVNC (ultravnc.sourceforge.net) That will allow you to use file transfer over the VNC connection. -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From adtp at airtelbroadband.in Thu Mar 30 13:41:05 2006 From: adtp at airtelbroadband.in (A.D.TEJPAL) Date: Fri, 31 Mar 2006 01:11:05 +0530 Subject: [AccessD] Date Comparison Problem References: <442C0884.6090100@san.rr.com> <442C0F44.9020708@san.rr.com><023f01c65424$83772fe0$9a0665cb@pcadt> <442C2022.3060809@san.rr.com> Message-ID: <006601c65432$0db08cd0$f70165cb@pcadt> Rocky, You can go ahead with Gustav's solution. No controversy there. Underlyng principle is same. I have requested Gustav to test out regarding non-ambiguous format, i.e. "dd-mmm-yyyy" also, as it has certain merits as explained in my post to him. Best wishes, A.D.Tejpal ---------------- ----- Original Message ----- From: Rocky Smolin - Beach Access Software To: Access Developers discussion and problem solving Sent: Thursday, March 30, 2006 23:44 Subject: Re: [AccessD] Date Comparison Problem A.D.: Thanks for the reply. That clears it up. And you're right, I won't have control over the user's settings. Do you see any problem with Gustav's approach of Format(datCurrentDate, "m\/d\/yyyy") as a general purpose solution? Regards, Rocky A.D.TEJPAL wrote: > > Rocky, > > If direct concatenation of date variable in a string is attempted, it gets embedded as per the short date format governed by regional settings on the particular computer - leading to problems where the settings happen to be ambiguous (using mm instead of mmm) and in deviation from US conventions. > > For example, if the regional setting for short date is "dd-mm-yy", the value held by date variable will get embedded in the SQL string as "dd-mm-yy". However, at the query execution stage, this part of SQL gets interpreted as "mm-dd-yy" (i.e. day part is seen as month part and month part is seen as day part), leading to unexpected results. > > There would have been no problem, if the system setting were non-ambiguous (e.g. "dd-mmm-yyyy"). However, the developer may not always be in a position to dictate the settings over user's computers > > In order to eliminate the scope for such a pitfall (despite varying regional settings on different computers), the date value should always be embedded explicitly in a non-ambiguous manner (leaving no scope for confusion between the values meant for day part and month part respectively). This is done by applying the Format() function before concatenating the date values with main SQL string. > > Sample given below demonstrates the concept. (TDate is a date type field in table T_Test, while StartDate & FinDate are variables holding date values)- > > StrSQL = "DELETE * FROM T_Test" > StrSQL = StrSQL & " WHERE TDate Between #" & _ > Format(StartDate, "dd-mmm-yyyy") & "#" > StrSQL = StrSQL & " AND #" & _ > Format(FinDate, "dd-mmm-yyyy") & "#;" > > Best wishes, > A.D.Tejpal > > ----- Original Message ----- > From: Rocky Smolin - Beach Access Software > To: Access Developers discussion and problem solving > Sent: Thursday, March 30, 2006 22:33 > Subject: Re: [AccessD] Date Comparison Problem > > > Well I spoke (or wrote) a little too soon. There's another statement, > preceding the others which works right in US date format but not in UK > format. The statement reads: > > rstManpower.FindFirst "fldManpowerDate = #" & datCurrentDate & "# > AND " _ > & "fldSkillID = " & !fldSkillID > > datCurrentDate contains 01/12/2006 and !fldSkillID = 8 > > If .Nomatch = True then it adds the record and cycles back to the > .FindFirst where .Nomatch should be False. But it comes back True and > adds another record in an endless loop. Even if I do a > rstManpower.Requery, it fails. I looked in the Manpower table and the > records exists. > > It works correctly when Windows is in US date format and fails in UK format. > > Can anyone see what's wrong with this FindFirst statement? > > MTIA, > > Rocky > << SNIP >> From shamil at users.mns.ru Thu Mar 30 14:29:39 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Fri, 31 Mar 2006 00:29:39 +0400 Subject: [AccessD] Date Comparison Problem References: <442C0884.6090100@san.rr.com> <442C0F44.9020708@san.rr.com><023f01c65424$83772fe0$9a0665cb@pcadt> <442C2022.3060809@san.rr.com> <006601c65432$0db08cd0$f70165cb@pcadt> Message-ID: <003a01c65438$c4935710$6501a8c0@Nant> > Format(datCurrentDate, "m\/d\/yyyy") I'd follow Gustav advice - this is the only(/the best) 100% safe formatting to be used in Rocky's question context. And its variations of course: Format(datCurrentDate, "mm\/d\/yyyy") Format(datCurrentDate, "m\/dd\/yyyy") Format(datCurrentDate, "mm\/dd\/yyyy") Others may work, may fail.... Shamil ----- Original Message ----- From: "A.D.TEJPAL" To: "Access Developers discussion and problem solving" Sent: Thursday, March 30, 2006 11:41 PM Subject: Re: [AccessD] Date Comparison Problem > Rocky, > > You can go ahead with Gustav's solution. No controversy there. > Underlyng principle is same. > > I have requested Gustav to test out regarding non-ambiguous format, > i.e. "dd-mmm-yyyy" also, as it has certain merits as explained in my post > to him. > > Best wishes, > A.D.Tejpal > ---------------- > > ----- Original Message ----- > From: Rocky Smolin - Beach Access Software > To: Access Developers discussion and problem solving > Sent: Thursday, March 30, 2006 23:44 > Subject: Re: [AccessD] Date Comparison Problem > > > A.D.: > > Thanks for the reply. That clears it up. And you're right, I won't > have control over the user's settings. Do you see any problem with > Gustav's approach of > > Format(datCurrentDate, "m\/d\/yyyy") > > as a general purpose solution? > > Regards, > > Rocky > > > > A.D.TEJPAL wrote: > > > > Rocky, > > > > If direct concatenation of date variable in a string is attempted, > it gets embedded as per the short date format governed by regional > settings on the particular computer - leading to problems where the > settings happen to be ambiguous (using mm instead of mmm) and in deviation > from US conventions. > > > > For example, if the regional setting for short date is "dd-mm-yy", > the value held by date variable will get embedded in the SQL string as > "dd-mm-yy". However, at the query execution stage, this part of SQL gets > interpreted as "mm-dd-yy" (i.e. day part is seen as month part and month > part is seen as day part), leading to unexpected results. > > > > There would have been no problem, if the system setting were > non-ambiguous (e.g. "dd-mmm-yyyy"). However, the developer may not always > be in a position to dictate the settings over user's computers > > > > In order to eliminate the scope for such a pitfall (despite varying > regional settings on different computers), the date value should always be > embedded explicitly in a non-ambiguous manner (leaving no scope for > confusion between the values meant for day part and month part > respectively). This is done by applying the Format() function before > concatenating the date values with main SQL string. > > > > Sample given below demonstrates the concept. (TDate is a date type > field in table T_Test, while StartDate & FinDate are variables holding > date values)- > > > > StrSQL = "DELETE * FROM T_Test" > > StrSQL = StrSQL & " WHERE TDate Between #" & _ > > Format(StartDate, "dd-mmm-yyyy") & "#" > > StrSQL = StrSQL & " AND #" & _ > > Format(FinDate, "dd-mmm-yyyy") & "#;" > > > > Best wishes, > > A.D.Tejpal > > > > ----- Original Message ----- > > From: Rocky Smolin - Beach Access Software > > To: Access Developers discussion and problem solving > > Sent: Thursday, March 30, 2006 22:33 > > Subject: Re: [AccessD] Date Comparison Problem > > > > > > Well I spoke (or wrote) a little too soon. There's another > statement, > > preceding the others which works right in US date format but not in > UK > > format. The statement reads: > > > > rstManpower.FindFirst "fldManpowerDate = #" & datCurrentDate & "# > > AND " _ > > & "fldSkillID = " & !fldSkillID > > > > datCurrentDate contains 01/12/2006 and !fldSkillID = 8 > > > > If .Nomatch = True then it adds the record and cycles back to the > > .FindFirst where .Nomatch should be False. But it comes back True > and > > adds another record in an endless loop. Even if I do a > > rstManpower.Requery, it fails. I looked in the Manpower table and > the > > records exists. > > > > It works correctly when Windows is in US date format and fails in UK > format. > > > > Can anyone see what's wrong with this FindFirst statement? > > > > MTIA, > > > > Rocky > > > << SNIP >> > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From lmrazek at lcm-res.com Thu Mar 30 15:27:29 2006 From: lmrazek at lcm-res.com (Lawrence Mrazek) Date: Thu, 30 Mar 2006 15:27:29 -0600 Subject: [AccessD] Excel Automation ... Setting Default Formatting In Excel In-Reply-To: <003a01c65438$c4935710$6501a8c0@Nant> Message-ID: <010201c65440$c0154f60$c50b470a@stormy> Hi: I have a fairly complex Access to Excel automation project, and having conquered my named ranges issue, I'm wondering about the best way to set default formatting for columns (percentages, decimals, conditional formats). The application dynamically creates worksheets in the Excel workbook (sometimes it has 5 worksheets, sometimes more) from data stored in Access. The data will always be in the same columns, (EX: column M is percent, Column N is 2 decimals, etc.); Can I have Excel set defaults for these columns before exporting/creating the data, or is it better to just do this in VBA? Thanks in advance. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314.432.5886 fx. 314.432.3304 From darrend at nimble.com.au Thu Mar 30 15:34:01 2006 From: darrend at nimble.com.au (Darren DICK) Date: Fri, 31 Mar 2006 08:34:01 +1100 Subject: [AccessD] A2003 :Rename tables Message-ID: <20060330213718.JTHZ15112.omta03ps.mx.bigpond.com@DENZILLAP> Hi all I have a zillion tables all prefixed with dbo. Does anyone have a loop for the TableDef to rename or remove the dbo bit? Many thanks Darren From stuart at lexacorp.com.pg Thu Mar 30 15:56:33 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Fri, 31 Mar 2006 07:56:33 +1000 Subject: [AccessD] Date Comparison Problem In-Reply-To: <442C0F44.9020708@san.rr.com> References: <442C0884.6090100@san.rr.com> Message-ID: <442CE0B1.31770.53C968D@stuart.lexacorp.com.pg> On 30 Mar 2006 at 9:03, Rocky Smolin - Beach Access S wrote: > Well I spoke (or wrote) a little too soon. There's another statement, > preceding the others which works right in US date format but not in UK > format. The statement reads: > > rstManpower.FindFirst "fldManpowerDate = #" & datCurrentDate & "# > AND " _ Access SQL likes it's dates in US format. To get around the problem where the PC can have any regional setting, I always use: ...fldManpowerDate = Datevalue('" & datCurrentDate & "')..... when building these sorts of strings. -- Stuart From vchas at comcast.net Thu Mar 30 16:18:59 2006 From: vchas at comcast.net (vchas at comcast.net) Date: Thu, 30 Mar 2006 22:18:59 +0000 Subject: [AccessD] A2003 :Rename tables Message-ID: <033020062218.7207.442C595300005CA900001C2722092299279C0E080C90@comcast.net> Hi Darren., This should do the trick. Function dbo_Remover() As Integer ' Use this module remove the linked table start name dbo_ 'Dim db As Database Dim i As Integer Dim c As Long c = 0 Set db = DBEngine.Workspaces(0).Databases(0) dbo_Remover = False db.TableDefs.Refresh For i = 0 To db.TableDefs.Count - 1 If (Left(db.TableDefs(i).Name, 4) = "DBO_") Then 'MsgBox "found " & db.TableDefs(i).Name db.TableDefs(i).Name = Mid(db.TableDefs(i).Name, 5) c = c + 1 'MsgBox "new name = " & db.TableDefs(i).Name End If Next i Set db = Nothing MsgBox "dbo_ Removed From " & c & " Filenames....." End Function Vinnie Chas www.vinniechas.com > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darren DICK > Sent: Thursday, March 30, 2006 1:34 PM > To: 'Access Developers discussion and problem solving' > Subject: [AccessD] A2003 :Rename tables > > Hi all > I have a zillion tables all prefixed with dbo. > Does anyone have a loop for the TableDef to rename or remove > the dbo bit? > > Many thanks > > Darren > -- > From darrend at nimble.com.au Thu Mar 30 16:21:02 2006 From: darrend at nimble.com.au (Darren DICK) Date: Fri, 31 Mar 2006 09:21:02 +1100 Subject: [AccessD] A2003 :Rename tables In-Reply-To: <033020062218.7207.442C595300005CA900001C2722092299279C0E080C90@comcast.net> Message-ID: <20060330222328.CBGN14751.omta05ps.mx.bigpond.com@DENZILLAP> Thanks Vinnie - I'll try it now Darren ------------------------------ T: 0424 696 433 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of vchas at comcast.net Sent: Friday, 31 March 2006 9:19 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] A2003 :Rename tables Hi Darren., This should do the trick. Function dbo_Remover() As Integer ' Use this module remove the linked table start name dbo_ 'Dim db As Database Dim i As Integer Dim c As Long c = 0 Set db = DBEngine.Workspaces(0).Databases(0) dbo_Remover = False db.TableDefs.Refresh For i = 0 To db.TableDefs.Count - 1 If (Left(db.TableDefs(i).Name, 4) = "DBO_") Then 'MsgBox "found " & db.TableDefs(i).Name db.TableDefs(i).Name = Mid(db.TableDefs(i).Name, 5) c = c + 1 'MsgBox "new name = " & db.TableDefs(i).Name End If Next i Set db = Nothing MsgBox "dbo_ Removed From " & c & " Filenames....." End Function Vinnie Chas www.vinniechas.com > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darren DICK > Sent: Thursday, March 30, 2006 1:34 PM > To: 'Access Developers discussion and problem solving' > Subject: [AccessD] A2003 :Rename tables > > Hi all > I have a zillion tables all prefixed with dbo. > Does anyone have a loop for the TableDef to rename or remove the dbo > bit? > > Many thanks > > Darren > -- > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From darrend at nimble.com.au Thu Mar 30 16:27:29 2006 From: darrend at nimble.com.au (Darren DICK) Date: Fri, 31 Mar 2006 09:27:29 +1100 Subject: [AccessD] A2003 :Rename tables In-Reply-To: <033020062218.7207.442C595300005CA900001C2722092299279C0E080C90@comcast.net> Message-ID: <20060330222958.LMTD15112.omta03ps.mx.bigpond.com@DENZILLAP> Perfect Vinnie Many thanks Your rename procedure was cleaner than mine I was using docmd.rename blah blah Many thanks Darren -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of vchas at comcast.net Sent: Friday, 31 March 2006 9:19 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] A2003 :Rename tables Hi Darren., This should do the trick. Function dbo_Remover() As Integer ' Use this module remove the linked table start name dbo_ 'Dim db As Database Dim i As Integer Dim c As Long c = 0 Set db = DBEngine.Workspaces(0).Databases(0) dbo_Remover = False db.TableDefs.Refresh For i = 0 To db.TableDefs.Count - 1 If (Left(db.TableDefs(i).Name, 4) = "DBO_") Then 'MsgBox "found " & db.TableDefs(i).Name db.TableDefs(i).Name = Mid(db.TableDefs(i).Name, 5) c = c + 1 'MsgBox "new name = " & db.TableDefs(i).Name End If Next i Set db = Nothing MsgBox "dbo_ Removed From " & c & " Filenames....." End Function Vinnie Chas www.vinniechas.com > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darren DICK > Sent: Thursday, March 30, 2006 1:34 PM > To: 'Access Developers discussion and problem solving' > Subject: [AccessD] A2003 :Rename tables > > Hi all > I have a zillion tables all prefixed with dbo. > Does anyone have a loop for the TableDef to rename or remove the dbo > bit? > > Many thanks > > Darren > -- > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From accessd at shaw.ca Thu Mar 30 17:21:36 2006 From: accessd at shaw.ca (Jim Lawrence) Date: Thu, 30 Mar 2006 15:21:36 -0800 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D3519F@ADGSERVER> Message-ID: <0IWY002GZRJJ0HF0@l-daemon> Hi Bobby: When I am calling a workgroup, just the name and password are all that is necessary but when calling a domain, I have to prefix the username with the domain name. Like: MyDomain\Username HTH Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Thursday, March 30, 2006 8:19 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... I am on a domain here and a workgroup at home. Could that be the issue? Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bryan Carbonnell Sent: Thursday, March 30, 2006 9:26 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT: Hamachi - again... On 3/30/06, Bobby Heid wrote: > I do have some shares that I can successfully access from within the home > network. Yes, but the machine you are on now may not be setup properly to access the shares. I'm thinking that maybe it's a workgroups name issue. I know I ran into that with my laptop accessing files across my home network. -- Bryan Carbonnell - carbonnb at gmail.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From accessd at shaw.ca Thu Mar 30 17:28:21 2006 From: accessd at shaw.ca (Jim Lawrence) Date: Thu, 30 Mar 2006 15:28:21 -0800 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D351A1@ADGSERVER> Message-ID: <0IWY006T4RUSFNB0@l-daemon> Hi Bobby: When bringing up the Hamachi window and right-clicking the remote site options you should have, Ping, Browse, Send Message and Copy Address available. HTH Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Thursday, March 30, 2006 8:21 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... No, but from what I read, Hamachi disallows pings. I am able to tunnel with Hamachi to run VNC and can control my home PC. I can also chat with the Hamachi chat. So I do have connectivity. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Lawrence Sent: Thursday, March 30, 2006 10:26 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... Hi Booby: Can you 'ping' the remote host? Jim -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From accessd at shaw.ca Thu Mar 30 17:29:55 2006 From: accessd at shaw.ca (Jim Lawrence) Date: Thu, 30 Mar 2006 15:29:55 -0800 Subject: [AccessD] Date Comparison Problem In-Reply-To: <442C0884.6090100@san.rr.com> Message-ID: <0IWY004MIRXEQTC0@l-daemon> Smart solution, Rocky. Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 30, 2006 8:34 AM To: Access Developers discussion and problem solving Subject: [AccessD] Date Comparison Problem Dear List: As I was writing this question a solution occurred to me. But since I already spent all this time framing the question thought I'd post it anyway and add the answer to the end. I have a routine which works when regional setting is set to English (United States) and fails when regional settings are set to English (United Kingdom) . The difference is in a date compare. The statement reads: "If datCurrentDate > Me.txtScheduleEndDate Then" When set to United States datCurrentDate contains 12/02/2005 and Me.txtScheduleEndDate contains 07/30/2006 based on making a break point at that statement and hovering the mouse over the two variables. So the test fails, as it should. When regional setting is set to United Kindom datCurrentDate contains 02/12/2005 and Me.txtScheduleEndDate contains 30/07/2006 . This time the test passes which it should not. Turns out that even though the text box shows 30/07/2006 it was not making the comparison correctly. So I Dimmed another date datScheduleEndDate and changed the code to read: datScheduleEndDate = Me.txtScheduleEndDate If datCurrentDate > datScheduleEndDate Then And now it works. Solution in search of a problem. Thanks (for making me think this through) and regards, Rocky -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From tom.p at piedpiper.com.au Thu Mar 30 17:33:11 2006 From: tom.p at piedpiper.com.au (Tom Keatley) Date: Fri, 31 Mar 2006 07:33:11 +0800 Subject: [AccessD] Halting Execution of Function when form opens and resuming afterwards References: <20060330222958.LMTD15112.omta03ps.mx.bigpond.com@DENZILLAP> Message-ID: <001101c65452$50da67e0$2900a8c0@TOMNEW> Hi all..... I have a function(1) that is looping through customer records and calling another function(2) during each iteration to re-calculate what that customer owes... If the function(2) finds an imbalance between what was previously calculated and what is being calculated now I have it opening a form showing the two sets of calculations to allow the amounts to be edited. The criteria for opening the form is actually part of the 2nd function This works fine when used for a single customer but as part of the above loop the form pops up when it is needed but the loop continues to execute behind it How can I make the execution of the loop suspend until I close the form? and then continue..... As always any help would be appreciated Regards Tom Keatley From DWUTKA at marlow.com Thu Mar 30 17:39:28 2006 From: DWUTKA at marlow.com (DWUTKA at marlow.com) Date: Thu, 30 Mar 2006 17:39:28 -0600 Subject: [AccessD] Halting Execution of Function when form opens and r esuming afterwards Message-ID: <17724746D360394AA3BFE5B8D40A9C1B6A6A7D@main2.marlow.com> Open that form modally. That will pause the running code that called it. Drew -----Original Message----- From: Tom Keatley [mailto:tom.p at piedpiper.com.au] Sent: Thursday, March 30, 2006 5:33 PM To: Access Developers discussion and problem solving Subject: [AccessD] Halting Execution of Function when form opens and resuming afterwards Hi all..... I have a function(1) that is looping through customer records and calling another function(2) during each iteration to re-calculate what that customer owes... If the function(2) finds an imbalance between what was previously calculated and what is being calculated now I have it opening a form showing the two sets of calculations to allow the amounts to be edited. The criteria for opening the form is actually part of the 2nd function This works fine when used for a single customer but as part of the above loop the form pops up when it is needed but the loop continues to execute behind it How can I make the execution of the loop suspend until I close the form? and then continue..... As always any help would be appreciated Regards Tom Keatley -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From stuart at lexacorp.com.pg Thu Mar 30 17:45:00 2006 From: stuart at lexacorp.com.pg (stuart at lexacorp.com.pg) Date: Fri, 31 Mar 2006 09:45:00 +1000 Subject: [AccessD] Halting Execution of Function when form opens and resuming afterwards In-Reply-To: <001101c65452$50da67e0$2900a8c0@TOMNEW> Message-ID: <442CFA1C.12239.5760BA@stuart.lexacorp.com.pg> On 31 Mar 2006 at 7:33, Tom Keatley wrote: > > How can I make the execution of the loop suspend until I close the > form? and then continue..... > Open the form as "modal" . docmd.OpenForm "frmMyForm",,,,,acDialog From Jim.Hale at FleetPride.com Thu Mar 30 17:47:00 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Thu, 30 Mar 2006 17:47:00 -0600 Subject: [AccessD] Excel Automation ... Setting Default Formatting In Excel Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB2F@corp-es01.fleetpride.com> I use a template with a worksheet formatted the way I need. After opening the template in code I create as many sheets as needed copying the preformatted sheet. This is better then slugging it out in vba since the inevitable tweaks to the format can be handled by simply changing the template. Jim Hale -----Original Message----- From: Lawrence Mrazek [mailto:lmrazek at lcm-res.com] Sent: Thursday, March 30, 2006 3:27 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Excel Automation ... Setting Default Formatting In Excel Hi: I have a fairly complex Access to Excel automation project, and having conquered my named ranges issue, I'm wondering about the best way to set default formatting for columns (percentages, decimals, conditional formats). The application dynamically creates worksheets in the Excel workbook (sometimes it has 5 worksheets, sometimes more) from data stored in Access. The data will always be in the same columns, (EX: column M is percent, Column N is 2 decimals, etc.); Can I have Excel set defaults for these columns before exporting/creating the data, or is it better to just do this in VBA? Thanks in advance. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314.432.5886 fx. 314.432.3304 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From Erwin.Craps at ithelps.be Fri Mar 31 00:32:23 2006 From: Erwin.Craps at ithelps.be (Erwin Craps - IT Helps) Date: Fri, 31 Mar 2006 08:32:23 +0200 Subject: [AccessD] Excel Automation ... Setting Default Formatting InExcel Message-ID: <46B976F2B698FF46A4FE7636509B22DF3CB688@stekelbes.ithelps.local> If I'm not mistaken, when using .copyrecordset to a formatted spreadsheet your formatting will be killed. I'm using VBA formatting on the spot for everything because my spreadsheets are not straigth forward tables-type sheets. But is does slow down the building of the spreadsheet. But if it's only colomn based formatting, it will probably not matter that much in speed. Erwin -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Friday, March 31, 2006 1:47 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Excel Automation ... Setting Default Formatting InExcel I use a template with a worksheet formatted the way I need. After opening the template in code I create as many sheets as needed copying the preformatted sheet. This is better then slugging it out in vba since the inevitable tweaks to the format can be handled by simply changing the template. Jim Hale -----Original Message----- From: Lawrence Mrazek [mailto:lmrazek at lcm-res.com] Sent: Thursday, March 30, 2006 3:27 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Excel Automation ... Setting Default Formatting In Excel Hi: I have a fairly complex Access to Excel automation project, and having conquered my named ranges issue, I'm wondering about the best way to set default formatting for columns (percentages, decimals, conditional formats). The application dynamically creates worksheets in the Excel workbook (sometimes it has 5 worksheets, sometimes more) from data stored in Access. The data will always be in the same columns, (EX: column M is percent, Column N is 2 decimals, etc.); Can I have Excel set defaults for these columns before exporting/creating the data, or is it better to just do this in VBA? Thanks in advance. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314.432.5886 fx. 314.432.3304 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Fri Mar 31 03:07:17 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 31 Mar 2006 11:07:17 +0200 Subject: [AccessD] Date Comparison Problem Message-ID: Hi A.D. Yes, in fact most other languages than English will fail - even worse it may only fail for some months. For example, the Danish abbreviations for months equal the English except for one month, October, which is okt. Thus, using that, an October date will be formatted as 3-okt-2006, which when put in an SQL string as #3-okt-2006# will raise a syntax error. Note that even the slash has been replaced with the localized date separator which here is "-". The use of d/m/yyyy is highly recommended as that is standard SQL which will work for any decent SQL engine. Most modern SQL engines with MaxDB (SAP DB) in front accepts or even prefers the ISO format with 24 hour time of yyyy-mm-dd hh:nn:ss or even yyyymmddhhnnss. /gustav >>> adtp at airtelbroadband.in 30-03-2006 21:24 >>> Gustav, I agree that "m/d/yyyyy" format for concatenation into a string should always give consistent results. Similar have been the findings with adoption of "dd-mmm-yyyy" format. One advantage of non-ambiguous format is that even if the programmer happens to slip up from standard sequence, the result still gets interpreted correctly. For example, all the following permutations will work OK: dd-mmm-yyyy, mmm-dd-yyyy, dd-yyyy-mmm, mmm-yyyy-dd, yyyy-mmm-dd, yyyy-dd-mmm. Are you in a position to test out and verify whether there is any specific situation where non-ambiguous format represented by "dd-mmm-yyyy" is not found to give consistent results ? Do you have some language other than English in mind ? Best wishes, A.D.Tejpal --------------- ----- Original Message ----- From: Gustav Brock To: accessd at databaseadvisors.com Sent: Thursday, March 30, 2006 23:48 Subject: Re: [AccessD] Date Comparison Problem Hi A.D. That may not work as the literal month names are localized as well. /gustav >>> adtp at airtelbroadband.in 30-03-2006 20:04 >>> StrSQL = StrSQL & " WHERE TDate Between #" & _ Format(StartDate, "dd-mmm-yyyy") & "#" From Gustav at cactus.dk Fri Mar 31 03:55:07 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 31 Mar 2006 11:55:07 +0200 Subject: [AccessD] Date Comparison Problem Message-ID: Hi Stuart That will work as well but for dates only - a time part will be lost which, however, may be exactly what you wish. If you need the time part just add TimeValue: ...fldManpowerDate = DateValue('" & datCurrentDate & "') + TimeValue('" & datCurrentDate & "')..... The reason why this works is that the date/time variable is converted to a localized string expression (that was Rocky's problem). But this is exactly what DateValue (and TimeValue) expects. Feeding an English string like "10-oct-2006" to DateValue in a localized environment will cause a syntax error. /gustav >>> stuart at lexacorp.com.pg 30-03-2006 23:56 >>> On 30 Mar 2006 at 9:03, Rocky Smolin - Beach Access S wrote: > Well I spoke (or wrote) a little too soon. There's another statement, > preceding the others which works right in US date format but not in UK > format. The statement reads: > > rstManpower.FindFirst "fldManpowerDate = #" & datCurrentDate & "# > AND " _ Access SQL likes it's dates in US format. To get around the problem where the PC can have any regional setting, I always use: ...fldManpowerDate = Datevalue('" & datCurrentDate & "')..... when building these sorts of strings. -- Stuart From bheid at appdevgrp.com Fri Mar 31 06:22:03 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Fri, 31 Mar 2006 07:22:03 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D795F6@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D351AF@ADGSERVER> Hi Jim, I can access my pc here at work (on a domain) from home (workgroup) just fine. It's going the other way that I can not get to work. Thanks, Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Lawrence Sent: Thursday, March 30, 2006 6:22 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... Hi Bobby: When I am calling a workgroup, just the name and password are all that is necessary but when calling a domain, I have to prefix the username with the domain name. Like: MyDomain\Username HTH Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Thursday, March 30, 2006 8:19 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... I am on a domain here and a workgroup at home. Could that be the issue? Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bryan Carbonnell Sent: Thursday, March 30, 2006 9:26 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT: Hamachi - again... On 3/30/06, Bobby Heid wrote: > I do have some shares that I can successfully access from within the home > network. Yes, but the machine you are on now may not be setup properly to access the shares. I'm thinking that maybe it's a workgroups name issue. I know I ran into that with my laptop accessing files across my home network. -- Bryan Carbonnell - carbonnb at gmail.com From bheid at appdevgrp.com Fri Mar 31 06:23:07 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Fri, 31 Mar 2006 07:23:07 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D795F7@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D351B0@ADGSERVER> Jim, Yes, I saw that. Browse is what I am trying to do to access my home pc. Thanks, Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Lawrence Sent: Thursday, March 30, 2006 6:28 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... Hi Bobby: When bringing up the Hamachi window and right-clicking the remote site options you should have, Ping, Browse, Send Message and Copy Address available. HTH Jim From Johncliviger at aol.com Fri Mar 31 08:41:24 2006 From: Johncliviger at aol.com (Johncliviger at aol.com) Date: Fri, 31 Mar 2006 09:41:24 EST Subject: [AccessD] Trigger a macro Message-ID: <36c.d680a2.315e9994@aol.com> Hi all How do I run a macro in a Backend AXP database from its FrontEnd? It must be simple but my brain can't hack it regards johnc From adtp at airtelbroadband.in Fri Mar 31 08:47:11 2006 From: adtp at airtelbroadband.in (A.D.TEJPAL) Date: Fri, 31 Mar 2006 20:17:11 +0530 Subject: [AccessD] Date Comparison Problem References: Message-ID: <006c01c654d2$172342d0$541865cb@pcadt> Thanks Gustav! I agree - Considering the implications associated with languages other than English, "m/d/yyyy" format mentioned by you would be safest. Alternatively, explicit conversion to DateValue() within the SQL string as suggested by Stuart. A.D.Tejpal --------------- ----- Original Message ----- From: Gustav Brock To: accessd at databaseadvisors.com Sent: Friday, March 31, 2006 14:37 Subject: Re: [AccessD] Date Comparison Problem Hi A.D. Yes, in fact most other languages than English will fail - even worse it may only fail for some months. For example, the Danish abbreviations for months equal the English except for one month, October, which is okt. Thus, using that, an October date will be formatted as 3-okt-2006, which when put in an SQL string as #3-okt-2006# will raise a syntax error. Note that even the slash has been replaced with the localized date separator which here is "-". The use of d/m/yyyy is highly recommended as that is standard SQL which will work for any decent SQL engine. Most modern SQL engines with MaxDB (SAP DB) in front accepts or even prefers the ISO format with 24 hour time of yyyy-mm-dd hh:nn:ss or even yyyymmddhhnnss. /gustav >>> adtp at airtelbroadband.in 30-03-2006 21:24 >>> Gustav, I agree that "m/d/yyyyy" format for concatenation into a string should always give consistent results. Similar have been the findings with adoption of "dd-mmm-yyyy" format. One advantage of non-ambiguous format is that even if the programmer happens to slip up from standard sequence, the result still gets interpreted correctly. For example, all the following permutations will work OK: dd-mmm-yyyy, mmm-dd-yyyy, dd-yyyy-mmm, mmm-yyyy-dd, yyyy-mmm-dd, yyyy-dd-mmm. Are you in a position to test out and verify whether there is any specific situation where non-ambiguous format represented by "dd-mmm-yyyy" is not found to give consistent results ? Do you have some language other than English in mind ? Best wishes, A.D.Tejpal --------------- ----- Original Message ----- From: Gustav Brock To: accessd at databaseadvisors.com Sent: Thursday, March 30, 2006 23:48 Subject: Re: [AccessD] Date Comparison Problem Hi A.D. That may not work as the literal month names are localized as well. /gustav >>> adtp at airtelbroadband.in 30-03-2006 20:04 >>> StrSQL = StrSQL & " WHERE TDate Between #" & _ Format(StartDate, "dd-mmm-yyyy") & "#" From cfoust at infostatsystems.com Fri Mar 31 10:32:04 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 31 Mar 2006 08:32:04 -0800 Subject: [AccessD] Date Comparison Problem Message-ID: Actually, no, I didn't. My boss did. And yes, I meant the system date/time format. The snippet I posted is called from all over and the user might enter anything including a long date. Like a lot of applications, this one has grown organically over time and I have only been allowed to maintain and extend it, not rewrite. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Thursday, March 30, 2006 11:01 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Date Comparison Problem Hi Charlotte But all the clumsy code with Replace? Tell me you didn't write it. In our applications when I need a date I convert whatever value that may be to variables of date/time value. If that fails there isn't much to do. The only variation to that is when you have to deal with non-existing dates, Nulls, as only a Variant will hold that. Also, don't confuse the novices: CDate() does not convert expressions to a "system format" but to a date/time value. It fails for Null, but if you need to pass Null to a varDate holding Null or a date, use good old CVDate(). /gustav >>> cfoust at infostatsystems.com 30-03-2006 20:39 >>> Maybe in *your* applications, Gustav! LOL Our "dates" can be in multiple date and type formats and may be dates, strings or nulls (if we're lucky). The Cdate converts them all to the system format so we're working with apples instead of fruit salad. We also have to handle time strings without a date attached and a variety of other cute oddities. That's why it goes the long way around, we wanted both insurance and code that a novice could plow through if necessary. ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Thursday, March 30, 2006 10:26 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Date Comparison Problem Hi Charlotte That's really a long way to go. One line of code will do. CDate() is normally not needed as you should (must) have variables of date/time value before you begin building your SQL string. Also, use the backslash as escape character: Public Function StrDateSQL(ByVal dat As Date) As String ' Formats full string of date/time in US format for SQL. ' Overrides local (non US) settings for date/time separators. ' Example output: ' ' #08/16/1998 04:03:36 PM# ' ' 1999-10-21. Cactus Data ApS, CPH. StrDateSQL = Format(dat, "\#mm\/dd\/yyyy hh\:nn\:ss AM/PM\#") End Function Credit goes to Lembit who stressed this many years ago. /gustav >>> cfoust at infostatsystems.com 30-03-2006 20:11 >>> The easiest way to handle it is to use Cdate functions around each date before comparing them and then forcing a us format, which is what SQL wants: If IsDate(varDate) Then strDate = Format(CDate(varDate), "mm/dd/yyyy") strTime = Format(CDate(varDate), "h:nn:ss AM/PM") If Format(Now(), "/") <> "/" Then ' we have a non-standard date separator strDate = ReplaceChars(strDate, Format(Now(), "/"), "/") End If If Format(Now(), ":") <> ":" Then ' we have a non-standard time separator strTime = ReplaceChars(strTime, Format(Now(), ":"), ":") End If USDate = "#" & strDate & " " & strTime & "#" End If Charlotte Foust -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Fri Mar 31 10:35:37 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 31 Mar 2006 08:35:37 -0800 Subject: [AccessD] Trigger a macro Message-ID: The first question is why you have a macro in a backend database. If the tables are attached, you can do anything a backend macro could do from the front end. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Johncliviger at aol.com Sent: Friday, March 31, 2006 6:41 AM To: accessD at databaseadvisors.com Subject: [AccessD] Trigger a macro Hi all How do I run a macro in a Backend AXP database from its FrontEnd? It must be simple but my brain can't hack it regards johnc -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Fri Mar 31 10:37:58 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 31 Mar 2006 08:37:58 -0800 Subject: [AccessD] Date Comparison Problem Message-ID: Oh, and we also have to deal with converting data between systems that use different date formats and delimiters. Start playing with languages that use a dot as a date delimiter or a space. ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Thursday, March 30, 2006 11:01 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Date Comparison Problem Hi Charlotte But all the clumsy code with Replace? Tell me you didn't write it. In our applications when I need a date I convert whatever value that may be to variables of date/time value. If that fails there isn't much to do. The only variation to that is when you have to deal with non-existing dates, Nulls, as only a Variant will hold that. Also, don't confuse the novices: CDate() does not convert expressions to a "system format" but to a date/time value. It fails for Null, but if you need to pass Null to a varDate holding Null or a date, use good old CVDate(). /gustav >>> cfoust at infostatsystems.com 30-03-2006 20:39 >>> Maybe in *your* applications, Gustav! LOL Our "dates" can be in multiple date and type formats and may be dates, strings or nulls (if we're lucky). The Cdate converts them all to the system format so we're working with apples instead of fruit salad. We also have to handle time strings without a date attached and a variety of other cute oddities. That's why it goes the long way around, we wanted both insurance and code that a novice could plow through if necessary. ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Thursday, March 30, 2006 10:26 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Date Comparison Problem Hi Charlotte That's really a long way to go. One line of code will do. CDate() is normally not needed as you should (must) have variables of date/time value before you begin building your SQL string. Also, use the backslash as escape character: Public Function StrDateSQL(ByVal dat As Date) As String ' Formats full string of date/time in US format for SQL. ' Overrides local (non US) settings for date/time separators. ' Example output: ' ' #08/16/1998 04:03:36 PM# ' ' 1999-10-21. Cactus Data ApS, CPH. StrDateSQL = Format(dat, "\#mm\/dd\/yyyy hh\:nn\:ss AM/PM\#") End Function Credit goes to Lembit who stressed this many years ago. /gustav >>> cfoust at infostatsystems.com 30-03-2006 20:11 >>> The easiest way to handle it is to use Cdate functions around each date before comparing them and then forcing a us format, which is what SQL wants: If IsDate(varDate) Then strDate = Format(CDate(varDate), "mm/dd/yyyy") strTime = Format(CDate(varDate), "h:nn:ss AM/PM") If Format(Now(), "/") <> "/" Then ' we have a non-standard date separator strDate = ReplaceChars(strDate, Format(Now(), "/"), "/") End If If Format(Now(), ":") <> ":" Then ' we have a non-standard time separator strTime = ReplaceChars(strTime, Format(Now(), ":"), ":") End If USDate = "#" & strDate & " " & strTime & "#" End If Charlotte Foust -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jim.Hale at FleetPride.com Fri Mar 31 11:45:55 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Fri, 31 Mar 2006 11:45:55 -0600 Subject: [AccessD] Las Vegas conference Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB34@corp-es01.fleetpride.com> Anybody going to vague-us for the Access conference 4/9? Jim Hale *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From lmrazek at lcm-res.com Fri Mar 31 13:06:44 2006 From: lmrazek at lcm-res.com (Lawrence Mrazek) Date: Fri, 31 Mar 2006 13:06:44 -0600 Subject: [AccessD] Excel Automation ... Setting Default Formatting InExcel In-Reply-To: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB2F@corp-es01.fleetpride.com> Message-ID: <023301c654f6$409878a0$c50b470a@stormy> Thanks Jim: I'm currently using the following code to create my workbook: Set xlApp = New Excel.Application xlApp.Visible = True Set xlWb = xlApp.Workbooks.Add To use a template, do I simply alter the last line so that it points to a template? Set xlWb = xlApp.Workbooks.Add("c:\template.xlt") Also, how do you make sure that each new worksheet inherits the template's formatting? I'm using the following code to add the worksheet: Set xlWs = xlWb.Worksheets.Add Thanks in advance for all of your advice. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314.432.5886 fx. 314.432.3304 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Thursday, March 30, 2006 5:47 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Excel Automation ... Setting Default Formatting InExcel I use a template with a worksheet formatted the way I need. After opening the template in code I create as many sheets as needed copying the preformatted sheet. This is better then slugging it out in vba since the inevitable tweaks to the format can be handled by simply changing the template. Jim Hale -----Original Message----- From: Lawrence Mrazek [mailto:lmrazek at lcm-res.com] Sent: Thursday, March 30, 2006 3:27 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Excel Automation ... Setting Default Formatting In Excel Hi: I have a fairly complex Access to Excel automation project, and having conquered my named ranges issue, I'm wondering about the best way to set default formatting for columns (percentages, decimals, conditional formats). The application dynamically creates worksheets in the Excel workbook (sometimes it has 5 worksheets, sometimes more) from data stored in Access. The data will always be in the same columns, (EX: column M is percent, Column N is 2 decimals, etc.); Can I have Excel set defaults for these columns before exporting/creating the data, or is it better to just do this in VBA? Thanks in advance. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314.432.5886 fx. 314.432.3304 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jim.Hale at FleetPride.com Fri Mar 31 14:10:10 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Fri, 31 Mar 2006 14:10:10 -0600 Subject: [AccessD] Excel Automation ... Setting Default Formatting InE xcel Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB38@corp-es01.fleetpride.com> I use this code open the template: strPathname="c:\template.xlt" appExcel.Workbooks.Open strPathname, 0 The path I actually use is the path where Excel stores the templates by default, something like C:\Documents and Settings\jhale\Application Data\Microsoft\Templates\TrialBal_Excel_6mo.xlt In the code segment below I copy the worksheet Dept1 as many times as called for from a recordset: 'routine to create and rename Worksheets recset(1).MoveFirst Dim y As Integer, z As Integer, x As Integer z = .Worksheets("Dept1").Index For y = z To intRst4cnt + z - 1 strName = recset(1)("fldDPname") .Worksheets(y).Name = strName .Worksheets(y).Select .Range("A10").FormulaR1C1 = y - z + 1 'set index number of sheet .Range("A1").Select If Not recset(1).RecordCount = y - z + 1 Then .Worksheets(z).Copy After:=Worksheets(y) End If If Not recset(5).EOF Then recset(1).MoveNext Next y I am sending you a sample database off list that shows how to paste data into template. HTH Jim Hale -----Original Message----- From: Lawrence Mrazek [mailto:lmrazek at lcm-res.com] Sent: Friday, March 31, 2006 1:07 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Excel Automation ... Setting Default Formatting InExcel Thanks Jim: I'm currently using the following code to create my workbook: Set xlApp = New Excel.Application xlApp.Visible = True Set xlWb = xlApp.Workbooks.Add To use a template, do I simply alter the last line so that it points to a template? Set xlWb = xlApp.Workbooks.Add("c:\template.xlt") Also, how do you make sure that each new worksheet inherits the template's formatting? I'm using the following code to add the worksheet: Set xlWs = xlWb.Worksheets.Add Thanks in advance for all of your advice. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314.432.5886 fx. 314.432.3304 *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From jim.moss at jlmoss.net Fri Mar 31 16:41:42 2006 From: jim.moss at jlmoss.net (Jim Moss) Date: Fri, 31 Mar 2006 16:41:42 -0600 (CST) Subject: [AccessD] Access automation of Excel Column Summing After CopyFromRecordset In-Reply-To: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB38@corp-es01.fleetpride.com> References: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB38@corp-es01.fleetpride.com> Message-ID: <51089.65.196.182.34.1143844902.squirrel@65.196.182.34> How do I programatically insert a SUM into the row following a CopyFromRecordset? All that I seen to get is the text of SUM. Thanks, Jim From Jim.Hale at FleetPride.com Fri Mar 31 17:06:29 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Fri, 31 Mar 2006 17:06:29 -0600 Subject: [AccessD] Access automation of Excel Column Summing After Cop yFromRecordset Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB39@corp-es01.fleetpride.com> try something like .Range("f63").Formula = "=sum(f1:f62)" Jim Hale -----Original Message----- From: Jim Moss [mailto:jim.moss at jlmoss.net] Sent: Friday, March 31, 2006 4:42 PM To: Access Developers discussion and problem solving Subject: [AccessD] Access automation of Excel Column Summing After CopyFromRecordset How do I programatically insert a SUM into the row following a CopyFromRecordset? All that I seen to get is the text of SUM. Thanks, Jim -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From jim.moss at jlmoss.net Fri Mar 31 17:16:30 2006 From: jim.moss at jlmoss.net (Jim Moss) Date: Fri, 31 Mar 2006 17:16:30 -0600 (CST) Subject: [AccessD] Access automation of Excel Column Summing After Cop yFromRecordset In-Reply-To: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB39@corp-es01.fleetpride.com> References: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB39@corp-es01.fleetpride.com> Message-ID: <52678.65.196.182.34.1143846990.squirrel@65.196.182.34> I guess that I don't know enough about the Range object. I'm using something like: With objSht .range(.Cells(2, 1), .Cells(intMaxRow, _ intMaxCol)).CopyFromRecordset rs1 End With because my recordsets always have different row counts. Normally when I need a total I just loop through the rs. Thanks, Jim > try something like > .Range("f63").Formula = "=sum(f1:f62)" > Jim Hale > > -----Original Message----- > From: Jim Moss [mailto:jim.moss at jlmoss.net] > Sent: Friday, March 31, 2006 4:42 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Access automation of Excel Column Summing After > CopyFromRecordset > > > How do I programatically insert a SUM into the row following a > CopyFromRecordset? All that I seen to get is the text of SUM. > > Thanks, > > Jim > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > *********************************************************************** > The information transmitted is intended solely for the individual or > entity to which it is addressed and may contain confidential and/or > privileged material. Any review, retransmission, dissemination or > other use of or taking action in reliance upon this information by > persons or entities other than the intended recipient is prohibited. > If you have received this email in error please contact the sender and > delete the material from any computer. As a recipient of this email, > you are responsible for screening its contents and the contents of any > attachments for the presence of viruses. No liability is accepted for > any damages caused by any virus transmitted by this email. > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From Jim.Hale at FleetPride.com Fri Mar 31 17:34:48 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Fri, 31 Mar 2006 17:34:48 -0600 Subject: [AccessD] Access automation of Excel Column Summing After Cop yFromRecordset Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB3A@corp-es01.fleetpride.com> If you know how many rows the rs has and what row you start at you can build the the sum string, ie beginning row+record count+1 is where to paste the sum function Jim Hale -----Original Message----- From: Jim Moss [mailto:jim.moss at jlmoss.net] Sent: Friday, March 31, 2006 5:16 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access automation of Excel Column Summing After Cop yFromRecordset I guess that I don't know enough about the Range object. I'm using something like: With objSht .range(.Cells(2, 1), .Cells(intMaxRow, _ intMaxCol)).CopyFromRecordset rs1 End With because my recordsets always have different row counts. Normally when I need a total I just loop through the rs. Thanks, Jim > try something like > .Range("f63").Formula = "=sum(f1:f62)" > Jim Hale > > -----Original Message----- > From: Jim Moss [mailto:jim.moss at jlmoss.net] > Sent: Friday, March 31, 2006 4:42 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Access automation of Excel Column Summing After > CopyFromRecordset > > > How do I programatically insert a SUM into the row following a > CopyFromRecordset? All that I seen to get is the text of SUM. > > Thanks, > > Jim > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > *********************************************************************** > The information transmitted is intended solely for the individual or > entity to which it is addressed and may contain confidential and/or > privileged material. Any review, retransmission, dissemination or > other use of or taking action in reliance upon this information by > persons or entities other than the intended recipient is prohibited. > If you have received this email in error please contact the sender and > delete the material from any computer. As a recipient of this email, > you are responsible for screening its contents and the contents of any > attachments for the presence of viruses. No liability is accepted for > any damages caused by any virus transmitted by this email. > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From jim.moss at jlmoss.net Fri Mar 31 18:10:48 2006 From: jim.moss at jlmoss.net (Jim Moss) Date: Fri, 31 Mar 2006 18:10:48 -0600 (CST) Subject: [AccessD] Access automation of Excel Column Summing After Cop yFromRecordset In-Reply-To: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB3A@corp-es01.fleetpride.com> References: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB3A@corp-es01.fleetpride.com> Message-ID: <52982.65.196.182.34.1143850248.squirrel@65.196.182.34> Jim, I'm getting object doesn't support this property or method runtime 438. It's probably my built string. I will look at over the weekend. Thanks, Jim > If you know how many rows the rs has and what row you start at you can > build > the the sum string, ie beginning row+record count+1 is where to paste the > sum function > Jim Hale > > -----Original Message----- > From: Jim Moss [mailto:jim.moss at jlmoss.net] > Sent: Friday, March 31, 2006 5:16 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access automation of Excel Column Summing After > Cop yFromRecordset > > > I guess that I don't know enough about the Range object. I'm using > something like: > > With objSht > .range(.Cells(2, 1), .Cells(intMaxRow, _ > intMaxCol)).CopyFromRecordset rs1 > End With > > because my recordsets always have different row counts. Normally when I > need a total I just loop through the rs. > > Thanks, > > Jim > >> try something like >> .Range("f63").Formula = "=sum(f1:f62)" >> Jim Hale >> >> -----Original Message----- >> From: Jim Moss [mailto:jim.moss at jlmoss.net] >> Sent: Friday, March 31, 2006 4:42 PM >> To: Access Developers discussion and problem solving >> Subject: [AccessD] Access automation of Excel Column Summing After >> CopyFromRecordset >> >> >> How do I programatically insert a SUM into the row following a >> CopyFromRecordset? All that I seen to get is the text of SUM. >> >> Thanks, >> >> Jim >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> >> *********************************************************************** >> The information transmitted is intended solely for the individual or >> entity to which it is addressed and may contain confidential and/or >> privileged material. Any review, retransmission, dissemination or >> other use of or taking action in reliance upon this information by >> persons or entities other than the intended recipient is prohibited. >> If you have received this email in error please contact the sender and >> delete the material from any computer. As a recipient of this email, >> you are responsible for screening its contents and the contents of any >> attachments for the presence of viruses. No liability is accepted for >> any damages caused by any virus transmitted by this email. >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > *********************************************************************** > The information transmitted is intended solely for the individual or > entity to which it is addressed and may contain confidential and/or > privileged material. Any review, retransmission, dissemination or > other use of or taking action in reliance upon this information by > persons or entities other than the intended recipient is prohibited. > If you have received this email in error please contact the sender and > delete the material from any computer. As a recipient of this email, > you are responsible for screening its contents and the contents of any > attachments for the presence of viruses. No liability is accepted for > any damages caused by any virus transmitted by this email. > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From martyconnelly at shaw.ca Fri Mar 31 18:37:10 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Fri, 31 Mar 2006 16:37:10 -0800 Subject: [AccessD] Trigger a macro References: <36c.d680a2.315e9994@aol.com> Message-ID: <442DCB36.70706@shaw.ca> If you really need to, try this from Michael Kaplan TSI SOON (Shut One, Open New) database add-in http://www.trigeminal.com/lang/1033/utility.asp?ItemID=8#8 Or this works but not sure of all the ramifications. Sub OpenmdbMacro() 'open macro in a second mdb Dim objAccess As Object Set objAccess = CreateObject("Access.Application") 'objAccess.Visible = True 'to see what's happening man objAccess.OpenCurrentDatabase "C:\Temp\test macro 2003.mdb", False objAccess.DoCmd.RunMacro ("MyMacro") Set objAccess = Nothing End Sub Johncliviger at aol.com wrote: >Hi all > >How do I run a macro in a Backend AXP database from its FrontEnd? It must be >simple but my brain can't hack it > >regards > >johnc > > -- Marty Connelly Victoria, B.C. Canada From accessd at shaw.ca Fri Mar 31 19:02:22 2006 From: accessd at shaw.ca (Jim Lawrence) Date: Fri, 31 Mar 2006 17:02:22 -0800 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D351B0@ADGSERVER> Message-ID: <0IX0001YAQVGG1N0@l-daemon> Hi Bobby: These questions may sound overly obvious for that I apologize but: 1. Is 'Hamachi' left running on PC at home... it will show at the bottom right section of your task bar when it is. 2. Have you setup shares on your home PC? No share(s), no access. By adding the appropriate security to these shares it will either ask for login validation or not. Set the level of security and who is allowed access by right-mouse-clicking the directory/share in question, opening the security tab and attaching the required user. HTH Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Friday, March 31, 2006 4:23 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... Jim, Yes, I saw that. Browse is what I am trying to do to access my home pc. Thanks, Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Lawrence Sent: Thursday, March 30, 2006 6:28 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... Hi Bobby: When bringing up the Hamachi window and right-clicking the remote site options you should have, Ping, Browse, Send Message and Copy Address available. HTH Jim -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Erwin.Craps at ithelps.be Wed Mar 1 02:45:07 2006 From: Erwin.Craps at ithelps.be (Erwin Craps - IT Helps) Date: Wed, 1 Mar 2006 09:45:07 +0100 Subject: [AccessD] OT: Microsoft CRM 3 .0 Message-ID: <46B976F2B698FF46A4FE7636509B22DF1B63EE@stekelbes.ithelps.local> If I'm not mistaken I haven't read a single thing about Microsoft CRM 3.0 in this list?! Which I fiind very bizare.. I'm very intrested in MS CRM 3.0 and attented a technical and a sale presentation for MS partners but was not able to test the product yet. As I see it now, CRM looks like a good step-up for at least two tailor made apps I have written in the last years in Access, and probably a lot of others Acess apps that are Customer orientated. CRM 3.0 is based on SQL server and that also keeps everything pretty open. What is the list opinion/experiance about this CRM 3.0 espcialy for migrating Access apps to it? Greetings Erwin Craps Zaakvoerder www.ithelps.be/onsgezin This E-mail is confidential, may be legally privileged, and is for the intended recipient only. Access, disclosure, copying, distribution, or reliance on any of it by anyone else is prohibited and may be a criminal offence. Please delete if obtained in error and E-mail confirmation to the sender. IT Helps - I.T. Help Center *** Box Office Belgium & Luxembourg www.ithelps.be * www.boxoffice.be * www.stadleuven.be IT Helps bvba* ** Mercatorpad 3 ** 3000 Leuven IT Helps * Phone: +32 16 296 404 * Fax: +32 16 296 405 E-mail: Info at ithelps.be Box Office ** Fax: +32 16 296 406 ** Box Office E-mail: Staff at boxoffice.be From Gustav at cactus.dk Wed Mar 1 02:50:29 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 01 Mar 2006 09:50:29 +0100 Subject: [AccessD] Scirus Scientific Search Engine Message-ID: Hi all Are you aware of the scientific search engine Scirus: http://www.scirus.com It can be quite useful when you wish you could "cut the crap" from a Google search. The crap is often caused by this "feature" which few know about: Hi Gustav, Thank you for your note. Sometimes when you search for an exact phrase, you will not find an exact match anywhere on the page in question. When this occurs, if you look at Google's cached copy of the page you should see a message in the upper left-hand area of the page that says, "These terms only appear in links pointing to this page." In evaluating the merit of a page, Google looks not only at information found on the page itself, but also the anchor text of links that point to the page. If links pointing to the page contain the exact phrase you searched on, this can cause a page to be returned as a match for your query. We hope this explanation helps to clarify our phrase search procedure. Regards, The Google Team /gustav From Gustav at cactus.dk Wed Mar 1 03:17:13 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 01 Mar 2006 10:17:13 +0100 Subject: [AccessD] Quartile Message-ID: Hi Marty I doubt very much the GetRows() method will be faster as you will read in the full recordset while I only open the recordset, count records and move to one or two records. The SQL method is quite convoluted even for the simple Median, for Quartiles it will get much worse: http://www.aspfaq.com/show.asp?id=2506 not to say if you will not calculate on the full table but only a part of it. If having large recordset and true speed is a must, I guess you have to move to a server engine and stored procedures or OLAP. /gustav >>> martyconnelly at shaw.ca 01-03-2006 00:18 >>> This code has excel limits, arrays limited to 64K but maybe the initial part using getrows on a recordset and moving the field into another array might help you or maybe faster. Don Celko had an SQL percentile method in "SQL for Smarties" but even he suggested using SAS or SPSS for large datasets or using OLAP. Function TestRecordset() Dim strConnect As String Dim arRs As Variant Dim strsql As String strsql = "SELECT DISTINCTROW Format([ShippedDate],""yyyy""),[Order Subtotals].Subtotal, Orders.OrderID " & _ "FROM Orders INNER JOIN [Order Subtotals] ON Orders.OrderID = [Order Subtotals].OrderID " & _ "WHERE (Orders.ShippedDate Is Not Null);" Debug.Print strsql strConnect = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=""C:\Program Files\Microsoft Office\Office\Samples\Copy of Northwind.mdb"";" Dim objCnn As Object Dim objRs As Object Set objCnn = CreateObject("ADODB.Connection") objCnn.Open strConnect Set objRs = CreateObject("ADODB.Recordset") objRs.Open strsql, objCnn If objRs.EOF = False Then arRs = objRs.GetRows Else arRs = "no results" End If Dim arRsT() As Double Dim myubnd As Long Dim mylbnd As Long myubnd = UBound(arRs, 2) mylbnd = LBound(arRs, 2) ReDim arRsT(mylbnd To myubnd) 'Excel arrays get confused unless this done ' with passed arrays and limits of 64K Dim i As Long 'stuff sql query field "subtotal" into a new array For i = 0 To UBound(arRs, 2) arRsT(i) = arRs(1, i) Next i Debug.Print Pctile(arRsT, 0.75) Debug.Print "1st quartile=" & quartile(arRsT, 1) Debug.Print "2nd quartile=" & quartile(arRsT, 2) Debug.Print "3'd quartile=" & quartile(arRsT, 3) Debug.Print "min " & quartile(arRsT, 0) Debug.Print "max " & quartile(arRsT, 4) Debug.Print "95% percentile " & Pctile(arRsT, 0.95) objRs.Close Set objRs = Nothing objCnn.Close Set objCnn = Nothing TestRecordset = arRs End Function Function Pctile(data, pct) As Double Dim objExcel As Object Set objExcel = CreateObject("Excel.Application") Pctile = objExcel.Application.percentile(data, pct) objExcel.Quit Set objExcel = Nothing End Function Function quartile(data, pct As Long) As Double Dim objExcel As Object Set objExcel = CreateObject("Excel.Application") quartile = objExcel.Application.quartile(data, pct) objExcel.Quit Set objExcel = Nothing End Function From Gustav at cactus.dk Wed Mar 1 03:33:27 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 01 Mar 2006 10:33:27 +0100 Subject: [AccessD] Entering data in related tables in a single form Message-ID: Hi John Or use a multi-paged form - could be styled as a wizard operated by keypresses only. /gustav >>> jwcolby at ColbyConsulting.com 01-03-2006 04:14 >>> In fact this is the approach I am leaning towards. It is not as fast (data entry) as a single form but makes the division of labor much cleaner. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Joe Hecht Sent: Tuesday, February 28, 2006 9:45 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Entering data in related tables in a single form John, I am doing this with forms and sub forms on a tab control? I can send it to you if you need. It is the project I have been nagging the list about. Joe Hecht From pcs at azizaz.com Wed Mar 1 07:25:25 2006 From: pcs at azizaz.com (Borge Hansen) Date: Wed, 1 Mar 2006 23:25:25 +1000 Subject: [AccessD] Help with combo box References: <6.2.1.2.2.20060228155505.01e9c198@mail.tpg.com.au><4403E982.5080005@san.rr.com><6.2.1.2.2.20060228172601.01eefe80@mail.tpg.com.au><44050488.1020808@san.rr.com><6.2.1.2.2.20060301132926.01e79298@mail.tpg.com.au> <440520B4.7020907@san.rr.com> Message-ID: <003f01c63d33$99dcab00$fa10a8c0@Albatross> Haven't been following this thread, so I am just jumping in... I would do something like: Create cboRental and adjust the width so only the down arrow displays Create txtRental; make it enabled and locked and place it to the left of cboRental so it looks like one control. On afterupdate of cboRental push the field that normally would display in the combo into txtRental. Do your double clicking code on txtRental; single clicking on the cboRental... would that do? regards borge ----- Original Message ----- From: "Rocky Smolin - Beach Access Software" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 01, 2006 2:19 PM Subject: Re: [AccessD] Help with combo box > David: > > AFAIK, no, the down arrow is not a separately programmable part of the > control. But AFAIK may not go all that far. > > Rocky > > > David & Joanne Gould wrote: > > Rocky > > > > The Double-click event is set to open another form to change the Rental > > Type for this movie title. What I was wondering was if there was a way to > > access the drop-down arrow on the combo box as a separate thing. This might > > separate the main part of the control where all the other code is > > connected. Can it be done? > > > > TIA > > > > David > > > > At 01:18 PM 1/03/2006, you wrote: > > > >> Sorry about the late response. I was out all day. Can you use the > >> click event? What additional function are you trying to implement? > >> > >> Rocky > >> > >> > >> David & Joanne Gould wrote: > >> > >>> Thanks for your prompt response Rocky. > >>> > >>> At 05:11 PM 28/02/2006, you wrote: > >>> > >>> > >>>> What event is the current code attached to? > >>>> The database form is the Hiring form for a video library. There is > >>>> currently code attached to the "Before update" event, the "After Update" > >>>> event and the "On Double-click" event. The Double-click event allows the > >>>> user to add oir change the hiring code (overnight, weekly, etc). > >>>> > >>>> > >>> > >>>> Can you use the 'Got Focus' event to run your new code? > >>>> > >>>> > >>> The other issue I forgot to mention is it's on a continuous form. I have > >>> tried to make the combo box inactive if there is anything entered in it, > >>> but that just makes it inactive for all the records in the transaction (so > >>> I would only be able to enter one movie per sale). > >>> > >>> > >>> > >>> > >>>> Rocky > >>>> > >>>> > >>>> David & Joanne Gould wrote: > >>>> > >>>> > >>>>> I have a combo box on a form that has quite a lot of code attached to it. > >>>>> > >>>>> Is there a way to run code when the user clicks on the drop-down arrow > >>>>> > >>>>> > >>>> that > >>>> > >>>> > >>>>> won't interfere with other code that runs when the user double-clicks on > >>>>> the combo box? > >>>>> > >>>>> TIA > >>>>> > >>>>> David > >>>>> > >>>>> > >>>>> > >>>>> > >>>>> > >>>> -- > >>>> Rocky Smolin > >>>> Beach Access Software > >>>> 858-259-4334 > >>>> www.e-z-mrp.com > >>>> > >>>> -- > >>>> AccessD mailing list > >>>> AccessD at databaseadvisors.com > >>>> http://databaseadvisors.com/mailman/listinfo/accessd > >>>> Website: http://www.databaseadvisors.com > >>>> > >>>> > >>> > >>> > >> -- > >> Rocky Smolin > >> Beach Access Software > >> 858-259-4334 > >> www.e-z-mrp.com > >> > >> -- > >> AccessD mailing list > >> AccessD at databaseadvisors.com > >> http://databaseadvisors.com/mailman/listinfo/accessd > >> Website: http://www.databaseadvisors.com > >> > > > > > > > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From dwaters at usinternet.com Wed Mar 1 07:28:31 2006 From: dwaters at usinternet.com (Dan Waters) Date: Wed, 1 Mar 2006 07:28:31 -0600 Subject: [AccessD] Assistance In-Reply-To: <3478101.1141189286629.JavaMail.root@sniper39> Message-ID: <000c01c63d34$089f9e30$0200a8c0@danwaters> AND, the name of the autonumber field MUST be the same as the table name. For example, tblMyTable has a PK Autonumber of MyTableID. It MUST be this way! ;-) Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Tuesday, February 28, 2006 10:59 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Assistance ROTFLMAO. Some things are just worth doing, always. Because of my dictatorial methods I am able to just look at my tables and see the relationships, know what tables a field is in etc. Works for me. Most of my subjects don't dare speak up anymore, knowing my "out the door, without a parachute" mentality. ;-) John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Tuesday, February 28, 2006 11:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Assistance Well, thanks to you and your dictatorial methodology I find I am now completely unable to create a new table without defining an autonumber PK as the very first field. With ID as the suffix of the field name. Thanks a lot. And I mean that. Rocky John Colby wrote: > LOL, 99% of my forms are bound. 99% of my forms do some pretty "fancy" > stuff via my framework as well. > > For example, I have a "REC_ID" text box on every form which is bound > to the PK of the table the form collects data for. The REC_ID on the > opening form is bound to the PK so it has information on the field > name for the PK which I can use in building "move to" code. If a combo > on another (child) form is displaying a record, the combo has the PK > VALUE of a specific record in the parent table. If a user dbl clicks > a combo box, my framework can cause a data entry form to open > displaying data from the parent table that the combo is displaying. > Since I know the PK from the combo that was double clicked, and I know the table and field of that PK from the REC_ID control, I can > instruct the form to "find" that PK. I therefore have all the pieces > needed to open the form and move to the record that the combo was > displaying. If the combo back on the calling form was on the new > record, it will NOT be displaying data. That is a signal to the > opening form to move to a new record so that the user can enter data. > I use the same basic logic for the "not-in-list" event of the combo to > allow the user to automatically open the data entry form for a combo, > move to the new record, and enter new data in the table. When the > form closes, the combo requeries and now contains the newly entered data in the list table. > > That kind of stuff. > > My framework provides dozens of "behaviors" that are just there if I > want to use them. In the OnOpen of a form, when I set up the form > class, I can specify that "this combo is dependent on that combo". > When the class for this combo is requeried, it automatically requeries > all "dependent" object classes. I can have subforms, combos, list > boxes etc. all "dependent on" a given object. As long as each of these dependent objects has a "requery" > method, I can just iterate the colDependentObject collection of the > class, requerying all dependent objects. The current event of a > subform can cause the form class to requery all "dependent objects" > dependent on that current record of the subform. Of course all > dependent objects have to have feedback in the query that allows it to > display different data depending on the current row of a form, or the > selected item in a combo etc. But if you set it all up, and "inform" > the framework (objects) that other objects are dependent on them, then > they all get requeried when the master object is requeried. A combo > can have a dependent combo, which can itself have a dependent combo. Change the first combo, it requeries the second combo. > The second combo then requeries the third combo etc. The third combo > could requery 5 subforms. Your imagination is the limit. > > This kind of stuff can make the creation of dependent combos and > subforms a snap. > > Just one of dozens of behaviors built in to the framework. > > Yea, I use bound forms, I use autonumber PKs, I use a framework, and I > make good use of all of the above. > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky > Smolin - Beach Access Software > Sent: Tuesday, February 28, 2006 9:15 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Assistance > > Bound or unbound forms? > > Rocky -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From pcs at azizaz.com Wed Mar 1 07:32:17 2006 From: pcs at azizaz.com (Borge Hansen) Date: Wed, 1 Mar 2006 23:32:17 +1000 Subject: [AccessD] Help with combo box References: <6.2.1.2.2.20060301132926.01e79298@mail.tpg.com.au><000001c63ce1$61c1b230$cfb3d6d1@SUSANONE><6.2.1.2.2.20060301144836.01e78160@mail.tpg.com.au><44052061.40303@san.rr.com> <6.2.1.2.2.20060301153631.01e77178@mail.tpg.com.au> Message-ID: <005401c63d34$8f36ba00$fa10a8c0@Albatross> David, What I need to setup is a way that makes it impossible for the > > user to change their selection once they have made one (unless they delete > > the record first) but still lets them use the double-click event to open > > the form to change the rental type for the title In your code test on me.cboRental.OldValue and prevent user for changing the OldValue to a new .... regards borge ----- Original Message ----- From: "David & Joanne Gould" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 01, 2006 2:38 PM Subject: Re: [AccessD] Help with combo box > Rocky > > I had a look but the combo box doesn't have a oncurrent event. If you meant > for the form - the form is a continuous form and time I set the combo box > to disabled it disables every instance of it. > > David > > At 03:17 PM 1/03/2006, you wrote: > >David: > > > >So could you make the combo box enabled in the Current event (moving to > >a new record) and disable it after the user makes a selection? > > > >But that leads to another problem. People make mistakes. So you have > >to give them a way to back out of an erroneous selection. > > > >Rocky > > > > > >David & Joanne Gould wrote: > > > Susan > > > > > > The only property list I can see is the property dialog box for the whole > > > control. What I need to setup is a way that makes it impossible for the > > > user to change their selection once they have made one (unless they delete > > > the record first) but still lets them use the double-click event to open > > > the form to change the rental type for the title. > > > > > > TIA > > > > > > David > > > > > > At 02:36 PM 1/03/2006, you wrote: > > > > > >> Are you talking about the Dropdown property? Isn't there a Dropdown > > property > > >> that you can set to automatically open the list? Is that what you're > > after? > > >> > > >> Susan H. > > >> > > >> The Double-click event is set to open another form to change the > > Rental Type > > >> for this movie title. What I was wondering was if there was a way to > > access > > >> the drop-down arrow on the combo box as a separate thing. This might > > >> separate the main part of the control where all the other code is > > connected. > > >> Can it be done? > > >> > > >> -- > > >> AccessD mailing list > > >> AccessD at databaseadvisors.com > > >> http://databaseadvisors.com/mailman/listinfo/accessd > > >> Website: http://www.databaseadvisors.com > > >> > > > > > > > > > > > > >-- > >Rocky Smolin > >Beach Access Software > >858-259-4334 > >www.e-z-mrp.com > > > >-- > >AccessD mailing list > >AccessD at databaseadvisors.com > >http://databaseadvisors.com/mailman/listinfo/accessd > >Website: http://www.databaseadvisors.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From pcs at azizaz.com Wed Mar 1 07:42:55 2006 From: pcs at azizaz.com (Borge Hansen) Date: Wed, 1 Mar 2006 23:42:55 +1000 Subject: [AccessD] Scirus Scientific Search Engine References: Message-ID: <007101c63d36$0b58b8d0$fa10a8c0@Albatross> Gustav, I did ONE search phrase ..... and what a difference!!! I think most of my web search from now on will be done on scirus! Thanks a LOT of bringing the site to the attention of all of us. /borge ----- Original Message ----- From: "Gustav Brock" To: Sent: Wednesday, March 01, 2006 6:50 PM Subject: [AccessD] Scirus Scientific Search Engine > Hi all > > Are you aware of the scientific search engine Scirus: > > http://www.scirus.com > From harkinsss at bellsouth.net Wed Mar 1 07:49:46 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Wed, 1 Mar 2006 08:49:46 -0500 Subject: [AccessD] Help with combo box In-Reply-To: <6.2.1.2.2.20060301144836.01e78160@mail.tpg.com.au> Message-ID: <000401c63d37$01e52d50$d8b3d6d1@SUSANONE> It may be VBA only and all it does is drop the list automatically. Susan H. Susan The only property list I can see is the property dialog box for the whole control. What I need to setup is a way that makes it impossible for the user to change their selection once they have made one (unless they delete the record first) but still lets them use the double-click event to open the form to change the rental type for the title. From JHewson at karta.com Wed Mar 1 07:58:06 2006 From: JHewson at karta.com (Jim Hewson) Date: Wed, 1 Mar 2006 07:58:06 -0600 Subject: [AccessD] Assistance Message-ID: <9C382E065F54AE48BC3AA7925DCBB01C03DE6751@karta-exc-int.Karta.com> Here. Here. I concur! Jim jhewson at karta.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Tuesday, February 28, 2006 10:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Assistance Well, thanks to you and your dictatorial methodology I find I am now completely unable to create a new table without defining an autonumber PK as the very first field. With ID as the suffix of the field name. Thanks a lot. And I mean that. Rocky John Colby wrote: > LOL, 99% of my forms are bound. 99% of my forms do some pretty "fancy" > stuff via my framework as well. > > For example, I have a "REC_ID" text box on every form which is bound to the > PK of the table the form collects data for. The REC_ID on the opening form > is bound to the PK so it has information on the field name for the PK which > I can use in building "move to" code. If a combo on another (child) form is > displaying a record, the combo has the PK VALUE of a specific record in the > parent table. If a user dbl clicks a combo box, my framework can cause a > data entry form to open displaying data from the parent table that the combo > is displaying. Since I know the PK from the combo that was double clicked, > and I know the table and field of that PK from the REC_ID control, I can > instruct the form to "find" that PK. I therefore have all the pieces > needed to open the form and move to the record that the combo was > displaying. If the combo back on the calling form was on the new record, it > will NOT be displaying data. That is a signal to the opening form to move > to a new record so that the user can enter data. I use the same basic logic > for the "not-in-list" event of the combo to allow the user to automatically > open the data entry form for a combo, move to the new record, and enter new > data in the table. When the form closes, the combo requeries and now > contains the newly entered data in the list table. > > That kind of stuff. > > My framework provides dozens of "behaviors" that are just there if I want to > use them. In the OnOpen of a form, when I set up the form class, I can > specify that "this combo is dependent on that combo". When the class for > this combo is requeried, it automatically requeries all "dependent" object > classes. I can have subforms, combos, list boxes etc. all "dependent on" a > given object. As long as each of these dependent objects has a "requery" > method, I can just iterate the colDependentObject collection of the class, > requerying all dependent objects. The current event of a subform can cause > the form class to requery all "dependent objects" dependent on that current > record of the subform. Of course all dependent objects have to have > feedback in the query that allows it to display different data depending on > the current row of a form, or the selected item in a combo etc. But if you > set it all up, and "inform" the framework (objects) that other objects are > dependent on them, then they all get requeried when the master object is > requeried. A combo can have a dependent combo, which can itself have a > dependent combo. Change the first combo, it requeries the second combo. > The second combo then requeries the third combo etc. The third combo could > requery 5 subforms. Your imagination is the limit. > > This kind of stuff can make the creation of dependent combos and subforms a > snap. > > Just one of dozens of behaviors built in to the framework. > > Yea, I use bound forms, I use autonumber PKs, I use a framework, and I make > good use of all of the above. > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - > Beach Access Software > Sent: Tuesday, February 28, 2006 9:15 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Assistance > > Bound or unbound forms? > > Rocky > > > John Colby wrote: > >> Folks, >> >> I am looking for a "junior level" person to assist me in getting some >> of my back log caught up. I need one person, able to: >> >> Read and program VBA, guru not required. >> Understands and can build Access tables, queries, forms and reports. >> Must understand data normalization and be able to correctly sort out >> what data goes where given a set of objects / attributes. >> Must be able to read, understand and build relationship diagrams in >> the relationship window in Access (the center of my universe). >> Has a few hours a day available (10-20 hours a week). >> Must be self starter, blah, blah, blah. >> >> If anyone out there thinks they might fit the bill, please respond >> OFFLINE - email a resume, and introduction email with required hourly >> wage to jwcolby at colbyconsulting.com. The more you know and are >> capable of the more work I have. >> >> Thanks, >> >> John W. Colby >> www.ColbyConsulting.com >> >> >> >> > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jdemarco at hudsonhealthplan.org Wed Mar 1 08:20:42 2006 From: Jdemarco at hudsonhealthplan.org (Jim DeMarco) Date: Wed, 1 Mar 2006 09:20:42 -0500 Subject: [AccessD] Converting to 2003 Message-ID: <08F823FD83787D4BA0B99CA580AD3C7402DE6CB6@TTNEXCHCL2.hshhp.com> While I can certainly understand the how mere mention of Gustav's name might instill respect in an application I'm not quite sure I have an answer to my question. Was the bloating issue fixed or will I have to insert Gustav into my conversion process? ;-) Thanks, Jim D. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of William Hindman Sent: Tuesday, February 28, 2006 9:14 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Converting to 2003 ...your blessing or MS actually fixing an Access bug ...both are miracles in my book :) William ----- Original Message ----- From: "Gustav Brock" To: Sent: Tuesday, February 28, 2006 4:33 AM Subject: Re: [AccessD] Converting to 2003 > Hi William > > "don't particularly care" ... well, that hurts - after all my efforts! > > Actually, we have two clients - both female, wonder why - who claim that > more than once they have seen issues vanish just by calling me. I didn't > do anything - no advice or problem solving - other than devoting my > attention. And my middle name isn't Jesus. Maybe your mdbs have been on my > mind too! > > /gustav > >>>> wdhindman at bellsouth.net 28-02-2006 00:39 >>> > ...either its been fixed or Gustav blessed all my mdbs ...I don't > particularly care which :) > > William > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************************** "This electronic message is intended to be for the use only of the named recipient, and may contain information from Hudson Health Plan (HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". *********************************************************************************** From bchacc at san.rr.com Wed Mar 1 08:54:56 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Wed, 01 Mar 2006 06:54:56 -0800 Subject: [AccessD] Assistance In-Reply-To: <000c01c63d34$089f9e30$0200a8c0@danwaters> References: <000c01c63d34$089f9e30$0200a8c0@danwaters> Message-ID: <4405B5C0.4080502@san.rr.com> You forgot the fld prefix! I now also put the name of the table into each field name. so each field in tblCustomer, for example, begins with fldCustomer. More self documenting. You can always see what table a field comes from. Rocky Dan Waters wrote: > AND, the name of the autonumber field MUST be the same as the table name. > > For example, tblMyTable has a PK Autonumber of MyTableID. > > It MUST be this way! > > ;-) > > Dan > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby > Sent: Tuesday, February 28, 2006 10:59 PM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Assistance > > ROTFLMAO. > > Some things are just worth doing, always. > > Because of my dictatorial methods I am able to just look at my tables and > see the relationships, know what tables a field is in etc. Works for me. > Most of my subjects don't dare speak up anymore, knowing my "out the door, > without a parachute" mentality. > > ;-) > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - > Beach Access Software > Sent: Tuesday, February 28, 2006 11:15 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Assistance > > Well, thanks to you and your dictatorial methodology I find I am now > completely unable to create a new table without defining an autonumber PK as > the very first field. With ID as the suffix of the field name. > > Thanks a lot. > > And I mean that. > > Rocky > > > John Colby wrote: > >> LOL, 99% of my forms are bound. 99% of my forms do some pretty "fancy" >> stuff via my framework as well. >> >> For example, I have a "REC_ID" text box on every form which is bound >> to the PK of the table the form collects data for. The REC_ID on the >> opening form is bound to the PK so it has information on the field >> name for the PK which I can use in building "move to" code. If a combo >> on another (child) form is displaying a record, the combo has the PK >> VALUE of a specific record in the parent table. If a user dbl clicks >> a combo box, my framework can cause a data entry form to open >> displaying data from the parent table that the combo is displaying. >> Since I know the PK from the combo that was double clicked, and I know the >> > table and field of that PK from the REC_ID control, I can > >> instruct the form to "find" that PK. I therefore have all the pieces >> needed to open the form and move to the record that the combo was >> displaying. If the combo back on the calling form was on the new >> record, it will NOT be displaying data. That is a signal to the >> opening form to move to a new record so that the user can enter data. >> I use the same basic logic for the "not-in-list" event of the combo to >> allow the user to automatically open the data entry form for a combo, >> move to the new record, and enter new data in the table. When the >> form closes, the combo requeries and now contains the newly entered data >> > in the list table. > >> That kind of stuff. >> >> My framework provides dozens of "behaviors" that are just there if I >> want to use them. In the OnOpen of a form, when I set up the form >> class, I can specify that "this combo is dependent on that combo". >> When the class for this combo is requeried, it automatically requeries >> all "dependent" object classes. I can have subforms, combos, list >> boxes etc. all "dependent on" a given object. As long as each of these >> > dependent objects has a "requery" > >> method, I can just iterate the colDependentObject collection of the >> class, requerying all dependent objects. The current event of a >> subform can cause the form class to requery all "dependent objects" >> dependent on that current record of the subform. Of course all >> dependent objects have to have feedback in the query that allows it to >> display different data depending on the current row of a form, or the >> selected item in a combo etc. But if you set it all up, and "inform" >> the framework (objects) that other objects are dependent on them, then >> they all get requeried when the master object is requeried. A combo >> can have a dependent combo, which can itself have a dependent combo. >> > Change the first combo, it requeries the second combo. > >> The second combo then requeries the third combo etc. The third combo >> could requery 5 subforms. Your imagination is the limit. >> >> This kind of stuff can make the creation of dependent combos and >> subforms a snap. >> >> Just one of dozens of behaviors built in to the framework. >> >> Yea, I use bound forms, I use autonumber PKs, I use a framework, and I >> make good use of all of the above. >> >> John W. Colby >> www.ColbyConsulting.com >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky >> Smolin - Beach Access Software >> Sent: Tuesday, February 28, 2006 9:15 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Assistance >> >> Bound or unbound forms? >> >> Rocky >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From jmhecht at earthlink.net Wed Mar 1 09:03:24 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Wed, 1 Mar 2006 07:03:24 -0800 Subject: [AccessD] OT: Microsoft CRM 3 .0 In-Reply-To: <46B976F2B698FF46A4FE7636509B22DF1B63EE@stekelbes.ithelps.local> Message-ID: <000701c63d41$49e598b0$6701a8c0@HPLaptop> Erwin, I was at a M$ event last week. I will try to send you links later today. Remind me if I do not. The thing that turned me off as an itty bitty house is it uses servers and there opens that whole can of worms. Joe Hecht jmhecht at earthlink.net -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Erwin Craps - IT Helps Sent: Wednesday, March 01, 2006 12:45 AM To: Access Developers discussion and problem solving Subject: [AccessD] OT: Microsoft CRM 3 .0 If I'm not mistaken I haven't read a single thing about Microsoft CRM 3.0 in this list?! Which I fiind very bizare.. I'm very intrested in MS CRM 3.0 and attented a technical and a sale presentation for MS partners but was not able to test the product yet. As I see it now, CRM looks like a good step-up for at least two tailor made apps I have written in the last years in Access, and probably a lot of others Acess apps that are Customer orientated. CRM 3.0 is based on SQL server and that also keeps everything pretty open. What is the list opinion/experiance about this CRM 3.0 espcialy for migrating Access apps to it? Greetings Erwin Craps Zaakvoerder www.ithelps.be/onsgezin This E-mail is confidential, may be legally privileged, and is for the intended recipient only. Access, disclosure, copying, distribution, or reliance on any of it by anyone else is prohibited and may be a criminal offence. Please delete if obtained in error and E-mail confirmation to the sender. IT Helps - I.T. Help Center *** Box Office Belgium & Luxembourg www.ithelps.be * www.boxoffice.be * www.stadleuven.be IT Helps bvba* ** Mercatorpad 3 ** 3000 Leuven IT Helps * Phone: +32 16 296 404 * Fax: +32 16 296 405 E-mail: Info at ithelps.be Box Office ** Fax: +32 16 296 406 ** Box Office E-mail: Staff at boxoffice.be -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jmhecht at earthlink.net Wed Mar 1 09:06:48 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Wed, 1 Mar 2006 07:06:48 -0800 Subject: [AccessD] Entering data in related tables in a single form In-Reply-To: <005c01c63cde$33d3c280$647aa8c0@ColbyM6805> Message-ID: <000801c63d41$c3fe4f70$6701a8c0@HPLaptop> There is a form property called cycle so you can lock each form (subform) to show only one record at a time See http://msdn.microsoft.com/library/default.asp?url=/library/e n-us/vbaac11/html/acproCycle_HV05187126.asp Watch the wrap Joe Hecht jmhecht at earthlink.net Joe Hecht jmhecht at earthlink.net -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Tuesday, February 28, 2006 7:14 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Entering data in related tables in a single form In fact this is the approach I am leaning towards. It is not as fast (data entry) as a single form but makes the division of labor much cleaner. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Joe Hecht Sent: Tuesday, February 28, 2006 9:45 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Entering data in related tables in a single form John, I am doing this with forms and sub forms on a tab control? I can send it to you if you need. It is the project I have been nagging the list about. Joe Hecht jmhecht at earthlink.net -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Tuesday, February 28, 2006 12:13 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Entering data in related tables in a single form These are papers in boxes. Beyond that I do not know. Since the total fields they intend to enter is about 20 or so, the client intends to just "key it in". John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Tuesday, February 28, 2006 1:56 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Entering data in related tables in a single form Is the data on paper (and must be input by hand) or electronic forms (where maybe it could be parsed quickly with Monarch?) Jim Hale -----Original Message----- From: John Colby [mailto:jwcolby at colbyconsulting.com] Sent: Tuesday, February 28, 2006 12:41 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Entering data in related tables in a single form >I suppose your base is in "bounders camp" while looking for this >"quick and dirty form" solution :) LOL, yea, given I am an unholy bounder, going unbound would not qualify as quick and dirty. I have discovered that as long as you include the PK/FK pairs, and populate the data in the parent/child order it seems to work. This is a moderately complex database, normalized, with lookup tables etc. and I need to get about 3 or 4 of the major tables populated with new claim / claimant / policy data from a ton of new claims on an "emergency" basis (2000 claims input in then next couple of days). John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Tuesday, February 28, 2006 1:36 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Entering data in related tables in a single form <<< > seem to remember trying this ages ago with less than stellar results. >>> John, What issues do you mean? (It should work well in MS Access with properly organized forms (with subforms) and maybe with a few lines of code)... I suppose your base is in "bounders camp" while looking for this "quick and dirty form" solution :) Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Tuesday, February 28, 2006 9:02 PM Subject: [AccessD] Entering data in related tables in a single form >I need a quick and dirty form to enter data into a whole set of related >data tables. Policy holder, policy, claim, claimant etc. > > Is this possible? Obviously I have relational integrity turned on so > the PKs have to exist in the "parent" tables before they can be used > to enter data into the child tables. I seem to remember trying this > ages ago with less than stellar results. Has anyone here done > something like this, and if so how? > > John W. Colby > www.ColbyConsulting.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com ************************************************************ *********** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Wed Mar 1 09:12:39 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 01 Mar 2006 16:12:39 +0100 Subject: [AccessD] Assistance Message-ID: Hi Dan Actually you are denormalizing the naming of the database schema this way ... ID is fine. Outside the table it is tblMyTable.ID. Access does this for you automatically. Why having trouble with tblMyTable.MyTableID? Too much typing. Sorry, couldn't resist. Boring day here - and remember: Clients do lie. "I'm are experiencing locked records but everyone else is locked out." My colleague drives to the client just to spot a laptop with wireless network. You have one guess: Was this machine logged in to the application?" /gustav >>> dwaters at usinternet.com 01-03-2006 14:28 >>> AND, the name of the autonumber field MUST be the same as the table name. For example, tblMyTable has a PK Autonumber of MyTableID. It MUST be this way! ;-) Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Tuesday, February 28, 2006 10:59 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Assistance ROTFLMAO. Some things are just worth doing, always. Because of my dictatorial methods I am able to just look at my tables and see the relationships, know what tables a field is in etc. Works for me. Most of my subjects don't dare speak up anymore, knowing my "out the door, without a parachute" mentality. ;-) John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Tuesday, February 28, 2006 11:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Assistance Well, thanks to you and your dictatorial methodology I find I am now completely unable to create a new table without defining an autonumber PK as the very first field. With ID as the suffix of the field name. Thanks a lot. And I mean that. Rocky From Gustav at cactus.dk Wed Mar 1 09:15:07 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 01 Mar 2006 16:15:07 +0100 Subject: [AccessD] Assistance Message-ID: Hi Rocky Until you rename the table. Great time for fun! /gustav >>> bchacc at san.rr.com 01-03-2006 15:54 >>> You forgot the fld prefix! I now also put the name of the table into each field name. so each field in tblCustomer, for example, begins with fldCustomer. More self documenting. You can always see what table a field comes from. Rocky From Gustav at cactus.dk Wed Mar 1 09:23:20 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 01 Mar 2006 16:23:20 +0100 Subject: [AccessD] OT: Microsoft CRM 3 .0 Message-ID: Hi Erwin We looked briefly at the earlier versions. Problem is that any solution with Microsoft CRM ties the client to Microsoft Outlook, Microsoft servers and/or Exchange/Sharepoint and/or some of their Business apps and no Mac or Linux workstations. It's just too much Microsoft. A five or ten user package is included with the Action Pack so go'n'get that if you wish to play around with it. For some clients it may prove useful at a modest cost. /gustav >>> Erwin.Craps at ithelps.be 01-03-2006 09:45 >>> If I'm not mistaken I haven't read a single thing about Microsoft CRM 3.0 in this list?! Which I fiind very bizare.. I'm very intrested in MS CRM 3.0 and attented a technical and a sale presentation for MS partners but was not able to test the product yet. As I see it now, CRM looks like a good step-up for at least two tailor made apps I have written in the last years in Access, and probably a lot of others Acess apps that are Customer orientated. CRM 3.0 is based on SQL server and that also keeps everything pretty open. What is the list opinion/experiance about this CRM 3.0 espcialy for migrating Access apps to it? Greetings Erwin Craps Zaakvoerder www.ithelps.be/onsgezin From bchacc at san.rr.com Wed Mar 1 09:23:43 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Wed, 01 Mar 2006 07:23:43 -0800 Subject: [AccessD] Assistance In-Reply-To: References: Message-ID: <4405BC7F.2060903@san.rr.com> Isn't that what Rick Fisher's Find and Replace is for? Actually has this kind of happen this week. Had to merge one table into another. So I had to change my fldBV prefix to fldBundle everywhere - tables, queries, forms, code, etc. Great program. It found them all. Rocky Gustav Brock wrote: > Hi Rocky > > Until you rename the table. Great time for fun! > > /gustav > > >>>> bchacc at san.rr.com 01-03-2006 15:54 >>> >>>> > You forgot the fld prefix! I now also put the name of the table into > each field name. so each field in tblCustomer, for example, begins with > fldCustomer. More self documenting. You can always see what table a > field comes from. > > Rocky > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From markamatte at hotmail.com Wed Mar 1 09:35:03 2006 From: markamatte at hotmail.com (Mark A Matte) Date: Wed, 01 Mar 2006 15:35:03 +0000 Subject: [AccessD] On Open Event In-Reply-To: <4405BC7F.2060903@san.rr.com> Message-ID: Hello All, I have a form that does 'stuff' 'ON OPEN'...is there a way to cause this event to fire again from another form...repaint,refresh,requery...anything? Thanks, Mark A. Matte From JHewson at karta.com Wed Mar 1 09:39:17 2006 From: JHewson at karta.com (Jim Hewson) Date: Wed, 1 Mar 2006 09:39:17 -0600 Subject: [AccessD] On Open Event Message-ID: <9C382E065F54AE48BC3AA7925DCBB01C03DE6782@karta-exc-int.Karta.com> When I had to do this, I created a public function and then just called the function where ever I needed it. JC would have it in a class in his framework. Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mark A Matte Sent: Wednesday, March 01, 2006 9:35 AM To: accessd at databaseadvisors.com Subject: [AccessD] On Open Event Hello All, I have a form that does 'stuff' 'ON OPEN'...is there a way to cause this event to fire again from another form...repaint,refresh,requery...anything? Thanks, Mark A. Matte -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From markamatte at hotmail.com Wed Mar 1 09:43:40 2006 From: markamatte at hotmail.com (Mark A Matte) Date: Wed, 01 Mar 2006 15:43:40 +0000 Subject: [AccessD] On Open Event In-Reply-To: <9C382E065F54AE48BC3AA7925DCBB01C03DE6782@karta-exc-int.Karta.com> Message-ID: Thanks Jim, Thats what I was thinking...I just wish I would have thought about that at the beginning. Thanks, Mark A. Matte >From: "Jim Hewson" >Reply-To: Access Developers discussion and problem >solving >To: "Access Developers discussion and problem >solving" >Subject: Re: [AccessD] On Open Event >Date: Wed, 1 Mar 2006 09:39:17 -0600 > >When I had to do this, I created a public function and then just called the >function where ever I needed it. >JC would have it in a class in his framework. > >Jim > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mark A Matte >Sent: Wednesday, March 01, 2006 9:35 AM >To: accessd at databaseadvisors.com >Subject: [AccessD] On Open Event > >Hello All, > >I have a form that does 'stuff' 'ON OPEN'...is there a way to cause this >event to fire again from another form...repaint,refresh,requery...anything? > >Thanks, > >Mark A. Matte > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Wed Mar 1 10:13:55 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Wed, 1 Mar 2006 08:13:55 -0800 Subject: [AccessD] Assistance Message-ID: Troublemaker! ;o> Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Tuesday, February 28, 2006 6:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Assistance Bound or unbound forms? Rocky John Colby wrote: > Folks, > > I am looking for a "junior level" person to assist me in getting some > of my back log caught up. I need one person, able to: > > Read and program VBA, guru not required. > Understands and can build Access tables, queries, forms and reports. > Must understand data normalization and be able to correctly sort out > what data goes where given a set of objects / attributes. Must be able > to read, understand and build relationship diagrams in the > relationship window in Access (the center of my universe). Has a few > hours a day available (10-20 hours a week). Must be self starter, > blah, blah, blah. > > If anyone out there thinks they might fit the bill, please respond > OFFLINE - email a resume, and introduction email with required hourly > wage to jwcolby at colbyconsulting.com. The more you know and are > capable of the more work I have. > > Thanks, > > John W. Colby > www.ColbyConsulting.com > > From cfoust at infostatsystems.com Wed Mar 1 10:21:16 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Wed, 1 Mar 2006 08:21:16 -0800 Subject: [AccessD] Scirus Scientific Search Engine Message-ID: Well, it certainly cut the crap out for me. I get a plain white IE page with the message "Done" in the status bar. Not terribly useful, but a lot cleaner than a google search! LOL Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Wednesday, March 01, 2006 12:50 AM To: accessd at databaseadvisors.com Subject: [AccessD] Scirus Scientific Search Engine Hi all Are you aware of the scientific search engine Scirus: http://www.scirus.com It can be quite useful when you wish you could "cut the crap" from a Google search. The crap is often caused by this "feature" which few know about: Hi Gustav, Thank you for your note. Sometimes when you search for an exact phrase, you will not find an exact match anywhere on the page in question. When this occurs, if you look at Google's cached copy of the page you should see a message in the upper left-hand area of the page that says, "These terms only appear in links pointing to this page." In evaluating the merit of a page, Google looks not only at information found on the page itself, but also the anchor text of links that point to the page. If links pointing to the page contain the exact phrase you searched on, this can cause a page to be returned as a match for your query. We hope this explanation helps to clarify our phrase search procedure. Regards, The Google Team /gustav From Gustav at cactus.dk Wed Mar 1 10:21:17 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 01 Mar 2006 17:21:17 +0100 Subject: [AccessD] Assistance Message-ID: Hi Rocky Right you are. The trouble is field names in queries. It handles that. /gustav >>> bchacc at san.rr.com 01-03-2006 16:23 >>> Isn't that what Rick Fisher's Find and Replace is for? Actually has this kind of happen this week. Had to merge one table into another. So I had to change my fldBV prefix to fldBundle everywhere - tables, queries, forms, code, etc. Great program. It found them all. Rocky Gustav Brock wrote: > Hi Rocky > > Until you rename the table. Great time for fun! > > /gustav > > >>>> bchacc at san.rr.com 01-03-2006 15:54 >>> >>>> > You forgot the fld prefix! I now also put the name of the table into > each field name. so each field in tblCustomer, for example, begins with > fldCustomer. More self documenting. You can always see what table a > field comes from. From jwcolby at ColbyConsulting.com Wed Mar 1 10:26:26 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Wed, 1 Mar 2006 11:26:26 -0500 Subject: [AccessD] Assistance In-Reply-To: <4405BC7F.2060903@san.rr.com> Message-ID: <007c01c63d4c$e47d65f0$647aa8c0@ColbyM6805> Exactly. If you are changing table names you already have to search and replace in forms, reports, queries, code etc. Find&Replace ! John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Wednesday, March 01, 2006 10:24 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Assistance Isn't that what Rick Fisher's Find and Replace is for? Actually has this kind of happen this week. Had to merge one table into another. So I had to change my fldBV prefix to fldBundle everywhere - tables, queries, forms, code, etc. Great program. It found them all. Rocky Gustav Brock wrote: > Hi Rocky > > Until you rename the table. Great time for fun! > > /gustav > > >>>> bchacc at san.rr.com 01-03-2006 15:54 >>> >>>> > You forgot the fld prefix! I now also put the name of the table into > each field name. so each field in tblCustomer, for example, begins > with fldCustomer. More self documenting. You can always see what > table a field comes from. > > Rocky > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From dwaters at usinternet.com Wed Mar 1 10:39:37 2006 From: dwaters at usinternet.com (Dan Waters) Date: Wed, 1 Mar 2006 10:39:37 -0600 Subject: [AccessD] Assistance In-Reply-To: <12023378.1141226234742.JavaMail.root@sniper39> Message-ID: <000901c63d4e$be0fd590$0200a8c0@danwaters> Gustav, I usually don't argue in this list but now I have to. Do you really want one field in every table called ID? Typing is easy! Trying to hunt down which of 50 fields all named ID is causing the problem sounds like a good all-day exercise. Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Wednesday, March 01, 2006 9:13 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Assistance Hi Dan Actually you are denormalizing the naming of the database schema this way ... ID is fine. Outside the table it is tblMyTable.ID. Access does this for you automatically. Why having trouble with tblMyTable.MyTableID? Too much typing. Sorry, couldn't resist. Boring day here - and remember: Clients do lie. "I'm are experiencing locked records but everyone else is locked out." My colleague drives to the client just to spot a laptop with wireless network. You have one guess: Was this machine logged in to the application?" /gustav >>> dwaters at usinternet.com 01-03-2006 14:28 >>> AND, the name of the autonumber field MUST be the same as the table name. For example, tblMyTable has a PK Autonumber of MyTableID. It MUST be this way! ;-) Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Tuesday, February 28, 2006 10:59 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Assistance ROTFLMAO. Some things are just worth doing, always. Because of my dictatorial methods I am able to just look at my tables and see the relationships, know what tables a field is in etc. Works for me. Most of my subjects don't dare speak up anymore, knowing my "out the door, without a parachute" mentality. ;-) John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Tuesday, February 28, 2006 11:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Assistance Well, thanks to you and your dictatorial methodology I find I am now completely unable to create a new table without defining an autonumber PK as the very first field. With ID as the suffix of the field name. Thanks a lot. And I mean that. Rocky -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From dwaters at usinternet.com Wed Mar 1 10:45:35 2006 From: dwaters at usinternet.com (Dan Waters) Date: Wed, 1 Mar 2006 10:45:35 -0600 Subject: [AccessD] On Open Event In-Reply-To: <17264580.1141227507130.JavaMail.root@sniper19> Message-ID: <000a01c63d4f$908c6ab0$0200a8c0@danwaters> Mark, You can do this: 1) Make the open event a Public sub. 2) Use this: Call Forms.frmMyForm.Form_Open You can use this technique to call any procedure in any OPEN form. I do this sometimes to call an open form's Current event from code in a standard module. Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mark A Matte Sent: Wednesday, March 01, 2006 9:35 AM To: accessd at databaseadvisors.com Subject: [AccessD] On Open Event Hello All, I have a form that does 'stuff' 'ON OPEN'...is there a way to cause this event to fire again from another form...repaint,refresh,requery...anything? Thanks, Mark A. Matte -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From markamatte at hotmail.com Wed Mar 1 10:54:03 2006 From: markamatte at hotmail.com (Mark A Matte) Date: Wed, 01 Mar 2006 16:54:03 +0000 Subject: [AccessD] On Open Event In-Reply-To: <000a01c63d4f$908c6ab0$0200a8c0@danwaters> Message-ID: Dan, Thats what I was looking for... Thanks, Mark A. Matte >From: "Dan Waters" >Reply-To: Access Developers discussion and problem >solving >To: "'Access Developers discussion and problem >solving'" >Subject: Re: [AccessD] On Open Event >Date: Wed, 1 Mar 2006 10:45:35 -0600 > >Mark, > >You can do this: > >1) Make the open event a Public sub. > >2) Use this: Call Forms.frmMyForm.Form_Open > >You can use this technique to call any procedure in any OPEN form. I do >this sometimes to call an open form's Current event from code in a standard >module. > > >Dan > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mark A Matte >Sent: Wednesday, March 01, 2006 9:35 AM >To: accessd at databaseadvisors.com >Subject: [AccessD] On Open Event > >Hello All, > >I have a form that does 'stuff' 'ON OPEN'...is there a way to cause this >event to fire again from another form...repaint,refresh,requery...anything? > >Thanks, > >Mark A. Matte > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From Gustav at cactus.dk Wed Mar 1 11:52:09 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 01 Mar 2006 18:52:09 +0100 Subject: [AccessD] Assistance Message-ID: Hi Dan It really is a matter of preference, I feel. All I can say is that it has never caused any trouble for me. Also, I always prefix table names "tbl" to separate them in SQL clearly from query names. But I never prefix field names with "fld". Again, matter of taste. /gustav >>> dwaters at usinternet.com 01-03-2006 17:39 >>> Gustav, I usually don't argue in this list but now I have to. Do you really want one field in every table called ID? Typing is easy! Trying to hunt down which of 50 fields all named ID is causing the problem sounds like a good all-day exercise. Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Wednesday, March 01, 2006 9:13 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Assistance Hi Dan Actually you are denormalizing the naming of the database schema this way ... ID is fine. Outside the table it is tblMyTable.ID. Access does this for you automatically. Why having trouble with tblMyTable.MyTableID? Too much typing. Sorry, couldn't resist. Boring day here - and remember: Clients do lie. "I'm are experiencing locked records but everyone else is locked out." My colleague drives to the client just to spot a laptop with wireless network. You have one guess: Was this machine logged in to the application?" /gustav >>> dwaters at usinternet.com 01-03-2006 14:28 >>> AND, the name of the autonumber field MUST be the same as the table name. For example, tblMyTable has a PK Autonumber of MyTableID. It MUST be this way! ;-) Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Tuesday, February 28, 2006 10:59 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Assistance ROTFLMAO. Some things are just worth doing, always. Because of my dictatorial methods I am able to just look at my tables and see the relationships, know what tables a field is in etc. Works for me. Most of my subjects don't dare speak up anymore, knowing my "out the door, without a parachute" mentality. ;-) John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Tuesday, February 28, 2006 11:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Assistance Well, thanks to you and your dictatorial methodology I find I am now completely unable to create a new table without defining an autonumber PK as the very first field. With ID as the suffix of the field name. Thanks a lot. And I mean that. Rocky From jwcolby at ColbyConsulting.com Wed Mar 1 11:57:46 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Wed, 1 Mar 2006 12:57:46 -0500 Subject: [AccessD] Assistance In-Reply-To: <000901c63d4e$be0fd590$0200a8c0@danwaters> Message-ID: <008801c63d59$a686beb0$647aa8c0@ColbyM6805> Lol, my feeling exactly. Plus it is nice to just look at a field name and know where it comes from. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Dan Waters Sent: Wednesday, March 01, 2006 11:40 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Assistance Gustav, I usually don't argue in this list but now I have to. Do you really want one field in every table called ID? Typing is easy! Trying to hunt down which of 50 fields all named ID is causing the problem sounds like a good all-day exercise. Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Wednesday, March 01, 2006 9:13 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Assistance Hi Dan Actually you are denormalizing the naming of the database schema this way ... ID is fine. Outside the table it is tblMyTable.ID. Access does this for you automatically. Why having trouble with tblMyTable.MyTableID? Too much typing. Sorry, couldn't resist. Boring day here - and remember: Clients do lie. "I'm are experiencing locked records but everyone else is locked out." My colleague drives to the client just to spot a laptop with wireless network. You have one guess: Was this machine logged in to the application?" /gustav >>> dwaters at usinternet.com 01-03-2006 14:28 >>> AND, the name of the autonumber field MUST be the same as the table name. For example, tblMyTable has a PK Autonumber of MyTableID. It MUST be this way! ;-) Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Tuesday, February 28, 2006 10:59 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Assistance ROTFLMAO. Some things are just worth doing, always. Because of my dictatorial methods I am able to just look at my tables and see the relationships, know what tables a field is in etc. Works for me. Most of my subjects don't dare speak up anymore, knowing my "out the door, without a parachute" mentality. ;-) John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Tuesday, February 28, 2006 11:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Assistance Well, thanks to you and your dictatorial methodology I find I am now completely unable to create a new table without defining an autonumber PK as the very first field. With ID as the suffix of the field name. Thanks a lot. And I mean that. Rocky -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jimjih at comcast.net Wed Mar 1 12:00:00 2006 From: jimjih at comcast.net (jimjih at comcast.net) Date: Wed, 01 Mar 2006 18:00:00 +0000 Subject: [AccessD] On Form Opening Message-ID: <030120061800.13096.4405E12000028C2A000033282200750744080706030706@comcast.net> Hi all, I am quite new at working with Access, having learned what little I know from a very good book, and only because an accounting client needed something that QuickBooks couldn't do. My question is this: I have several forms used to input data such as Employees, Sub-Contractors, Customers, Delivery Tickets, etc. When the form is opened all fields are populated by data from the first item in that particular table. Is it possible to have all fields blank upon opening. Have not been able to find an answer in the books. I figured a workaround, but it involves a lot of work. Also looked at the forms in the Northwind sample program, and their forms do the same thing. Is it possible? Thanks, Jim Holbrook From cfoust at infostatsystems.com Wed Mar 1 12:04:22 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Wed, 1 Mar 2006 10:04:22 -0800 Subject: [AccessD] Assistance Message-ID: Of course, you could be truly rigorous and insist that field names be unique ... ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Wednesday, March 01, 2006 9:58 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Assistance Lol, my feeling exactly. Plus it is nice to just look at a field name and know where it comes from. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Dan Waters Sent: Wednesday, March 01, 2006 11:40 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Assistance Gustav, I usually don't argue in this list but now I have to. Do you really want one field in every table called ID? Typing is easy! Trying to hunt down which of 50 fields all named ID is causing the problem sounds like a good all-day exercise. Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Wednesday, March 01, 2006 9:13 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Assistance Hi Dan Actually you are denormalizing the naming of the database schema this way ... ID is fine. Outside the table it is tblMyTable.ID. Access does this for you automatically. Why having trouble with tblMyTable.MyTableID? Too much typing. Sorry, couldn't resist. Boring day here - and remember: Clients do lie. "I'm are experiencing locked records but everyone else is locked out." My colleague drives to the client just to spot a laptop with wireless network. You have one guess: Was this machine logged in to the application?" /gustav >>> dwaters at usinternet.com 01-03-2006 14:28 >>> AND, the name of the autonumber field MUST be the same as the table name. For example, tblMyTable has a PK Autonumber of MyTableID. It MUST be this way! ;-) Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Tuesday, February 28, 2006 10:59 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Assistance ROTFLMAO. Some things are just worth doing, always. Because of my dictatorial methods I am able to just look at my tables and see the relationships, know what tables a field is in etc. Works for me. Most of my subjects don't dare speak up anymore, knowing my "out the door, without a parachute" mentality. ;-) John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Tuesday, February 28, 2006 11:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Assistance Well, thanks to you and your dictatorial methodology I find I am now completely unable to create a new table without defining an autonumber PK as the very first field. With ID as the suffix of the field name. Thanks a lot. And I mean that. Rocky -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From markamatte at hotmail.com Wed Mar 1 12:21:13 2006 From: markamatte at hotmail.com (Mark A Matte) Date: Wed, 01 Mar 2006 18:21:13 +0000 Subject: [AccessD] On Form Opening Message-ID: Jim, I think if you set the form's "DATA ENTRY" property to YES...you will get the effect you are looking for. Or if you want them to be able to navigate to previous records...you can put the following code in the "ON OPEN" event: DoCmd.GoToRecord , , acNewRec Hope it helps, Mark A. Matte >From: jimjih at comcast.net >Reply-To: Access Developers discussion and problem >solving >To: Access Developers discussion and problem >solving >Subject: [AccessD] On Form Opening >Date: Wed, 01 Mar 2006 18:00:00 +0000 > >Hi all, >I am quite new at working with Access, having learned what little I know >from a very good book, and only because an accounting client needed >something that QuickBooks couldn't do. > >My question is this: I have several forms used to input data such as >Employees, Sub-Contractors, Customers, Delivery Tickets, etc. When the >form is opened all fields are populated by data from the first item in that >particular table. Is it possible to have all fields blank upon opening. >Have not been able to find an answer in the books. I figured a workaround, >but it involves a lot of work. > >Also looked at the forms in the Northwind sample program, and their forms >do the same thing. >Is it possible? > >Thanks, > >Jim Holbrook >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From Robin at rolledgold.net Wed Mar 1 12:15:24 2006 From: Robin at rolledgold.net (Robin ) Date: Wed, 1 Mar 2006 18:15:24 -0000 Subject: [AccessD] On Form Opening Message-ID: <560E2B80EC8F624B93A87B943B7A9CD54A3696@rgiserv.rg.local> Jim, Assuming it's a bound form ... Open the form in design view, right click the small black square top left and choose properties. Select the data tab then click on data entry and change the no to yes ... That should do it.. Rgds Robin Lawrence -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of jimjih at comcast.net Sent: 01 March 2006 18:00 To: Access Developers discussion and problem solving Subject: [AccessD] On Form Opening Hi all, I am quite new at working with Access, having learned what little I know from a very good book, and only because an accounting client needed something that QuickBooks couldn't do. My question is this: I have several forms used to input data such as Employees, Sub-Contractors, Customers, Delivery Tickets, etc. When the form is opened all fields are populated by data from the first item in that particular table. Is it possible to have all fields blank upon opening. Have not been able to find an answer in the books. I figured a workaround, but it involves a lot of work. Also looked at the forms in the Northwind sample program, and their forms do the same thing. Is it possible? Thanks, Jim Holbrook -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From harkinsss at bellsouth.net Wed Mar 1 12:23:10 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Wed, 1 Mar 2006 13:23:10 -0500 Subject: [AccessD] Assistance In-Reply-To: <000901c63d4e$be0fd590$0200a8c0@danwaters> Message-ID: <000b01c63d5d$42d5f990$c6b3d6d1@SUSANONE> ID is just the suffix, as in: CustomerID, EmployeeID, OrderID, and so on. Susan H. I usually don't argue in this list but now I have to. Do you really want one field in every table called ID? Typing is easy! Trying to hunt down which of 50 fields all named ID is causing the problem sounds like a good all-day exercise. From jimjih at comcast.net Wed Mar 1 12:25:27 2006 From: jimjih at comcast.net (jimjih at comcast.net) Date: Wed, 01 Mar 2006 18:25:27 +0000 Subject: [AccessD] On Form Opening Message-ID: <030120061825.7059.4405E7170007347500001B932200750744080706030706@comcast.net> Thanks Mark, At my age, I tend to overlook some simple things, but I really didn't think there was anything simple about Access. Jim -------------- Original message -------------- From: "Mark A Matte" > Jim, > > I think if you set the form's "DATA ENTRY" property to YES...you will get > the effect you are looking for. > > Or if you want them to be able to navigate to previous records...you can put > the following code in the "ON OPEN" event: > DoCmd.GoToRecord , , acNewRec > > Hope it helps, > > Mark A. Matte > > > > >From: jimjih at comcast.net > >Reply-To: Access Developers discussion and problem > >solving > >To: Access Developers discussion and problem > >solving > >Subject: [AccessD] On Form Opening > >Date: Wed, 01 Mar 2006 18:00:00 +0000 > > > >Hi all, > >I am quite new at working with Access, having learned what little I know > >from a very good book, and only because an accounting client needed > >something that QuickBooks couldn't do. > > > >My question is this: I have several forms used to input data such as > >Employees, Sub-Contractors, Customers, Delivery Tickets, etc. When the > >form is opened all fields are populated by data from the first item in that > >particular table. Is it possible to have all fields blank upon opening. > >Have not been able to find an answer in the books. I figured a workaround, > >but it involves a lot of work. > > > >Also looked at the forms in the Northwind sample program, and their forms > >do the same thing. > >Is it possible? > > > >Thanks, > > > >Jim Holbrook > >-- > >AccessD mailing list > >AccessD at databaseadvisors.com > >http://databaseadvisors.com/mailman/listinfo/accessd > >Website: http://www.databaseadvisors.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From DWUTKA at marlow.com Wed Mar 1 14:24:59 2006 From: DWUTKA at marlow.com (DWUTKA at marlow.com) Date: Wed, 1 Mar 2006 14:24:59 -0600 Subject: [AccessD] Assistance Message-ID: <17724746D360394AA3BFE5B8D40A9C1BD821@main2.marlow.com> I was going to offer my 'assistance' to JC, but I figured my 'unbound tendencies' might ruffle his feathers. ;) Drew -----Original Message----- From: Charlotte Foust [mailto:cfoust at infostatsystems.com] Sent: Wednesday, March 01, 2006 10:14 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Assistance Troublemaker! ;o> Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Tuesday, February 28, 2006 6:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Assistance Bound or unbound forms? Rocky John Colby wrote: > Folks, > > I am looking for a "junior level" person to assist me in getting some > of my back log caught up. I need one person, able to: > > Read and program VBA, guru not required. > Understands and can build Access tables, queries, forms and reports. > Must understand data normalization and be able to correctly sort out > what data goes where given a set of objects / attributes. Must be able > to read, understand and build relationship diagrams in the > relationship window in Access (the center of my universe). Has a few > hours a day available (10-20 hours a week). Must be self starter, > blah, blah, blah. > > If anyone out there thinks they might fit the bill, please respond > OFFLINE - email a resume, and introduction email with required hourly > wage to jwcolby at colbyconsulting.com. The more you know and are > capable of the more work I have. > > Thanks, > > John W. Colby > www.ColbyConsulting.com > > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From DWUTKA at marlow.com Wed Mar 1 14:26:15 2006 From: DWUTKA at marlow.com (DWUTKA at marlow.com) Date: Wed, 1 Mar 2006 14:26:15 -0600 Subject: [AccessD] On Form Opening Message-ID: <17724746D360394AA3BFE5B8D40A9C1BD822@main2.marlow.com> Set the DataEntry property to True. Then the forms will be blank, and only allow for adding data. Drew -----Original Message----- From: jimjih at comcast.net [mailto:jimjih at comcast.net] Sent: Wednesday, March 01, 2006 12:00 PM To: Access Developers discussion and problem solving Subject: [AccessD] On Form Opening Hi all, I am quite new at working with Access, having learned what little I know from a very good book, and only because an accounting client needed something that QuickBooks couldn't do. My question is this: I have several forms used to input data such as Employees, Sub-Contractors, Customers, Delivery Tickets, etc. When the form is opened all fields are populated by data from the first item in that particular table. Is it possible to have all fields blank upon opening. Have not been able to find an answer in the books. I figured a workaround, but it involves a lot of work. Also looked at the forms in the Northwind sample program, and their forms do the same thing. Is it possible? Thanks, Jim Holbrook -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From darrend at nimble.com.au Wed Mar 1 17:52:00 2006 From: darrend at nimble.com.au (Darren HALL) Date: Thu, 2 Mar 2006 10:52:00 +1100 Subject: [AccessD] A2003:Percentages Message-ID: <20060301235209.XIHL14751.omta05ps.mx.bigpond.com@DENZILLAP> Hi All Cross posted to dba_SQL list Got a percentage format Q Is ist possible to do the calcs and display the end result as a percentage actually in the column rather than do the converts and formats on the form or report? EG select ac.Description, sum(s.TotalCost), '% - ????' from InvoiceChargeSummary s join AccountCostCentre ac on s.AccountNo = ac.AccountNo where s.InvoiceNo = @InvoiceNo returning: AUBURN 50.00 20% MELBOURNE 100.00 40% WA 100.00 40% Many thanks DD From martyconnelly at shaw.ca Wed Mar 1 18:03:36 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Wed, 01 Mar 2006 16:03:36 -0800 Subject: [AccessD] Assistance References: <000b01c63d5d$42d5f990$c6b3d6d1@SUSANONE> Message-ID: <44063658.1070806@shaw.ca> Just remember if you prefix or suffix a field name with key, code, ID or num, it will automagically index that field and even duplicate the index if declared as a primary key. To turn off Tools --> Options --> Tables & Queries --AutoImport on Create/Create delete names Susan Harkins wrote: >ID is just the suffix, as in: CustomerID, EmployeeID, OrderID, and so on. > >Susan H. > >I usually don't argue in this list but now I have to. Do you really want >one field in every table called ID? Typing is easy! Trying to hunt down >which of 50 fields all named ID is causing the problem sounds like a good >all-day exercise. > > > > -- Marty Connelly Victoria, B.C. Canada From dajomigo at tpg.com.au Wed Mar 1 18:14:46 2006 From: dajomigo at tpg.com.au (David & Joanne Gould) Date: Thu, 02 Mar 2006 11:14:46 +1100 Subject: [AccessD] Help with combo box In-Reply-To: <003f01c63d33$99dcab00$fa10a8c0@Albatross> References: <6.2.1.2.2.20060228155505.01e9c198@mail.tpg.com.au> <4403E982.5080005@san.rr.com> <6.2.1.2.2.20060228172601.01eefe80@mail.tpg.com.au> <44050488.1020808@san.rr.com> <6.2.1.2.2.20060301132926.01e79298@mail.tpg.com.au> <440520B4.7020907@san.rr.com> <003f01c63d33$99dcab00$fa10a8c0@Albatross> Message-ID: <6.2.1.2.2.20060302111109.01edfb20@mail.tpg.com.au> Borge Thank you for your suggestion. I have made the changes you suggested. The only thing I will have to check with my client is whether the use of a scanner to input the movie will cause a problem with this setup. Other than that it seems to work great. I have set the recordsource for the text box as the combo box. Thanks to everyone else who made suggestions. You have opened my eyes to more ways of looking for solutions. David At 12:25 AM 2/03/2006, you wrote: >Haven't been following this thread, so I am just jumping in... >I would do something like: > >Create cboRental and adjust the width so only the down arrow displays >Create txtRental; make it enabled and locked and place it to the left of >cboRental so it looks like one control. >On afterupdate of cboRental push the field that normally would display in the >combo into txtRental. >Do your double clicking code on txtRental; single clicking on the cboRental... > >would that do? > >regards >borge > > >----- Original Message ----- >From: "Rocky Smolin - Beach Access Software" >To: "Access Developers discussion and problem solving" > >Sent: Wednesday, March 01, 2006 2:19 PM >Subject: Re: [AccessD] Help with combo box > > > > David: > > > > AFAIK, no, the down arrow is not a separately programmable part of the > > control. But AFAIK may not go all that far. > > > > Rocky > > > > > > David & Joanne Gould wrote: > > > Rocky > > > > > > The Double-click event is set to open another form to change the Rental > > > Type for this movie title. What I was wondering was if there was a way to > > > access the drop-down arrow on the combo box as a separate thing. This > might > > > separate the main part of the control where all the other code is > > > connected. Can it be done? > > > > > > TIA > > > > > > David > > > > > > At 01:18 PM 1/03/2006, you wrote: > > > > > >> Sorry about the late response. I was out all day. Can you use the > > >> click event? What additional function are you trying to implement? > > >> > > >> Rocky > > >> > > >> > > >> David & Joanne Gould wrote: > > >> > > >>> Thanks for your prompt response Rocky. > > >>> > > >>> At 05:11 PM 28/02/2006, you wrote: > > >>> > > >>> > > >>>> What event is the current code attached to? > > >>>> The database form is the Hiring form for a video library. There is > > >>>> currently code attached to the "Before update" event, the "After > Update" > > >>>> event and the "On Double-click" event. The Double-click event > allows the > > >>>> user to add oir change the hiring code (overnight, weekly, etc). > > >>>> > > >>>> > > >>> > > >>>> Can you use the 'Got Focus' event to run your new code? > > >>>> > > >>>> > > >>> The other issue I forgot to mention is it's on a continuous form. I > have > > >>> tried to make the combo box inactive if there is anything entered > in it, > > >>> but that just makes it inactive for all the records in the > transaction (so > > >>> I would only be able to enter one movie per sale). > > >>> > > >>> > > >>> > > >>> > > >>>> Rocky > > >>>> > > >>>> > > >>>> David & Joanne Gould wrote: > > >>>> > > >>>> > > >>>>> I have a combo box on a form that has quite a lot of code attached to >it. > > >>>>> > > >>>>> Is there a way to run code when the user clicks on the drop-down > arrow > > >>>>> > > >>>>> > > >>>> that > > >>>> > > >>>> > > >>>>> won't interfere with other code that runs when the user > double-clicks on > > >>>>> the combo box? > > >>>>> > > >>>>> TIA > > >>>>> > > >>>>> David > > >>>>> > > >>>>> > > >>>>> > > >>>>> > > >>>>> > > >>>> -- > > >>>> Rocky Smolin > > >>>> Beach Access Software > > >>>> 858-259-4334 > > >>>> www.e-z-mrp.com > > >>>> > > >>>> -- > > >>>> AccessD mailing list > > >>>> AccessD at databaseadvisors.com > > >>>> http://databaseadvisors.com/mailman/listinfo/accessd > > >>>> Website: http://www.databaseadvisors.com > > >>>> > > >>>> > > >>> > > >>> > > >> -- > > >> Rocky Smolin > > >> Beach Access Software > > >> 858-259-4334 > > >> www.e-z-mrp.com > > >> > > >> -- > > >> AccessD mailing list > > >> AccessD at databaseadvisors.com > > >> http://databaseadvisors.com/mailman/listinfo/accessd > > >> Website: http://www.databaseadvisors.com > > >> > > > > > > > > > > > > > -- > > Rocky Smolin > > Beach Access Software > > 858-259-4334 > > www.e-z-mrp.com > > > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From wdhindman at bellsouth.net Wed Mar 1 19:49:59 2006 From: wdhindman at bellsouth.net (William Hindman) Date: Wed, 1 Mar 2006 20:49:59 -0500 Subject: [AccessD] Converting to 2003 References: <08F823FD83787D4BA0B99CA580AD3C7402DE6CB6@TTNEXCHCL2.hshhp.com> Message-ID: <005b01c63d9b$9d522770$6101a8c0@50NM721> ...my mdbs no longer bloat the way they did in AXP ...but I can find no mention of a fix in any SP "problems resolved" list ...they just no longer do the bad thing as badly as they once did ...hth :))) William ----- Original Message ----- From: "Jim DeMarco" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 01, 2006 9:20 AM Subject: Re: [AccessD] Converting to 2003 > While I can certainly understand the how mere mention of Gustav's name > might instill respect in an application I'm not quite sure I have an > answer to my question. > > Was the bloating issue fixed or will I have to insert Gustav into my > conversion process? ;-) > > Thanks, > > Jim D. > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of William > Hindman > Sent: Tuesday, February 28, 2006 9:14 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Converting to 2003 > > ...your blessing or MS actually fixing an Access bug ...both are > miracles in my book :) > > William > > ----- Original Message ----- > From: "Gustav Brock" > To: > Sent: Tuesday, February 28, 2006 4:33 AM > Subject: Re: [AccessD] Converting to 2003 > > >> Hi William >> >> "don't particularly care" ... well, that hurts - after all my efforts! >> >> Actually, we have two clients - both female, wonder why - who claim > that >> more than once they have seen issues vanish just by calling me. I > didn't >> do anything - no advice or problem solving - other than devoting my >> attention. And my middle name isn't Jesus. Maybe your mdbs have been > on my >> mind too! >> >> /gustav >> >>>>> wdhindman at bellsouth.net 28-02-2006 00:39 >>> >> ...either its been fixed or Gustav blessed all my mdbs ...I don't >> particularly care which :) >> >> William >> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > > *********************************************************************************** > "This electronic message is intended to be for the use only of the named > recipient, and may contain information from Hudson Health Plan (HHP) that > is confidential or privileged. If you are not the intended recipient, you > are hereby notified that any disclosure, copying, distribution or use of > the contents of this message is strictly prohibited. If you have received > this message in error or are not the named recipient, please notify us > immediately, either by contacting the sender at the electronic mail > address noted above or calling HHP at (914) 631-1611. If you are not the > intended recipient, please do not forward this email to anyone, and delete > and destroy all copies of this message. Thank You". > *********************************************************************************** > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From darrend at nimble.com.au Wed Mar 1 22:19:18 2006 From: darrend at nimble.com.au (Darren DICK) Date: Thu, 2 Mar 2006 15:19:18 +1100 Subject: [AccessD] A2000: XML Q Message-ID: <20060302041927.JSZR14751.omta05ps.mx.bigpond.com@DENZILLAP> Hello all Cross Posted to dba_SQL List What is the minimum header information i need to include before 'my data' starts to get a 'Well formed' xml doc? Eg the stuff that looks like Folks, There has been a bit of discussion in the past few days re naming conventions as applied to tables. I have used conventions for many years and I sat down tonight and started documenting the conventions I use. I have shared my conventions in the past and will do so again here. I do these things because they work for me, in my environment. I have built a framework, which I use in any project where it is allowed. Having conventions allows me to make assumptions about how things will be handled, and write code that used those assumptions to make decisions. Even if you do not use a framework, having objects defined in a consistent manner can just generally make life easier. Feel free to discuss the methods and assumptions that I make, add how you do things (and WHY) etc. Don't bother calling the things I do stupid, if they don't work for you, don't use them. Share what does work for you, and WHY you do what you do. If you do something exactly opposite of the way I do it, explain why you prefer to do it that way. I find rules useless. I find reasons very useful. Table Definition Specification Tables are defined in a consistent manner so that they can be recognized and worked with easily. All of the definitions that I use have been assimilated from other people's ideas or developed over time, and all such conventions exist to solve a problem, whether that be readability, distinguishing functionality or allowing the framework to make assumptions. Table definitions consist of several parts. 1. Tables always use an autonumber PK, whether it appears to need one or not. This is done for a variety of reasons, ranging from divorcing the "table link" (PK/FK)from the unique index and making it trivial to change that unique index without changing the "table link", to the consistency of PK data type which allows specific assumptions in the framework. The PK is always a long integer, and a single field, which easily allows searches and other programmatic manipulations that wouldn't be possible or would be tedious if the PK was a multi-field set. 2. Table naming conventions. Tables are prefixed with 'tbl' so that as table names are encountered in forms, reports and queries they can be distinguished from other objects such as queries. Thus tblPerson, tblCompany, tblVehicle. 3. I have used other table prefixes to cause tables to group by type and be visually distinguishable from each other. Tbl for main tables, tlkp for lookup tables, tmm for many to many tables, ttmp for temporary tables etc. There is a lot of discussion about whether grouping by type is preferable to grouping by functionality, i.e. all accounting tables group together, all shipping tables group together etc. That is very much a 'preference' kind of thing. I have done both, even within the same db. It is possible to throw a "type" suffix on the end of the tables separated by an underscore if you care to group by function but be able to distinguish table type. tblPeopleVehicle_MM for a many to many, tblState_LKP for a lookup. 4. Field naming conventions. Field naming conventions have several parts. In general field and table names should only change in the most dire circumstances. If any object name changes, I have to do a search and replace to find and fix them. If there are a bunch of Fes working against a single BE, it becomes a nightmare. a. Data type prefixes are never used in field names because of issues with data type changes. There are just too many data types, and they are often changed well into a project, for very valid reasons. b. A prefix to the field name is created using the first two characters the table name where the table name is a single word - PEople, VEhicle, COmpany. In cases where the table name is multiple words, the first character of each word is used. InvoiceLineItem ILI, PeopleVehicle PV, CompanyProperty CP. An underscore is used to distinguish the field name prefix from the rest of the field name. PE_ID, PE_FName, PE_SSN. Use of the first two characters if each word is acceptable to avoid collisions and make the field prefix more readable. PEopleVEhicle PEVE_ID. Obviously as a project gets large a table is required to track field name prefixes already used, but for small to medium sized projects this allows the developer to rapidly recognize which table a field comes from just from the field name. If this naming convention is rigorously followed then every field in the db has a unique name, which allows "search and replace" type of operations to be performed without manual intervention. c. IDs (PK/FKs) are distinguished by the capitalized characters 'ID' in the field name. d. PKs use the convention of Prefix characters, followed by an underscore followed by ID. PE_ID, VE_ID, CO_ID. e. FKs use the convention of Prefix characters, followed by an underscore, followed by ID followed by the prefix characters of the foreign table. PV_IDPE, PV_IDVE. CP_IDCO. By placing ID immediately following the underscore, PKs and FKs can be immediately distinguished from other types of fields. f. PKs and FKs are grouped at the top of the field list in design view. This is done so that the PK and all FKs can be seen at a glance without having to search through the fields looking for PKs/FKs. Thus field names look like: tblVehicle: VE_ID VE_Color VE_Make tblPeople PE_ID PE_LName PE_FName PE_SSN tblPeopleVehicle PV_ID PV_IDPE PV_IDVE PV_DateAssigned As you can see, by using the _ character it is easy to distinguish the prefix from the rest of the name. By using the ID immediately after the underscore it is easy to find every PK/FK field. By grouping all the PKs/FKs at the top of the table, no searching is required to find the PKs/FKs. By using the _IDXXXX construct, it is easy to visually look at the FK and just "see" what table that is the PK in. As I said above, to me reasons are the important thing. They define why I do what I do and allow me to evaluate whether making a change to what I do is useful to me. Rules without the associated reason are useless since I cannot evaluate how it applies to what I am trying to do. Rules are made to be broken, but I want to know the danger of doing so. John W. Colby www.ColbyConsulting.com From jwcolby at ColbyConsulting.com Thu Mar 2 05:51:18 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 2 Mar 2006 06:51:18 -0500 Subject: [AccessD] Embedded Documentation Message-ID: <00c501c63def$9f381a50$647aa8c0@ColbyM6805> One of the issues that I have with overview documentation is that it is not internal to the object being documented. I document my modules, my functions, even lines of functions, but "overview" documents and theory, WHY and HOW the big picture is implemented and works just doesn't fall neatly into a module. Furthermore if you were to document that in a module you have to use comments which is a PITA. So, for example, I would like to embed a text document into a field in a table, then be able to quickly and easily edit that document using an external word processor, but have the external word processor actually update the data live in the table. Is this possible? While thinking about that I also thought about the issue of having to put "remark" characters in documentation in modules. For example if you want to place an overview of a module in the module header, you have to place ' characters in front of every line to turn it into a comment. This works but you have to place that ' at the beginning of each line, and if you want to rearrange the text you are inserting / deleting these ' characters as you move stuff around. It occurred to me that perhaps you could "bracket" the documentation with a conditional compile #if then to cause the bracketed info to be ignored by the compiler. This does appear to work, for example: #If Something Then This is a test of my ability to add documentation without the remark character #End If Compiles without error because "Something" was never set true. Unfortunately it DOES cause the JIT interpreter to evaluate the text every time you hit the carriage return and tells you that you have a compile error. Perhaps as (or more) intrusive as the ' characters. Sigh. John W. Colby www.ColbyConsulting.com From shamil at users.mns.ru Thu Mar 2 07:11:23 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Thu, 2 Mar 2006 16:11:23 +0300 Subject: [AccessD] Table naming conventions References: <00c401c63dea$2c4b1ec0$647aa8c0@ColbyM6805> Message-ID: <004501c63dfa$d3f1b7f0$6401a8c0@Nant> John, AFAIS your naming conventions are based on LRNC (see e.g. Stan Leszinsky "MS Access 97 Expert Solutions"). One exception are field names - the recommended in LRNC way is to not use underscore and to use 3-4 chars standard abbreviations to prefix field names: - Company - comp - Person - pers - Employee - empl or emp ... I do use LRNC for the last 10 years. It worked very well in many situations. Best regards, Shamil -- Web: http://smsconsulting.spb.ru/shamil_s ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Thursday, March 02, 2006 2:12 PM Subject: [AccessD] Table naming conventions > Folks, > > There has been a bit of discussion in the past few days re naming > conventions as applied to tables. I have used conventions for many years > and I sat down tonight and started documenting the conventions I use. I > have shared my conventions in the past and will do so again here. I do > these things because they work for me, in my environment. > > I have built a framework, which I use in any project where it is allowed. > Having conventions allows me to make assumptions about how things will be > handled, and write code that used those assumptions to make decisions. > Even > if you do not use a framework, having objects defined in a consistent > manner > can just generally make life easier. > > Feel free to discuss the methods and assumptions that I make, add how you > do > things (and WHY) etc. Don't bother calling the things I do stupid, if > they > don't work for you, don't use them. Share what does work for you, and WHY > you do what you do. If you do something exactly opposite of the way I do > it, explain why you prefer to do it that way. I find rules useless. I > find > reasons very useful. > > Table Definition Specification > Tables are defined in a consistent manner so that they can be recognized > and > worked with easily. All of the definitions that I use have been > assimilated > from other people's ideas or developed over time, and all such conventions > exist to solve a problem, whether that be readability, distinguishing > functionality or allowing the framework to make assumptions. > > Table definitions consist of several parts. > 1. Tables always use an autonumber PK, whether it appears to need one > or not. This is done for a variety of reasons, ranging from divorcing the > "table link" (PK/FK)from the unique index and making it trivial to change > that unique index without changing the "table link", to the consistency of > PK data type which allows specific assumptions in the framework. The PK > is > always a long integer, and a single field, which easily allows searches > and > other programmatic manipulations that wouldn't be possible or would be > tedious if the PK was a multi-field set. > 2. Table naming conventions. Tables are prefixed with 'tbl' so that as > table names are encountered in forms, reports and queries they can be > distinguished from other objects such as queries. Thus tblPerson, > tblCompany, tblVehicle. > 3. I have used other table prefixes to cause tables to group by type > and be visually distinguishable from each other. Tbl for main tables, > tlkp > for lookup tables, tmm for many to many tables, ttmp for temporary tables > etc. There is a lot of discussion about whether grouping by type is > preferable to grouping by functionality, i.e. all accounting tables group > together, all shipping tables group together etc. That is very much a > 'preference' kind of thing. I have done both, even within the same db. > It > is possible to throw a "type" suffix on the end of the tables separated by > an underscore if you care to group by function but be able to distinguish > table type. tblPeopleVehicle_MM for a many to many, tblState_LKP for a > lookup. > 4. Field naming conventions. Field naming conventions have several > parts. In general field and table names should only change in the most > dire > circumstances. If any object name changes, I have to do a search and > replace to find and fix them. If there are a bunch of Fes working against > a > single BE, it becomes a nightmare. > a. Data type prefixes are never used in field names because of issues > with data type changes. There are just too many data types, and they are > often changed well into a project, for very valid reasons. > b. A prefix to the field name is created using the first two characters > the table name where the table name is a single word - PEople, VEhicle, > COmpany. In cases where the table name is multiple words, the first > character of each word is used. InvoiceLineItem ILI, PeopleVehicle PV, > CompanyProperty CP. An underscore is used to distinguish the field name > prefix from the rest of the field name. PE_ID, PE_FName, PE_SSN. Use of > the first two characters if each word is acceptable to avoid collisions > and > make the field prefix more readable. PEopleVEhicle PEVE_ID. > > Obviously as a project gets large a table is required to track field name > prefixes already used, but for small to medium sized projects this allows > the developer to rapidly recognize which table a field comes from just > from > the field name. If this naming convention is rigorously followed then > every > field in the db has a unique name, which allows "search and replace" type > of > operations to be performed without manual intervention. > c. IDs (PK/FKs) are distinguished by the capitalized characters 'ID' > in the field name. > d. PKs use the convention of Prefix characters, followed by an > underscore followed by ID. PE_ID, VE_ID, CO_ID. > e. FKs use the convention of Prefix characters, followed by an > underscore, followed by ID followed by the prefix characters of the > foreign > table. PV_IDPE, PV_IDVE. CP_IDCO. By placing ID immediately following > the > underscore, PKs and FKs can be immediately distinguished from other types > of > fields. > f. PKs and FKs are grouped at the top of the field list in design view. > This is done so that the PK and all FKs can be seen at a glance without > having to search through the fields looking for PKs/FKs. > > > Thus field names look like: > tblVehicle: > VE_ID > VE_Color > VE_Make > > tblPeople > PE_ID > PE_LName > PE_FName > PE_SSN > > tblPeopleVehicle > PV_ID > PV_IDPE > PV_IDVE > PV_DateAssigned > > As you can see, by using the _ character it is easy to distinguish the > prefix from the rest of the name. By using the ID immediately after the > underscore it is easy to find every PK/FK field. By grouping all the > PKs/FKs at the top of the table, no searching is required to find the > PKs/FKs. By using the _IDXXXX construct, it is easy to visually look at > the > FK and just "see" what table that is the PK in. > > As I said above, to me reasons are the important thing. They define why I > do what I do and allow me to evaluate whether making a change to what I do > is useful to me. Rules without the associated reason are useless since I > cannot evaluate how it applies to what I am trying to do. > > Rules are made to be broken, but I want to know the danger of doing so. > > John W. Colby > www.ColbyConsulting.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From harkinsss at bellsouth.net Thu Mar 2 07:41:18 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Thu, 2 Mar 2006 08:41:18 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: <004501c63dfa$d3f1b7f0$6401a8c0@Nant> Message-ID: <000601c63dff$0a97c070$9ab3d6d1@SUSANONE> AFAIS your naming conventions are based on LRNC (see e.g. Stan Leszinsky "MS Access 97 Expert Solutions"). One exception are field names - the recommended in LRNC way is to not use underscore and to use 3-4 chars standard abbreviations to prefix field names: - Company - comp - Person - pers - Employee - empl or emp ... ========I find abbreviated names a real pia. :) Susan H. From Gustav at cactus.dk Thu Mar 2 07:57:38 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Thu, 02 Mar 2006 14:57:38 +0100 Subject: [AccessD] Quartile Message-ID: Hi all Not much response on this except, as always, from Marty. Did I find a niche? /gustav >>> Gustav at cactus.dk 28-02-2006 14:41:07 >>> Anyone having a need to calculate quartiles? From reuben at gfconsultants.com Thu Mar 2 08:09:55 2006 From: reuben at gfconsultants.com (Reuben Cummings) Date: Thu, 2 Mar 2006 09:09:55 -0500 Subject: [AccessD] A2003:Percentages In-Reply-To: <20060301235209.XIHL14751.omta05ps.mx.bigpond.com@DENZILLAP> Message-ID: I don't totally understand your problem, but I beleive if you use the "Percentage" format on a text box and the data is .2, for example, the report will show 20%. Reuben Cummings GFC, LLC 812.523.1017 > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Darren HALL > Sent: Wednesday, March 01, 2006 6:52 PM > To: AccessD > Subject: [AccessD] A2003:Percentages > > > Hi All > Cross posted to dba_SQL list > Got a percentage format Q > Is ist possible to do the calcs and display the end result as a percentage > actually in the column > rather than do the converts and formats on the form or report? > > EG > select ac.Description, sum(s.TotalCost), '% - ????' > > from InvoiceChargeSummary s > > join AccountCostCentre ac on > > s.AccountNo = ac.AccountNo > > where s.InvoiceNo = @InvoiceNo > > returning: > > AUBURN 50.00 20% > > MELBOURNE 100.00 40% > > WA 100.00 40% > > Many thanks > > DD > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From Lambert.Heenan at AIG.com Thu Mar 2 08:16:10 2006 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Thu, 2 Mar 2006 09:16:10 -0500 Subject: [AccessD] Table naming conventions Message-ID: <1D7828CDB8350747AFE9D69E0E90DA1F1DDB21D3@xlivmbx21.aig.com> Not read all this, but one point I want to make is "why are people obsessed with PREFIXES?" I use the "_tbl" SUFFIX in my table names. Why? So that when I sort the list of tables I can use the initial letter of the table name to quickly jump to it using the keyboard. If they all begin with "tbl" you cannot do that. Simple. :-) Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 6:12 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Table naming conventions Folks, There has been a bit of discussion in the past few days re naming conventions as applied to tables. I have used conventions for many years and I sat down tonight and started documenting the conventions I use. I have shared my conventions in the past and will do so again here. I do these things because they work for me, in my environment. I have built a framework, which I use in any project where it is allowed. Having conventions allows me to make assumptions about how things will be handled, and write code that used those assumptions to make decisions. Even if you do not use a framework, having objects defined in a consistent manner can just generally make life easier. Feel free to discuss the methods and assumptions that I make, add how you do things (and WHY) etc. Don't bother calling the things I do stupid, if they don't work for you, don't use them. Share what does work for you, and WHY you do what you do. If you do something exactly opposite of the way I do it, explain why you prefer to do it that way. I find rules useless. I find reasons very useful. Table Definition Specification Tables are defined in a consistent manner so that they can be recognized and worked with easily. All of the definitions that I use have been assimilated from other people's ideas or developed over time, and all such conventions exist to solve a problem, whether that be readability, distinguishing functionality or allowing the framework to make assumptions. Table definitions consist of several parts. 1. Tables always use an autonumber PK, whether it appears to need one or not. This is done for a variety of reasons, ranging from divorcing the "table link" (PK/FK)from the unique index and making it trivial to change that unique index without changing the "table link", to the consistency of PK data type which allows specific assumptions in the framework. The PK is always a long integer, and a single field, which easily allows searches and other programmatic manipulations that wouldn't be possible or would be tedious if the PK was a multi-field set. 2. Table naming conventions. Tables are prefixed with 'tbl' so that as table names are encountered in forms, reports and queries they can be distinguished from other objects such as queries. Thus tblPerson, tblCompany, tblVehicle. 3. I have used other table prefixes to cause tables to group by type and be visually distinguishable from each other. Tbl for main tables, tlkp for lookup tables, tmm for many to many tables, ttmp for temporary tables etc. There is a lot of discussion about whether grouping by type is preferable to grouping by functionality, i.e. all accounting tables group together, all shipping tables group together etc. That is very much a 'preference' kind of thing. I have done both, even within the same db. It is possible to throw a "type" suffix on the end of the tables separated by an underscore if you care to group by function but be able to distinguish table type. tblPeopleVehicle_MM for a many to many, tblState_LKP for a lookup. 4. Field naming conventions. Field naming conventions have several parts. In general field and table names should only change in the most dire circumstances. If any object name changes, I have to do a search and replace to find and fix them. If there are a bunch of Fes working against a single BE, it becomes a nightmare. a. Data type prefixes are never used in field names because of issues with data type changes. There are just too many data types, and they are often changed well into a project, for very valid reasons. b. A prefix to the field name is created using the first two characters the table name where the table name is a single word - PEople, VEhicle, COmpany. In cases where the table name is multiple words, the first character of each word is used. InvoiceLineItem ILI, PeopleVehicle PV, CompanyProperty CP. An underscore is used to distinguish the field name prefix from the rest of the field name. PE_ID, PE_FName, PE_SSN. Use of the first two characters if each word is acceptable to avoid collisions and make the field prefix more readable. PEopleVEhicle PEVE_ID. Obviously as a project gets large a table is required to track field name prefixes already used, but for small to medium sized projects this allows the developer to rapidly recognize which table a field comes from just from the field name. If this naming convention is rigorously followed then every field in the db has a unique name, which allows "search and replace" type of operations to be performed without manual intervention. c. IDs (PK/FKs) are distinguished by the capitalized characters 'ID' in the field name. d. PKs use the convention of Prefix characters, followed by an underscore followed by ID. PE_ID, VE_ID, CO_ID. e. FKs use the convention of Prefix characters, followed by an underscore, followed by ID followed by the prefix characters of the foreign table. PV_IDPE, PV_IDVE. CP_IDCO. By placing ID immediately following the underscore, PKs and FKs can be immediately distinguished from other types of fields. f. PKs and FKs are grouped at the top of the field list in design view. This is done so that the PK and all FKs can be seen at a glance without having to search through the fields looking for PKs/FKs. Thus field names look like: tblVehicle: VE_ID VE_Color VE_Make tblPeople PE_ID PE_LName PE_FName PE_SSN tblPeopleVehicle PV_ID PV_IDPE PV_IDVE PV_DateAssigned As you can see, by using the _ character it is easy to distinguish the prefix from the rest of the name. By using the ID immediately after the underscore it is easy to find every PK/FK field. By grouping all the PKs/FKs at the top of the table, no searching is required to find the PKs/FKs. By using the _IDXXXX construct, it is easy to visually look at the FK and just "see" what table that is the PK in. As I said above, to me reasons are the important thing. They define why I do what I do and allow me to evaluate whether making a change to what I do is useful to me. Rules without the associated reason are useless since I cannot evaluate how it applies to what I am trying to do. Rules are made to be broken, but I want to know the danger of doing so. John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From darrend at nimble.com.au Thu Mar 2 08:35:11 2006 From: darrend at nimble.com.au (Darren DICK) Date: Fri, 3 Mar 2006 01:35:11 +1100 Subject: [AccessD] A2003:Percentages In-Reply-To: Message-ID: <20060302143514.CCZX1358.omta03sl.mx.bigpond.com@DENZILLAP> Ok - Slightly different from my original Q Assume I pay $75.33 for an item I sell it for $292.35 What do I do to calc my margin as a percentage? (292.35/75.33) *100 ? Or something like it? Darren ------------------------------ T: 0424 696 433 From accessd666 at yahoo.com Thu Mar 2 08:37:01 2006 From: accessd666 at yahoo.com (Sad Der) Date: Thu, 2 Mar 2006 06:37:01 -0800 (PST) Subject: [AccessD] Display New/Updated items? (Kinda OT) Message-ID: <20060302143701.52926.qmail@web31614.mail.mud.yahoo.com> Hi group, I've got an A2K app with a SQL Server 2000 b.e. In this application we store information about all application that we use (kind of knowledge base) I want to create a form that displays new, or updated items. However, we didn't implement the following 4 columns: InsertedOn insertedBy LastUpdatedon UpdatedBy So we also didn't implement logic to fill these columns (duh). I came up with the idea to create a logging table with where we can store info about new items or updated items. I want to fill this table using triggers. For every (importand) table I want to create 2 or 3 triggers (insert, update and perhaps delete). In these triggers I would create logic that adds a record in the logging table. Does this make sence? Is this a good approach? TIA Sander __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com From harkinsss at bellsouth.net Thu Mar 2 09:08:26 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Thu, 2 Mar 2006 10:08:26 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: <1D7828CDB8350747AFE9D69E0E90DA1F1DDB21D3@xlivmbx21.aig.com> Message-ID: <001701c63e0b$2f8fbf70$9ab3d6d1@SUSANONE> I don't think using prefixes with the actual objects is terribly important -- I think a lot of people lend toward natural names for objects and use the prefixes for variables. Susan H. Not read all this, but one point I want to make is "why are people obsessed with PREFIXES?" I use the "_tbl" SUFFIX in my table names. Why? So that when I sort the list of tables I can use the initial letter of the table name to quickly jump to it using the keyboard. If they all begin with "tbl" you cannot do that. Simple. :-) From reuben at gfconsultants.com Thu Mar 2 09:19:06 2006 From: reuben at gfconsultants.com (Reuben Cummings) Date: Thu, 2 Mar 2006 10:19:06 -0500 Subject: [AccessD] A2003:Percentages In-Reply-To: <20060302143514.CCZX1358.omta03sl.mx.bigpond.com@DENZILLAP> Message-ID: (292.35-75.33)/75.33 * 100 That's a 288% profit!!! Reuben Cummings GFC, LLC 812.523.1017 > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Darren DICK > Sent: Thursday, March 02, 2006 9:35 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] A2003:Percentages > > > Ok - Slightly different from my original Q > > Assume I pay $75.33 for an item > I sell it for $292.35 > > What do I do to calc my margin as a percentage? > > (292.35/75.33) *100 ? Or something like it? > > Darren > ------------------------------ > T: 0424 696 433 > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From darrend at nimble.com.au Thu Mar 2 09:33:13 2006 From: darrend at nimble.com.au (Darren DICK) Date: Fri, 3 Mar 2006 02:33:13 +1100 Subject: [AccessD] A2003:Percentages In-Reply-To: Message-ID: <20060302153314.YYVJ10380.omta04sl.mx.bigpond.com@DENZILLAP> It's a good business to be in - though it's not mine Thanks Reuben - I appreciate the calc See ya Darren ------------------------------ T: 0424 696 433 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Reuben Cummings Sent: Friday, 3 March 2006 2:19 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] A2003:Percentages (292.35-75.33)/75.33 * 100 That's a 288% profit!!! Reuben Cummings GFC, LLC 812.523.1017 > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Darren DICK > Sent: Thursday, March 02, 2006 9:35 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] A2003:Percentages > > > Ok - Slightly different from my original Q > > Assume I pay $75.33 for an item > I sell it for $292.35 > > What do I do to calc my margin as a percentage? > > (292.35/75.33) *100 ? Or something like it? > > Darren > ------------------------------ > T: 0424 696 433 > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Lambert.Heenan at AIG.com Thu Mar 2 09:38:08 2006 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Thu, 2 Mar 2006 09:38:08 -0600 Subject: [AccessD] Table naming conventions Message-ID: <1D7828CDB8350747AFE9D69E0E90DA1F1DDB2286@xlivmbx21.aig.com> All I'm really saying is that the Access user interface allows you to select an object in the database window by typing the initial letter. Type 'D' and the interface will jump to the first object in the list that starts with a D. Type D again to jump to the next one. That's why I use suffixes instead of prefixes. If you have a common prefix for your objects, you lose this handy navigation feature. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Thursday, March 02, 2006 10:08 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions I don't think using prefixes with the actual objects is terribly important -- I think a lot of people lend toward natural names for objects and use the prefixes for variables. Susan H. Not read all this, but one point I want to make is "why are people obsessed with PREFIXES?" I use the "_tbl" SUFFIX in my table names. Why? So that when I sort the list of tables I can use the initial letter of the table name to quickly jump to it using the keyboard. If they all begin with "tbl" you cannot do that. Simple. :-) -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From zora_db at yahoo.com Thu Mar 2 09:53:28 2006 From: zora_db at yahoo.com (Roz Clarke) Date: Thu, 2 Mar 2006 15:53:28 +0000 (GMT) Subject: [AccessD] OT: farewell In-Reply-To: <1D7828CDB8350747AFE9D69E0E90DA1F1DDB2286@xlivmbx21.aig.com> Message-ID: <20060302155328.19996.qmail@web50115.mail.yahoo.com> Hi guys. Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 months. I am no longer working in IT, having given up my job and taken up a Masters in Creative Writing. Whilst I may have the occasional web project to work on, I have no plans to return to development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing all your familiar names in my inbox every day. So I am leaving the list and standing down as a moderator. It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything I know about database development and a lot more besides, but I've had tears and laughter along the way and a fantastic trip to Germany into the bargain. Thank you all for being invaluable 'virtual colleagues', but above all for being friends. Love and hugs Roz PS what's the OT list like these days? ;) ___________________________________________________________ NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ From cfoust at infostatsystems.com Thu Mar 2 09:56:32 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 2 Mar 2006 07:56:32 -0800 Subject: [AccessD] Table naming conventions Message-ID: Try giving a query and a table the same name and see why prefixes can be important! LOL Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Thursday, March 02, 2006 7:08 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions I don't think using prefixes with the actual objects is terribly important -- I think a lot of people lend toward natural names for objects and use the prefixes for variables. Susan H. Not read all this, but one point I want to make is "why are people obsessed with PREFIXES?" I use the "_tbl" SUFFIX in my table names. Why? So that when I sort the list of tables I can use the initial letter of the table name to quickly jump to it using the keyboard. If they all begin with "tbl" you cannot do that. Simple. :-) -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Thu Mar 2 09:57:45 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 2 Mar 2006 07:57:45 -0800 Subject: [AccessD] Table naming conventions Message-ID: You use suffixes for ease of navigation. I prefer prefixes for grouping by types of objects. Different strokes. Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert Sent: Thursday, March 02, 2006 6:16 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions Not read all this, but one point I want to make is "why are people obsessed with PREFIXES?" I use the "_tbl" SUFFIX in my table names. Why? So that when I sort the list of tables I can use the initial letter of the table name to quickly jump to it using the keyboard. If they all begin with "tbl" you cannot do that. Simple. :-) Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 6:12 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Table naming conventions Folks, There has been a bit of discussion in the past few days re naming conventions as applied to tables. I have used conventions for many years and I sat down tonight and started documenting the conventions I use. I have shared my conventions in the past and will do so again here. I do these things because they work for me, in my environment. I have built a framework, which I use in any project where it is allowed. Having conventions allows me to make assumptions about how things will be handled, and write code that used those assumptions to make decisions. Even if you do not use a framework, having objects defined in a consistent manner can just generally make life easier. Feel free to discuss the methods and assumptions that I make, add how you do things (and WHY) etc. Don't bother calling the things I do stupid, if they don't work for you, don't use them. Share what does work for you, and WHY you do what you do. If you do something exactly opposite of the way I do it, explain why you prefer to do it that way. I find rules useless. I find reasons very useful. Table Definition Specification Tables are defined in a consistent manner so that they can be recognized and worked with easily. All of the definitions that I use have been assimilated from other people's ideas or developed over time, and all such conventions exist to solve a problem, whether that be readability, distinguishing functionality or allowing the framework to make assumptions. Table definitions consist of several parts. 1. Tables always use an autonumber PK, whether it appears to need one or not. This is done for a variety of reasons, ranging from divorcing the "table link" (PK/FK)from the unique index and making it trivial to change that unique index without changing the "table link", to the consistency of PK data type which allows specific assumptions in the framework. The PK is always a long integer, and a single field, which easily allows searches and other programmatic manipulations that wouldn't be possible or would be tedious if the PK was a multi-field set. 2. Table naming conventions. Tables are prefixed with 'tbl' so that as table names are encountered in forms, reports and queries they can be distinguished from other objects such as queries. Thus tblPerson, tblCompany, tblVehicle. 3. I have used other table prefixes to cause tables to group by type and be visually distinguishable from each other. Tbl for main tables, tlkp for lookup tables, tmm for many to many tables, ttmp for temporary tables etc. There is a lot of discussion about whether grouping by type is preferable to grouping by functionality, i.e. all accounting tables group together, all shipping tables group together etc. That is very much a 'preference' kind of thing. I have done both, even within the same db. It is possible to throw a "type" suffix on the end of the tables separated by an underscore if you care to group by function but be able to distinguish table type. tblPeopleVehicle_MM for a many to many, tblState_LKP for a lookup. 4. Field naming conventions. Field naming conventions have several parts. In general field and table names should only change in the most dire circumstances. If any object name changes, I have to do a search and replace to find and fix them. If there are a bunch of Fes working against a single BE, it becomes a nightmare. a. Data type prefixes are never used in field names because of issues with data type changes. There are just too many data types, and they are often changed well into a project, for very valid reasons. b. A prefix to the field name is created using the first two characters the table name where the table name is a single word - PEople, VEhicle, COmpany. In cases where the table name is multiple words, the first character of each word is used. InvoiceLineItem ILI, PeopleVehicle PV, CompanyProperty CP. An underscore is used to distinguish the field name prefix from the rest of the field name. PE_ID, PE_FName, PE_SSN. Use of the first two characters if each word is acceptable to avoid collisions and make the field prefix more readable. PEopleVEhicle PEVE_ID. Obviously as a project gets large a table is required to track field name prefixes already used, but for small to medium sized projects this allows the developer to rapidly recognize which table a field comes from just from the field name. If this naming convention is rigorously followed then every field in the db has a unique name, which allows "search and replace" type of operations to be performed without manual intervention. c. IDs (PK/FKs) are distinguished by the capitalized characters 'ID' in the field name. d. PKs use the convention of Prefix characters, followed by an underscore followed by ID. PE_ID, VE_ID, CO_ID. e. FKs use the convention of Prefix characters, followed by an underscore, followed by ID followed by the prefix characters of the foreign table. PV_IDPE, PV_IDVE. CP_IDCO. By placing ID immediately following the underscore, PKs and FKs can be immediately distinguished from other types of fields. f. PKs and FKs are grouped at the top of the field list in design view. This is done so that the PK and all FKs can be seen at a glance without having to search through the fields looking for PKs/FKs. Thus field names look like: tblVehicle: VE_ID VE_Color VE_Make tblPeople PE_ID PE_LName PE_FName PE_SSN tblPeopleVehicle PV_ID PV_IDPE PV_IDVE PV_DateAssigned As you can see, by using the _ character it is easy to distinguish the prefix from the rest of the name. By using the ID immediately after the underscore it is easy to find every PK/FK field. By grouping all the PKs/FKs at the top of the table, no searching is required to find the PKs/FKs. By using the _IDXXXX construct, it is easy to visually look at the FK and just "see" what table that is the PK in. As I said above, to me reasons are the important thing. They define why I do what I do and allow me to evaluate whether making a change to what I do is useful to me. Rules without the associated reason are useless since I cannot evaluate how it applies to what I am trying to do. Rules are made to be broken, but I want to know the danger of doing so. John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From mwp.reid at qub.ac.uk Thu Mar 2 09:59:58 2006 From: mwp.reid at qub.ac.uk (Martin Reid) Date: Thu, 2 Mar 2006 15:59:58 -0000 Subject: [AccessD] OT: farewell Message-ID: Roz May I wish you all the very best in whatever you do and great things with your writing. You have always been a valuable asset to this group and a friend into the bargain. Best Wishes Martin -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Roz Clarke Sent: 02 March 2006 15:53 To: Access Developers discussion and problem solving Subject: [AccessD] OT: farewell Hi guys. Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 months. I am no longer working in IT, having given up my job and taken up a Masters in Creative Writing. Whilst I may have the occasional web project to work on, I have no plans to return to development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing all your familiar names in my inbox every day. So I am leaving the list and standing down as a moderator. It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything I know about database development and a lot more besides, but I've had tears and laughter along the way and a fantastic trip to Germany into the bargain. Thank you all for being invaluable 'virtual colleagues', but above all for being friends. Love and hugs Roz PS what's the OT list like these days? ;) ___________________________________________________________ NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com rs.com From cfoust at infostatsystems.com Thu Mar 2 10:03:21 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 2 Mar 2006 08:03:21 -0800 Subject: [AccessD] Table naming conventions Message-ID: Shamil, I, too, have used Stan's naming convention and have since it was originally introduced as LRNC (R went off and developed his own later ;o>). The underscore annoys me because it is harder to type than just a capital letter, which is, I believe, the reason it was discouraged in LRNC. I really think it boils down to whatever works for the developer, but some kind of naming convention is critical. I've worked with some of John's tables (bet you didn't know that, did you, JC?) and I absolutely HATE his naming convention. I couldn't use it in a million years and I break out in hives just thinking of it, but it works for him. It only becomes an issue in a team development environment, where using the same or at least compatible naming conventions is critical. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Thursday, March 02, 2006 5:11 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions John, AFAIS your naming conventions are based on LRNC (see e.g. Stan Leszinsky "MS Access 97 Expert Solutions"). One exception are field names - the recommended in LRNC way is to not use underscore and to use 3-4 chars standard abbreviations to prefix field names: - Company - comp - Person - pers - Employee - empl or emp ... I do use LRNC for the last 10 years. It worked very well in many situations. Best regards, Shamil -- Web: http://smsconsulting.spb.ru/shamil_s ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Thursday, March 02, 2006 2:12 PM Subject: [AccessD] Table naming conventions > Folks, > > There has been a bit of discussion in the past few days re naming > conventions as applied to tables. I have used conventions for many > years and I sat down tonight and started documenting the conventions I > use. I have shared my conventions in the past and will do so again > here. I do these things because they work for me, in my environment. > > I have built a framework, which I use in any project where it is > allowed. Having conventions allows me to make assumptions about how > things will be handled, and write code that used those assumptions to > make decisions. Even if you do not use a framework, having objects > defined in a consistent manner > can just generally make life easier. > > Feel free to discuss the methods and assumptions that I make, add how > you > do > things (and WHY) etc. Don't bother calling the things I do stupid, if > they > don't work for you, don't use them. Share what does work for you, and WHY > you do what you do. If you do something exactly opposite of the way I do > it, explain why you prefer to do it that way. I find rules useless. I > find > reasons very useful. > > Table Definition Specification > Tables are defined in a consistent manner so that they can be > recognized > and > worked with easily. All of the definitions that I use have been > assimilated > from other people's ideas or developed over time, and all such conventions > exist to solve a problem, whether that be readability, distinguishing > functionality or allowing the framework to make assumptions. > > Table definitions consist of several parts. > 1. Tables always use an autonumber PK, whether it appears to need one > or not. This is done for a variety of reasons, ranging from divorcing > the "table link" (PK/FK)from the unique index and making it trivial to > change that unique index without changing the "table link", to the > consistency of PK data type which allows specific assumptions in the > framework. The PK is always a long integer, and a single field, which > easily allows searches and > other programmatic manipulations that wouldn't be possible or would be > tedious if the PK was a multi-field set. > 2. Table naming conventions. Tables are prefixed with 'tbl' so that as > table names are encountered in forms, reports and queries they can be > distinguished from other objects such as queries. Thus tblPerson, > tblCompany, tblVehicle. > 3. I have used other table prefixes to cause tables to group by type > and be visually distinguishable from each other. Tbl for main tables, > tlkp > for lookup tables, tmm for many to many tables, ttmp for temporary tables > etc. There is a lot of discussion about whether grouping by type is > preferable to grouping by functionality, i.e. all accounting tables group > together, all shipping tables group together etc. That is very much a > 'preference' kind of thing. I have done both, even within the same db. > It > is possible to throw a "type" suffix on the end of the tables separated by > an underscore if you care to group by function but be able to distinguish > table type. tblPeopleVehicle_MM for a many to many, tblState_LKP for a > lookup. > 4. Field naming conventions. Field naming conventions have several > parts. In general field and table names should only change in the most > dire > circumstances. If any object name changes, I have to do a search and > replace to find and fix them. If there are a bunch of Fes working against > a > single BE, it becomes a nightmare. > a. Data type prefixes are never used in field names because of issues > with data type changes. There are just too many data types, and they are > often changed well into a project, for very valid reasons. > b. A prefix to the field name is created using the first two characters > the table name where the table name is a single word - PEople, VEhicle, > COmpany. In cases where the table name is multiple words, the first > character of each word is used. InvoiceLineItem ILI, PeopleVehicle PV, > CompanyProperty CP. An underscore is used to distinguish the field name > prefix from the rest of the field name. PE_ID, PE_FName, PE_SSN. Use of > the first two characters if each word is acceptable to avoid collisions > and > make the field prefix more readable. PEopleVEhicle PEVE_ID. > > Obviously as a project gets large a table is required to track field > name prefixes already used, but for small to medium sized projects > this allows the developer to rapidly recognize which table a field > comes from just from the field name. If this naming convention is > rigorously followed then every > field in the db has a unique name, which allows "search and replace" type > of > operations to be performed without manual intervention. > c. IDs (PK/FKs) are distinguished by the capitalized characters 'ID' > in the field name. > d. PKs use the convention of Prefix characters, followed by an > underscore followed by ID. PE_ID, VE_ID, CO_ID. > e. FKs use the convention of Prefix characters, followed by an > underscore, followed by ID followed by the prefix characters of the > foreign > table. PV_IDPE, PV_IDVE. CP_IDCO. By placing ID immediately following > the > underscore, PKs and FKs can be immediately distinguished from other types > of > fields. > f. PKs and FKs are grouped at the top of the field list in design view. > This is done so that the PK and all FKs can be seen at a glance without > having to search through the fields looking for PKs/FKs. > > > Thus field names look like: > tblVehicle: > VE_ID > VE_Color > VE_Make > > tblPeople > PE_ID > PE_LName > PE_FName > PE_SSN > > tblPeopleVehicle > PV_ID > PV_IDPE > PV_IDVE > PV_DateAssigned > > As you can see, by using the _ character it is easy to distinguish the > prefix from the rest of the name. By using the ID immediately after > the underscore it is easy to find every PK/FK field. By grouping all > the PKs/FKs at the top of the table, no searching is required to find > the PKs/FKs. By using the _IDXXXX construct, it is easy to visually > look at the FK and just "see" what table that is the PK in. > > As I said above, to me reasons are the important thing. They define > why I do what I do and allow me to evaluate whether making a change to > what I do is useful to me. Rules without the associated reason are > useless since I cannot evaluate how it applies to what I am trying to > do. > > Rules are made to be broken, but I want to know the danger of doing > so. > > John W. Colby > www.ColbyConsulting.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From garykjos at gmail.com Thu Mar 2 10:04:08 2006 From: garykjos at gmail.com (Gary Kjos) Date: Thu, 2 Mar 2006 10:04:08 -0600 Subject: [AccessD] OT: farewell In-Reply-To: <20060302155328.19996.qmail@web50115.mail.yahoo.com> References: <1D7828CDB8350747AFE9D69E0E90DA1F1DDB2286@xlivmbx21.aig.com> <20060302155328.19996.qmail@web50115.mail.yahoo.com> Message-ID: Good Luck Roz. We would certainly love to have you join the OT list. It's a nice chatty place. Well usually nice. Chatty nonetheless. ;-) On 3/2/06, Roz Clarke wrote: > Hi guys. > > Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. > > Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 > months. I am no longer working in IT, having given up my job and taken up a Masters in Creative > Writing. Whilst I may have the occasional web project to work on, I have no plans to return to > development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing > all your familiar names in my inbox every day. > > So I am leaving the list and standing down as a moderator. > > It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything > I know about database development and a lot more besides, but I've had tears and laughter along > the way and a fantastic trip to Germany into the bargain. > > Thank you all for being invaluable 'virtual colleagues', but above all for being friends. > > Love and hugs > > Roz > > PS what's the OT list like these days? ;) > > > > ___________________________________________________________ > NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Gary Kjos garykjos at gmail.com From bchacc at san.rr.com Thu Mar 2 10:07:27 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 02 Mar 2006 08:07:27 -0800 Subject: [AccessD] OT: farewell In-Reply-To: <20060302155328.19996.qmail@web50115.mail.yahoo.com> References: <20060302155328.19996.qmail@web50115.mail.yahoo.com> Message-ID: <4407183F.4050204@san.rr.com> Well, adios and godspeed. Sign up for OT and stay in touch. Rocky Roz Clarke wrote: > Hi guys. > > Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. > > Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 > months. I am no longer working in IT, having given up my job and taken up a Masters in Creative > Writing. Whilst I may have the occasional web project to work on, I have no plans to return to > development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing > all your familiar names in my inbox every day. > > So I am leaving the list and standing down as a moderator. > > It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything > I know about database development and a lot more besides, but I've had tears and laughter along > the way and a fantastic trip to Germany into the bargain. > > Thank you all for being invaluable 'virtual colleagues', but above all for being friends. > > Love and hugs > > Roz > > PS what's the OT list like these days? ;) > > > > ___________________________________________________________ > NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From cfoust at infostatsystems.com Thu Mar 2 10:07:43 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 2 Mar 2006 08:07:43 -0800 Subject: [AccessD] OT: farewell Message-ID: Roz, Come back and visit when you're in the neighborhood! I have several virtual "families" here and in Woody's Lounge and they mean a great deal to me (yes, even the bratty teenagers and the uncle who thinks he's a comedian!). Just because you're pursuing a new life doesn't mean you have to turn your back on the old one. Good luck with your writing, and we look forward to hearing about all your literary awards. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Roz Clarke Sent: Thursday, March 02, 2006 7:53 AM To: Access Developers discussion and problem solving Subject: [AccessD] OT: farewell Hi guys. Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 months. I am no longer working in IT, having given up my job and taken up a Masters in Creative Writing. Whilst I may have the occasional web project to work on, I have no plans to return to development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing all your familiar names in my inbox every day. So I am leaving the list and standing down as a moderator. It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything I know about database development and a lot more besides, but I've had tears and laughter along the way and a fantastic trip to Germany into the bargain. Thank you all for being invaluable 'virtual colleagues', but above all for being friends. Love and hugs Roz PS what's the OT list like these days? ;) ___________________________________________________________ NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Thu Mar 2 10:12:41 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Thu, 02 Mar 2006 17:12:41 +0100 Subject: [AccessD] OT: farewell Message-ID: Hi Roz What a change in career! I'm sure you will do well, and I will miss your slightly twisted comments which always - I can say as a foreigner - have been a pleasure to just read. All the best! /gustav >>> zora_db at yahoo.com 02-03-2006 16:53:28 >>> Hi guys. Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 months. I am no longer working in IT, having given up my job and taken up a Masters in Creative Writing. Whilst I may have the occasional web project to work on, I have no plans to return to development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing all your familiar names in my inbox every day. So I am leaving the list and standing down as a moderator. It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything I know about database development and a lot more besides, but I've had tears and laughter along the way and a fantastic trip to Germany into the bargain. Thank you all for being invaluable 'virtual colleagues', but above all for being friends. Love and hugs Roz PS what's the OT list like these days? ;) From bchacc at san.rr.com Thu Mar 2 10:17:12 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 02 Mar 2006 08:17:12 -0800 Subject: [AccessD] Normalize Data by date In-Reply-To: References: Message-ID: <44071A88.1020903@san.rr.com> Chester: Sorry for the late reply. What exactly do you mean by "normalize back to the first volume date"? Can you give an example? Regards, Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com Kaup, Chester wrote: > I have a table with 4 columns of data. The fields are Well_Number, > Production_Date, Water_Volume and CO2_Volume. I need to normalize these > back to the first volume date separately for Water_Volume and > CO2_Volume. ie sum the first volumes data together regardless of date > and through the rest of the records. Hope I am making sense. I am at a > loss of where to start. Thanks. > > > > Chester Kaup > > Engineering Technician > > Kinder Morgan CO2 Company, LLP > > Office (432) 688-3797 > > FAX (432) 688-3799 > > > > > > No trees were killed in the sending of this message. However a large > number of electrons were terribly inconvenienced. > > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From lembit.dbamail at t-online.de Thu Mar 2 10:18:05 2006 From: lembit.dbamail at t-online.de (Lembit Soobik) Date: Thu, 2 Mar 2006 17:18:05 +0100 Subject: [AccessD] OT: farewell References: <20060302155328.19996.qmail@web50115.mail.yahoo.com> Message-ID: <001e01c63e14$e3473300$1400a8c0@v1000> Roz, I wish you a lot success with your writing (how about a Harry Potter type book :-)) why not log into OT at least to say hello. you will sure be welcome. Lembit ----- Original Message ----- From: "Roz Clarke" To: "Access Developers discussion and problem solving" Sent: Thursday, March 02, 2006 4:53 PM Subject: [AccessD] OT: farewell > Hi guys. > > Sorry to bust up your Thursday with an OT goodbye thread, but the moment > is upon me. > > Those who ever noticed me at all, may have noticed that I haven't posted > to Accessd in the last 6 > months. I am no longer working in IT, having given up my job and taken up > a Masters in Creative > Writing. Whilst I may have the occasional web project to work on, I have > no plans to return to > development career-wise. The fact is, I only really stayed subscribed for > the comfort of seeing > all your familiar names in my inbox every day. > > So I am leaving the list and standing down as a moderator. > > It's been a good ten years. Not only do I owe a great deal to the list, > which taught me everything > I know about database development and a lot more besides, but I've had > tears and laughter along > the way and a fantastic trip to Germany into the bargain. > > Thank you all for being invaluable 'virtual colleagues', but above all for > being friends. > > Love and hugs > > Roz > > PS what's the OT list like these days? ;) > > > > ___________________________________________________________ > NEW Yahoo! Cars - sell your car and browse thousands of new and used cars > online! http://uk.cars.yahoo.com/ > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > > -- > No virus found in this incoming message. > Checked by AVG Free Edition. > Version: 7.1.375 / Virus Database: 268.1.1/272 - Release Date: 01.03.2006 > > From zora_db at yahoo.com Thu Mar 2 10:19:03 2006 From: zora_db at yahoo.com (Roz Clarke) Date: Thu, 2 Mar 2006 16:19:03 +0000 (GMT) Subject: [AccessD] OT: farewell In-Reply-To: <4407183F.4050204@san.rr.com> Message-ID: <20060302161903.84554.qmail@web50107.mail.yahoo.com> OK, I'm convinced. OT signup has been executed... --- Rocky Smolin - Beach Access Software wrote: > Well, adios and godspeed. Sign up for OT and stay in touch. > > Rocky > > > Roz Clarke wrote: > > Hi guys. > > > > Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. > > > > Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the > last 6 > > months. I am no longer working in IT, having given up my job and taken up a Masters in > Creative > > Writing. Whilst I may have the occasional web project to work on, I have no plans to return to > > development career-wise. The fact is, I only really stayed subscribed for the comfort of > seeing > > all your familiar names in my inbox every day. > > > > So I am leaving the list and standing down as a moderator. > > > > It's been a good ten years. Not only do I owe a great deal to the list, which taught me > everything > > I know about database development and a lot more besides, but I've had tears and laughter > along > > the way and a fantastic trip to Germany into the bargain. > > > > Thank you all for being invaluable 'virtual colleagues', but above all for being friends. > > > > Love and hugs > > > > Roz > > > > PS what's the OT list like these days? ;) > > > > > > > > ___________________________________________________________ > > NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! > http://uk.cars.yahoo.com/ > > > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > ___________________________________________________________ Yahoo! Messenger - NEW crystal clear PC to PC calling worldwide with voicemail http://uk.messenger.yahoo.com From zora_db at yahoo.com Thu Mar 2 10:22:06 2006 From: zora_db at yahoo.com (Roz Clarke) Date: Thu, 2 Mar 2006 16:22:06 +0000 (GMT) Subject: [AccessD] OT: farewell In-Reply-To: <001e01c63e14$e3473300$1400a8c0@v1000> Message-ID: <20060302162206.67735.qmail@web50114.mail.yahoo.com> LOL If I had a pound for every time someone's suggested that I'd be almost as rich as JK Rowling... well, OK, NOWHERE NEAR as rich as JK Rowling, but it would be enough to get a round of drinks in for all of AccessD. I am coming to OT, so this is only an arrivederci thread now. :) We'll see how long I last this time. --- Lembit Soobik wrote: > Roz, > I wish you a lot success with your writing (how about a Harry Potter type > book :-)) > > why not log into OT at least to say hello. you will sure be welcome. > > Lembit > > ----- Original Message ----- > From: "Roz Clarke" > To: "Access Developers discussion and problem solving" > > Sent: Thursday, March 02, 2006 4:53 PM > Subject: [AccessD] OT: farewell > > > > Hi guys. > > > > Sorry to bust up your Thursday with an OT goodbye thread, but the moment > > is upon me. > > > > Those who ever noticed me at all, may have noticed that I haven't posted > > to Accessd in the last 6 > > months. I am no longer working in IT, having given up my job and taken up > > a Masters in Creative > > Writing. Whilst I may have the occasional web project to work on, I have > > no plans to return to > > development career-wise. The fact is, I only really stayed subscribed for > > the comfort of seeing > > all your familiar names in my inbox every day. > > > > So I am leaving the list and standing down as a moderator. > > > > It's been a good ten years. Not only do I owe a great deal to the list, > > which taught me everything > > I know about database development and a lot more besides, but I've had > > tears and laughter along > > the way and a fantastic trip to Germany into the bargain. > > > > Thank you all for being invaluable 'virtual colleagues', but above all for > > being friends. > > > > Love and hugs > > > > Roz > > > > PS what's the OT list like these days? ;) > > > > > > > > ___________________________________________________________ > > NEW Yahoo! Cars - sell your car and browse thousands of new and used cars > > online! http://uk.cars.yahoo.com/ > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > > > > > -- > > No virus found in this incoming message. > > Checked by AVG Free Edition. > > Version: 7.1.375 / Virus Database: 268.1.1/272 - Release Date: 01.03.2006 > > > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > ___________________________________________________________ To help you stay safe and secure online, we've developed the all new Yahoo! Security Centre. http://uk.security.yahoo.com From markamatte at hotmail.com Thu Mar 2 10:27:51 2006 From: markamatte at hotmail.com (Mark A Matte) Date: Thu, 02 Mar 2006 16:27:51 +0000 Subject: [AccessD] Changing form Name In-Reply-To: Message-ID: Hello All, I just saw an 'odd'...well more unexpected occurence in A2K. I changed the name of a form...and then went to the queries that used controls on this form as criteria to change them as well...all of my criteria had already been changed...but not changed where I was using the same control in an 'update to' of an update query. I guess this is a feature I've just overlooked until now? Not sure what my question is...just a curious topic for me if anyone has any thoughts or insight into how extensive this is in A2K. Thanks, Mark A. Matte From Chester_Kaup at kindermorgan.com Thu Mar 2 10:32:43 2006 From: Chester_Kaup at kindermorgan.com (Kaup, Chester) Date: Thu, 2 Mar 2006 10:32:43 -0600 Subject: [AccessD] Normalize Data by date Message-ID: Example data Well_Number Production_Date Water_Volume CO2_Volume 1 1/1/2005 10 10 1 2/1/2005 20 15 1 3/1/2005 25 20 2 4/1/2005 50 35 2 5/1/2005 75 100 2 6/1/2005 44 87 3 10/1/2005 100 20 3 11/1/2005 200 40 4 2/1/2006 123 57 4 3/1/2006 44 23 To normalize the data what I need to do is sum the Water_Volumes and CO2_Volumes for the first date for each well, second date etc. Thus for dimensionless date 1 well 1 on 1/1/2005 is added to well 2 on 4/1/2005 is added to well 3 on 10/1/2005 and is added to well 4 on 2/1/2006. For Water_Volume on first date 10+50+100+123. For CO2_Volume on first date 10+35+20+57. The again for the second date for sum wells etc. Hope this makes sense. Thanks. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 02, 2006 10:17 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Normalize Data by date Chester: Sorry for the late reply. What exactly do you mean by "normalize back to the first volume date"? Can you give an example? Regards, Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com Kaup, Chester wrote: > I have a table with 4 columns of data. The fields are Well_Number, > Production_Date, Water_Volume and CO2_Volume. I need to normalize these > back to the first volume date separately for Water_Volume and > CO2_Volume. ie sum the first volumes data together regardless of date > and through the rest of the records. Hope I am making sense. I am at a > loss of where to start. Thanks. > > > > Chester Kaup > > Engineering Technician > > Kinder Morgan CO2 Company, LLP > > Office (432) 688-3797 > > FAX (432) 688-3799 > > > > > > No trees were killed in the sending of this message. However a large > number of electrons were terribly inconvenienced. > > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jim.Hale at FleetPride.com Thu Mar 2 10:44:49 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Thu, 2 Mar 2006 10:44:49 -0600 Subject: [AccessD] OT: farewell Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDA6E@corp-es01.fleetpride.com> I envy you! Good luck. Jim Hale -----Original Message----- From: Roz Clarke [mailto:zora_db at yahoo.com] Sent: Thursday, March 02, 2006 9:53 AM To: Access Developers discussion and problem solving Subject: [AccessD] OT: farewell Hi guys. Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 months. I am no longer working in IT, having given up my job and taken up a Masters in Creative Writing. Whilst I may have the occasional web project to work on, I have no plans to return to development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing all your familiar names in my inbox every day. So I am leaving the list and standing down as a moderator. It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything I know about database development and a lot more besides, but I've had tears and laughter along the way and a fantastic trip to Germany into the bargain. Thank you all for being invaluable 'virtual colleagues', but above all for being friends. Love and hugs Roz PS what's the OT list like these days? ;) ___________________________________________________________ NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From markamatte at hotmail.com Thu Mar 2 10:49:45 2006 From: markamatte at hotmail.com (Mark A Matte) Date: Thu, 02 Mar 2006 16:49:45 +0000 Subject: [AccessD] On Open Event In-Reply-To: <000a01c63d4f$908c6ab0$0200a8c0@danwaters> Message-ID: Dan, I tried this...it does work for the 'On Current'...but unless I'm doing something wrong it does not work for the 'On Open'. It gives the error "Argument not Optional". Any other ideas? Thanks, Mark >From: "Dan Waters" >Reply-To: Access Developers discussion and problem >solving >To: "'Access Developers discussion and problem >solving'" >Subject: Re: [AccessD] On Open Event >Date: Wed, 1 Mar 2006 10:45:35 -0600 > >Mark, > >You can do this: > >1) Make the open event a Public sub. > >2) Use this: Call Forms.frmMyForm.Form_Open > >You can use this technique to call any procedure in any OPEN form. I do >this sometimes to call an open form's Current event from code in a standard >module. > > >Dan > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mark A Matte >Sent: Wednesday, March 01, 2006 9:35 AM >To: accessd at databaseadvisors.com >Subject: [AccessD] On Open Event > >Hello All, > >I have a form that does 'stuff' 'ON OPEN'...is there a way to cause this >event to fire again from another form...repaint,refresh,requery...anything? > >Thanks, > >Mark A. Matte > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From zora_db at yahoo.com Thu Mar 2 10:56:51 2006 From: zora_db at yahoo.com (Roz Clarke) Date: Thu, 2 Mar 2006 16:56:51 +0000 (GMT) Subject: [AccessD] OT: farewell In-Reply-To: Message-ID: <20060302165651.95613.qmail@web50108.mail.yahoo.com> I don't know *what* you mean, Gustav. --- Gustav Brock wrote: > Hi Roz > > What a change in career! I'm sure you will do well, and I will miss your slightly twisted > comments which always - I can say as a foreigner - have been a pleasure to just read. > > All the best! > > /gustav > > >>> zora_db at yahoo.com 02-03-2006 16:53:28 >>> > Hi guys. > > Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. > > Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last > 6 > months. I am no longer working in IT, having given up my job and taken up a Masters in Creative > Writing. Whilst I may have the occasional web project to work on, I have no plans to return to > development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing > all your familiar names in my inbox every day. > > So I am leaving the list and standing down as a moderator. > > It's been a good ten years. Not only do I owe a great deal to the list, which taught me > everything > I know about database development and a lot more besides, but I've had tears and laughter along > the way and a fantastic trip to Germany into the bargain. > > Thank you all for being invaluable 'virtual colleagues', but above all for being friends. > > Love and hugs > > Roz > > PS what's the OT list like these days? ;) > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > ___________________________________________________________ Win a BlackBerry device from O2 with Yahoo!. Enter now. http://www.yahoo.co.uk/blackberry From bchacc at san.rr.com Thu Mar 2 11:02:50 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 02 Mar 2006 09:02:50 -0800 Subject: [AccessD] Normalize Data by date In-Reply-To: References: Message-ID: <4407253A.1020308@san.rr.com> Do each of the wells have the same number of dates? If not, what do you do when you get to the third date for well 1 and well2 doesn't have a third date? Rocky Kaup, Chester wrote: > Example data > Well_Number Production_Date Water_Volume > CO2_Volume > 1 1/1/2005 10 > 10 > 1 2/1/2005 20 > 15 > 1 3/1/2005 25 > 20 > 2 4/1/2005 50 > 35 > 2 5/1/2005 75 > 100 > 2 6/1/2005 44 > 87 > 3 10/1/2005 100 > 20 > 3 11/1/2005 200 > 40 > 4 2/1/2006 123 > 57 > 4 3/1/2006 44 > 23 > > To normalize the data what I need to do is sum the Water_Volumes and > CO2_Volumes for the first date for each well, second date etc. Thus for > dimensionless date 1 well 1 on 1/1/2005 is added to well 2 on 4/1/2005 > is added to well 3 on 10/1/2005 and is added to well 4 on 2/1/2006. For > Water_Volume on first date 10+50+100+123. For CO2_Volume on first date > 10+35+20+57. The again for the second date for sum wells etc. Hope this > makes sense. Thanks. > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin > - Beach Access Software > Sent: Thursday, March 02, 2006 10:17 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Normalize Data by date > > Chester: > > Sorry for the late reply. What exactly do you mean by "normalize back > to the first volume date"? Can you give an example? > > Regards, > > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > > Kaup, Chester wrote: > >> I have a table with 4 columns of data. The fields are Well_Number, >> Production_Date, Water_Volume and CO2_Volume. I need to normalize >> > these > >> back to the first volume date separately for Water_Volume and >> CO2_Volume. ie sum the first volumes data together regardless of date >> and through the rest of the records. Hope I am making sense. I am at a >> loss of where to start. Thanks. >> >> >> >> Chester Kaup >> >> Engineering Technician >> >> Kinder Morgan CO2 Company, LLP >> >> Office (432) 688-3797 >> >> FAX (432) 688-3799 >> >> >> >> >> >> No trees were killed in the sending of this message. However a large >> number of electrons were terribly inconvenienced. >> >> >> >> >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From developer at ultradnt.com Thu Mar 2 11:11:03 2006 From: developer at ultradnt.com (Steve Conklin) Date: Thu, 2 Mar 2006 12:11:03 -0500 Subject: [AccessD] OT - Action Pack In-Reply-To: <20060302143514.CCZX1358.omta03sl.mx.bigpond.com@DENZILLAP> Message-ID: <200603021710.k22HAxj49344@ultradnt.com> I have picked up a new client, mostly for server work, and when I asked him if his Windows XP and Server 2003 were properly licensed, he showed me an Action Pack. This is a real estate office, but apparently because the word "consulting" is in the company name, it was able to be registered to whatever level necessary to get an Action Pack. The question is, is there any long term risk associated with this? Are these things re-newable an unlimited number of times? Will MS ever ask to see a list of how many clients you have influenced to buy their products through your Ac.Pack? Or did this company find a loophole you could drive a truck through? I know there are a few Action Packers out there; I am an MSDN-U myself, so I don't any details about this thing. Thanks for any insight, Steve From Chester_Kaup at kindermorgan.com Thu Mar 2 11:11:08 2006 From: Chester_Kaup at kindermorgan.com (Kaup, Chester) Date: Thu, 2 Mar 2006 11:11:08 -0600 Subject: [AccessD] Normalize Data by date Message-ID: All of the wells may have a different number of data points. For example if well 1 has been on for 1 year it will have 12 data points. If well 2 has been on for 6 months it will have 6 data points. However many wells have data at a certain number of data points from the first data point get added together. Thus if 6 wells has data at the first point they are summed. If there are three wells that have data at the second point those three are added together. If only 2 wells have data at the last point only there data is summed. Thanks. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 02, 2006 11:03 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Normalize Data by date Do each of the wells have the same number of dates? If not, what do you do when you get to the third date for well 1 and well2 doesn't have a third date? Rocky Kaup, Chester wrote: > Example data > Well_Number Production_Date Water_Volume > CO2_Volume > 1 1/1/2005 10 > 10 > 1 2/1/2005 20 > 15 > 1 3/1/2005 25 > 20 > 2 4/1/2005 50 > 35 > 2 5/1/2005 75 > 100 > 2 6/1/2005 44 > 87 > 3 10/1/2005 100 > 20 > 3 11/1/2005 200 > 40 > 4 2/1/2006 123 > 57 > 4 3/1/2006 44 > 23 > > To normalize the data what I need to do is sum the Water_Volumes and > CO2_Volumes for the first date for each well, second date etc. Thus for > dimensionless date 1 well 1 on 1/1/2005 is added to well 2 on 4/1/2005 > is added to well 3 on 10/1/2005 and is added to well 4 on 2/1/2006. For > Water_Volume on first date 10+50+100+123. For CO2_Volume on first date > 10+35+20+57. The again for the second date for sum wells etc. Hope this > makes sense. Thanks. > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin > - Beach Access Software > Sent: Thursday, March 02, 2006 10:17 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Normalize Data by date > > Chester: > > Sorry for the late reply. What exactly do you mean by "normalize back > to the first volume date"? Can you give an example? > > Regards, > > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > > Kaup, Chester wrote: > >> I have a table with 4 columns of data. The fields are Well_Number, >> Production_Date, Water_Volume and CO2_Volume. I need to normalize >> > these > >> back to the first volume date separately for Water_Volume and >> CO2_Volume. ie sum the first volumes data together regardless of date >> and through the rest of the records. Hope I am making sense. I am at a >> loss of where to start. Thanks. >> >> >> >> Chester Kaup >> >> Engineering Technician >> >> Kinder Morgan CO2 Company, LLP >> >> Office (432) 688-3797 >> >> FAX (432) 688-3799 >> >> >> >> >> >> No trees were killed in the sending of this message. However a large >> number of electrons were terribly inconvenienced. >> >> >> >> >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From garykjos at gmail.com Thu Mar 2 11:38:16 2006 From: garykjos at gmail.com (Gary Kjos) Date: Thu, 2 Mar 2006 11:38:16 -0600 Subject: [AccessD] OT - Action Pack In-Reply-To: <200603021710.k22HAxj49344@ultradnt.com> References: <20060302143514.CCZX1358.omta03sl.mx.bigpond.com@DENZILLAP> <200603021710.k22HAxj49344@ultradnt.com> Message-ID: https://partner.microsoft.com/40009735 has all the info. here's a quote from the FAQ --------------------------------------- Who can subscribe to the Microsoft Action Pack? The Microsoft Action Pack Subscription is available exclusively to consultants, value-added resellers, value-added providers, system integrators, developers, system builders, hosts, and service providers who are enrolled as Registered Members in the Microsoft Partner Program and who distribute or influence the acquisition of Microsoft software and Microsoft-based solutions by end customers. ---------------------------------- that describes a pretty broad group. "influence the aquisition of Microsoft software and Microsoft-bases solutions by end customers" can include a whole lot of people and businesses. I think Microsoft is glad to have them paying something every year. GK On 3/2/06, Steve Conklin wrote: > I have picked up a new client, mostly for server work, and when I asked him > if his Windows XP and Server 2003 were properly licensed, he showed me an > Action Pack. This is a real estate office, but apparently because the word > "consulting" is in the company name, it was able to be registered to > whatever level necessary to get an Action Pack. > > The question is, is there any long term risk associated with this? Are > these things re-newable an unlimited number of times? Will MS ever ask to > see a list of how many clients you have influenced to buy their products > through your Ac.Pack? Or did this company find a loophole you could drive a > truck through? > > I know there are a few Action Packers out there; I am an MSDN-U myself, so I > don't any details about this thing. > > Thanks for any insight, > Steve > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Gary Kjos garykjos at gmail.com From garykjos at gmail.com Thu Mar 2 11:42:33 2006 From: garykjos at gmail.com (Gary Kjos) Date: Thu, 2 Mar 2006 11:42:33 -0600 Subject: [AccessD] Changing form Name In-Reply-To: References: Message-ID: I think that would be "Perform Name AutoCorrect" at work. Tools/Options/General - Right side check boxes. I usually find it to be trouble and try to remember to turn it OFF. ;-) GK On 3/2/06, Mark A Matte wrote: > Hello All, > > I just saw an 'odd'...well more unexpected occurence in A2K. I changed the > name of a form...and then went to the queries that used controls on this > form as criteria to change them as well...all of my criteria had already > been changed...but not changed where I was using the same control in an > 'update to' of an update query. I guess this is a feature I've just > overlooked until now? > > Not sure what my question is...just a curious topic for me if anyone has any > thoughts or insight into how extensive this is in A2K. > > Thanks, > > Mark A. Matte > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Gary Kjos garykjos at gmail.com From bchacc at san.rr.com Thu Mar 2 11:45:21 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 02 Mar 2006 09:45:21 -0800 Subject: [AccessD] Normalize Data by date In-Reply-To: References: Message-ID: <44072F31.9060507@san.rr.com> Chester: Now that I see what's what I think this is best done in code in a big loop. I'd set up an array to hold the sums. Set the number of rows in the array to the maximum number of data points any well has and the number of columns to 2 - the first column holding the sum of the water volume, the second holding the sum of the CO2. Open up a DAO recordset for each well in turn. Initialize a counter to 1. Put the first data points into the first cell. Add one to the counter and using .MoveNext until .EOF add the data in each record to the appropriate cells pointed to by the counter. If this ain't perfect at least it might give you an idea of an approach. HTH Rocky Kaup, Chester wrote: > All of the wells may have a different number of data points. For example > if well 1 has been on for 1 year it will have 12 data points. If well 2 > has been on for 6 months it will have 6 data points. However many wells > have data at a certain number of data points from the first data point > get added together. Thus if 6 wells has data at the first point they are > summed. If there are three wells that have data at the second point > those three are added together. If only 2 wells have data at the last > point only there data is summed. Thanks. > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin > - Beach Access Software > Sent: Thursday, March 02, 2006 11:03 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Normalize Data by date > > Do each of the wells have the same number of dates? If not, what do you > > do when you get to the third date for well 1 and well2 doesn't have a > third date? > > Rocky > > > Kaup, Chester wrote: > >> Example data >> Well_Number Production_Date Water_Volume >> CO2_Volume >> 1 1/1/2005 10 >> 10 >> 1 2/1/2005 20 >> 15 >> 1 3/1/2005 25 >> 20 >> 2 4/1/2005 50 >> 35 >> 2 5/1/2005 75 >> 100 >> 2 6/1/2005 44 >> 87 >> 3 10/1/2005 100 >> 20 >> 3 11/1/2005 200 >> 40 >> 4 2/1/2006 123 >> 57 >> 4 3/1/2006 44 >> 23 >> >> To normalize the data what I need to do is sum the Water_Volumes and >> CO2_Volumes for the first date for each well, second date etc. Thus >> > for > >> dimensionless date 1 well 1 on 1/1/2005 is added to well 2 on 4/1/2005 >> is added to well 3 on 10/1/2005 and is added to well 4 on 2/1/2006. >> > For > >> Water_Volume on first date 10+50+100+123. For CO2_Volume on first date >> 10+35+20+57. The again for the second date for sum wells etc. Hope >> > this > >> makes sense. Thanks. >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky >> > Smolin > >> - Beach Access Software >> Sent: Thursday, March 02, 2006 10:17 AM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Normalize Data by date >> >> Chester: >> >> Sorry for the late reply. What exactly do you mean by "normalize back >> > > >> to the first volume date"? Can you give an example? >> >> Regards, >> >> Rocky Smolin >> Beach Access Software >> 858-259-4334 >> www.e-z-mrp.com >> >> >> Kaup, Chester wrote: >> >> >>> I have a table with 4 columns of data. The fields are Well_Number, >>> Production_Date, Water_Volume and CO2_Volume. I need to normalize >>> >>> >> these >> >> >>> back to the first volume date separately for Water_Volume and >>> CO2_Volume. ie sum the first volumes data together regardless of date >>> and through the rest of the records. Hope I am making sense. I am at >>> > a > >>> loss of where to start. Thanks. >>> >>> >>> >>> Chester Kaup >>> >>> Engineering Technician >>> >>> Kinder Morgan CO2 Company, LLP >>> >>> Office (432) 688-3797 >>> >>> FAX (432) 688-3799 >>> >>> >>> >>> >>> >>> No trees were killed in the sending of this message. However a large >>> number of electrons were terribly inconvenienced. >>> >>> >>> >>> >>> >>> >> >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From developer at ultradnt.com Thu Mar 2 12:19:53 2006 From: developer at ultradnt.com (Steve Conklin) Date: Thu, 2 Mar 2006 13:19:53 -0500 Subject: [AccessD] OT - Action Pack In-Reply-To: Message-ID: <200603021819.k22IJmj57655@ultradnt.com> Thanks for the link. But there's no way this real estate office does any influencing over anything computer related. There's no stretching the definition of their business to fit any of that, so that's why I wanted to know if there is any risk of them losing theses licenses. Seems to me that they have found a loophole that any business with <= 10 PC's and 1 Server can exploit. Steve -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gary Kjos Sent: Thursday, March 02, 2006 12:38 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT - Action Pack https://partner.microsoft.com/40009735 has all the info. here's a quote from the FAQ --------------------------------------- Who can subscribe to the Microsoft Action Pack? The Microsoft Action Pack Subscription is available exclusively to consultants, value-added resellers, value-added providers, system integrators, developers, system builders, hosts, and service providers who are enrolled as Registered Members in the Microsoft Partner Program and who distribute or influence the acquisition of Microsoft software and Microsoft-based solutions by end customers. ---------------------------------- that describes a pretty broad group. "influence the aquisition of Microsoft software and Microsoft-bases solutions by end customers" can include a whole lot of people and businesses. I think Microsoft is glad to have them paying something every year. GK On 3/2/06, Steve Conklin wrote: > I have picked up a new client, mostly for server work, and when I > asked him if his Windows XP and Server 2003 were properly licensed, he > showed me an Action Pack. This is a real estate office, but > apparently because the word "consulting" is in the company name, it > was able to be registered to whatever level necessary to get an Action Pack. > > The question is, is there any long term risk associated with this? > Are these things re-newable an unlimited number of times? Will MS > ever ask to see a list of how many clients you have influenced to buy > their products through your Ac.Pack? Or did this company find a > loophole you could drive a truck through? > > I know there are a few Action Packers out there; I am an MSDN-U > myself, so I don't any details about this thing. > > Thanks for any insight, > Steve > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Gary Kjos garykjos at gmail.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From andy at minstersystems.co.uk Thu Mar 2 12:22:26 2006 From: andy at minstersystems.co.uk (Andy Lacey) Date: Thu, 2 Mar 2006 18:22:26 -0000 Subject: [AccessD] OT: farewell In-Reply-To: <20060302162206.67735.qmail@web50114.mail.yahoo.com> Message-ID: <001401c63e26$4266cab0$9af00651@minster33c3r25> As I'm not on OT I'll say goodbye now Roz, and good luck with the writing. When you're published please let the list know somehow cos I'd love to read it. I'll even BUY it for heaven's sake. And many thanks for your sage words on the moderator's list. You will be sorely missed. -- Andy Lacey http://www.minstersystems.co.uk > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Roz Clarke > Sent: 02 March 2006 16:22 > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] OT: farewell > > > LOL > > If I had a pound for every time someone's suggested that I'd > be almost as rich as JK Rowling... well, OK, NOWHERE NEAR as > rich as JK Rowling, but it would be enough to get a round of > drinks in for all of AccessD. > > I am coming to OT, so this is only an arrivederci thread now. :) > > We'll see how long I last this time. > > --- Lembit Soobik wrote: > > > Roz, > > I wish you a lot success with your writing (how about a > Harry Potter > > type > > book :-)) > > > > why not log into OT at least to say hello. you will sure be welcome. > > > > Lembit > > > > ----- Original Message ----- > > From: "Roz Clarke" > > To: "Access Developers discussion and problem solving" > > > > Sent: Thursday, March 02, 2006 4:53 PM > > Subject: [AccessD] OT: farewell > > > > > > > Hi guys. > > > > > > Sorry to bust up your Thursday with an OT goodbye thread, but the > > > moment > > > is upon me. > > > > > > Those who ever noticed me at all, may have noticed that I haven't > > > posted > > > to Accessd in the last 6 > > > months. I am no longer working in IT, having given up my > job and taken up > > > a Masters in Creative > > > Writing. Whilst I may have the occasional web project to > work on, I have > > > no plans to return to > > > development career-wise. The fact is, I only really > stayed subscribed for > > > the comfort of seeing > > > all your familiar names in my inbox every day. > > > > > > So I am leaving the list and standing down as a moderator. > > > > > > It's been a good ten years. Not only do I owe a great deal to the > > > list, > > > which taught me everything > > > I know about database development and a lot more besides, > but I've had > > > tears and laughter along > > > the way and a fantastic trip to Germany into the bargain. > > > > > > Thank you all for being invaluable 'virtual colleagues', > but above > > > all for > > > being friends. > > > > > > Love and hugs > > > > > > Roz > > > > > > PS what's the OT list like these days? ;) > > > > > > > > > > > > ___________________________________________________________ > > > NEW Yahoo! Cars - sell your car and browse thousands of > new and used > > > cars > > > online! http://uk.cars.yahoo.com/ > > > -- > > > AccessD mailing list > > > AccessD at databaseadvisors.com > > > http://databaseadvisors.com/mailman/listinfo/accessd > > > Website: http://www.databaseadvisors.com > > > > > > > > > -- > > > No virus found in this incoming message. > > > Checked by AVG Free Edition. > > > Version: 7.1.375 / Virus Database: 268.1.1/272 - Release > Date: 01.03.2006 > > > > > > > > > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > > > > > > ___________________________________________________________ > To help you stay safe and secure online, we've developed the > all new Yahoo! Security Centre. http://uk.security.yahoo.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > From bchacc at san.rr.com Thu Mar 2 12:31:49 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 02 Mar 2006 10:31:49 -0800 Subject: [AccessD] Table naming conventions In-Reply-To: References: Message-ID: <44073A15.4080206@san.rr.com> On a related note, does everyone use/not use Me. when referring to a control in code? Any advantage other than the auto-fill to using Me.? TIA Rocky Charlotte Foust wrote: > You use suffixes for ease of navigation. I prefer prefixes for grouping > by types of objects. Different strokes. > > Charlotte > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, > Lambert > Sent: Thursday, March 02, 2006 6:16 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Table naming conventions > > > Not read all this, but one point I want to make is "why are people > obsessed with PREFIXES?" > > I use the "_tbl" SUFFIX in my table names. Why? So that when I sort the > list of tables I can use the initial letter of the table name to quickly > jump to it using the keyboard. If they all begin with "tbl" you cannot > do that. Simple. :-) > > Lambert > > From zora_db at yahoo.com Thu Mar 2 12:35:49 2006 From: zora_db at yahoo.com (Roz Clarke) Date: Thu, 2 Mar 2006 18:35:49 +0000 (GMT) Subject: [AccessD] OT: farewell In-Reply-To: <001401c63e26$4266cab0$9af00651@minster33c3r25> Message-ID: <20060302183549.37301.qmail@web50108.mail.yahoo.com> 'When' I'm published! Thank you for the vote of confidence, Andy. I'm sure that 'when' the novel is published I'll be shouting it from the rooftops - don't worry, you'll hear me! I tried to let you know on the moderators list but I don't seem to be able to post to it at the moment - so sorry for not giving you a seperate heads-up. You are more than sage enough to manage the moderating job without me - all of you mods are - and I will miss you, too. Take care (of the list and yourself) Roz --- Andy Lacey wrote: > As I'm not on OT I'll say goodbye now Roz, and good luck with the writing. > When you're published please let the list know somehow cos I'd love to read > it. I'll even BUY it for heaven's sake. > > And many thanks for your sage words on the moderator's list. You will be > sorely missed. > > -- > Andy Lacey > http://www.minstersystems.co.uk > > > > -----Original Message----- > > From: accessd-bounces at databaseadvisors.com > > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Roz Clarke > > Sent: 02 March 2006 16:22 > > To: Access Developers discussion and problem solving > > Subject: Re: [AccessD] OT: farewell > > > > > > LOL > > > > If I had a pound for every time someone's suggested that I'd > > be almost as rich as JK Rowling... well, OK, NOWHERE NEAR as > > rich as JK Rowling, but it would be enough to get a round of > > drinks in for all of AccessD. > > > > I am coming to OT, so this is only an arrivederci thread now. :) > > > > We'll see how long I last this time. > > > > --- Lembit Soobik wrote: > > > > > Roz, > > > I wish you a lot success with your writing (how about a > > Harry Potter > > > type > > > book :-)) > > > > > > why not log into OT at least to say hello. you will sure be welcome. > > > > > > Lembit > > > > > > ----- Original Message ----- > > > From: "Roz Clarke" > > > To: "Access Developers discussion and problem solving" > > > > > > Sent: Thursday, March 02, 2006 4:53 PM > > > Subject: [AccessD] OT: farewell > > > > > > > > > > Hi guys. > > > > > > > > Sorry to bust up your Thursday with an OT goodbye thread, but the > > > > moment > > > > is upon me. > > > > > > > > Those who ever noticed me at all, may have noticed that I haven't > > > > posted > > > > to Accessd in the last 6 > > > > months. I am no longer working in IT, having given up my > > job and taken up > > > > a Masters in Creative > > > > Writing. Whilst I may have the occasional web project to > > work on, I have > > > > no plans to return to > > > > development career-wise. The fact is, I only really > > stayed subscribed for > > > > the comfort of seeing > > > > all your familiar names in my inbox every day. > > > > > > > > So I am leaving the list and standing down as a moderator. > > > > > > > > It's been a good ten years. Not only do I owe a great deal to the > > > > list, > > > > which taught me everything > > > > I know about database development and a lot more besides, > > but I've had > > > > tears and laughter along > > > > the way and a fantastic trip to Germany into the bargain. > > > > > > > > Thank you all for being invaluable 'virtual colleagues', > > but above > > > > all for > > > > being friends. > > > > > > > > Love and hugs > > > > > > > > Roz > > > > > > > > PS what's the OT list like these days? ;) > > > > > > > > > > > > > > > > ___________________________________________________________ > > > > NEW Yahoo! Cars - sell your car and browse thousands of > > new and used > > > > cars > > > > online! http://uk.cars.yahoo.com/ > > > > -- > > > > AccessD mailing list > > > > AccessD at databaseadvisors.com > > > > http://databaseadvisors.com/mailman/listinfo/accessd > > > > Website: http://www.databaseadvisors.com > > > > > > > > > > > > -- > > > > No virus found in this incoming message. > > > > Checked by AVG Free Edition. > > > > Version: 7.1.375 / Virus Database: 268.1.1/272 - Release > > Date: 01.03.2006 > > > > > > > > > > > > > > -- > > > AccessD mailing list > > > AccessD at databaseadvisors.com > > > http://databaseadvisors.com/mailman/listinfo/accessd > > > Website: http://www.databaseadvisors.com > > > > > > > > > > > > > ___________________________________________________________ > > To help you stay safe and secure online, we've developed the > > all new Yahoo! Security Centre. http://uk.security.yahoo.com > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > ___________________________________________________________ Win a BlackBerry device from O2 with Yahoo!. Enter now. http://www.yahoo.co.uk/blackberry From cfoust at infostatsystems.com Thu Mar 2 12:44:10 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 2 Mar 2006 10:44:10 -0800 Subject: [AccessD] OT - Action Pack Message-ID: Well, if MS ever decides to close that loophole, the EULA requires that they uninstall the software and any of its supporting files from all their machines. I've heard of people cheating like this, it's like those who buy the Academic edition even though it isn't licensed for commercial use. If we aren't honest about our licenses, how can our clients/customers/employees trust us? Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Conklin Sent: Thursday, March 02, 2006 10:20 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT - Action Pack Thanks for the link. But there's no way this real estate office does any influencing over anything computer related. There's no stretching the definition of their business to fit any of that, so that's why I wanted to know if there is any risk of them losing theses licenses. Seems to me that they have found a loophole that any business with <= 10 PC's and 1 Server can exploit. Steve -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gary Kjos Sent: Thursday, March 02, 2006 12:38 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT - Action Pack https://partner.microsoft.com/40009735 has all the info. here's a quote from the FAQ --------------------------------------- Who can subscribe to the Microsoft Action Pack? The Microsoft Action Pack Subscription is available exclusively to consultants, value-added resellers, value-added providers, system integrators, developers, system builders, hosts, and service providers who are enrolled as Registered Members in the Microsoft Partner Program and who distribute or influence the acquisition of Microsoft software and Microsoft-based solutions by end customers. ---------------------------------- that describes a pretty broad group. "influence the aquisition of Microsoft software and Microsoft-bases solutions by end customers" can include a whole lot of people and businesses. I think Microsoft is glad to have them paying something every year. GK On 3/2/06, Steve Conklin wrote: > I have picked up a new client, mostly for server work, and when I > asked him if his Windows XP and Server 2003 were properly licensed, he > showed me an Action Pack. This is a real estate office, but > apparently because the word "consulting" is in the company name, it > was able to be registered to whatever level necessary to get an Action Pack. > > The question is, is there any long term risk associated with this? > Are these things re-newable an unlimited number of times? Will MS > ever ask to see a list of how many clients you have influenced to buy > their products through your Ac.Pack? Or did this company find a > loophole you could drive a truck through? > > I know there are a few Action Packers out there; I am an MSDN-U > myself, so I don't any details about this thing. > > Thanks for any insight, > Steve > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Gary Kjos garykjos at gmail.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Thu Mar 2 12:46:32 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 2 Mar 2006 10:46:32 -0800 Subject: [AccessD] Table naming conventions Message-ID: The big advantage to it is that the Access engine knows immediately that you are referring to something that belongs to the object rather than having to check to see if it is a variable. Misspellings bite, and not using Me doesn't tell the engine that it needs to check the spelling. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 02, 2006 10:32 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions On a related note, does everyone use/not use Me. when referring to a control in code? Any advantage other than the auto-fill to using Me.? TIA Rocky Charlotte Foust wrote: > You use suffixes for ease of navigation. I prefer prefixes for > grouping by types of objects. Different strokes. > > Charlotte > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, > Lambert > Sent: Thursday, March 02, 2006 6:16 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Table naming conventions > > > Not read all this, but one point I want to make is "why are people > obsessed with PREFIXES?" > > I use the "_tbl" SUFFIX in my table names. Why? So that when I sort > the list of tables I can use the initial letter of the table name to > quickly jump to it using the keyboard. If they all begin with "tbl" > you cannot do that. Simple. :-) > > Lambert > > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From harkinsss at bellsouth.net Thu Mar 2 13:04:50 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Thu, 2 Mar 2006 14:04:50 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: <1D7828CDB8350747AFE9D69E0E90DA1F1DDB2286@xlivmbx21.aig.com> Message-ID: <000301c63e2c$2f5d88e0$b6b3d6d1@SUSANONE> I agree and it's a bit of a nuisance with forms and reports -- trying to sort them in a list for users -- big pain if they're prefixed with frm or rpt. Susan H. All I'm really saying is that the Access user interface allows you to select an object in the database window by typing the initial letter. Type 'D' and the interface will jump to the first object in the list that starts with a D. Type D again to jump to the next one. That's why I use suffixes instead of prefixes. If you have a common prefix for your objects, you lose this handy navigation feature. From DWUTKA at marlow.com Thu Mar 2 12:59:35 2006 From: DWUTKA at marlow.com (DWUTKA at marlow.com) Date: Thu, 2 Mar 2006 12:59:35 -0600 Subject: [AccessD] OT: farewell Message-ID: <17724746D360394AA3BFE5B8D40A9C1BD832@main2.marlow.com> Why don't you subscribe to OT, so you can keep in touch! ;) We'll miss ya Roz! Drew -----Original Message----- From: Roz Clarke [mailto:zora_db at yahoo.com] Sent: Thursday, March 02, 2006 9:53 AM To: Access Developers discussion and problem solving Subject: [AccessD] OT: farewell Hi guys. Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 months. I am no longer working in IT, having given up my job and taken up a Masters in Creative Writing. Whilst I may have the occasional web project to work on, I have no plans to return to development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing all your familiar names in my inbox every day. So I am leaving the list and standing down as a moderator. It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything I know about database development and a lot more besides, but I've had tears and laughter along the way and a fantastic trip to Germany into the bargain. Thank you all for being invaluable 'virtual colleagues', but above all for being friends. Love and hugs Roz PS what's the OT list like these days? ;) ___________________________________________________________ NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From DWUTKA at marlow.com Thu Mar 2 13:00:15 2006 From: DWUTKA at marlow.com (DWUTKA at marlow.com) Date: Thu, 2 Mar 2006 13:00:15 -0600 Subject: [AccessD] OT: farewell Message-ID: <17724746D360394AA3BFE5B8D40A9C1BD833@main2.marlow.com> Yes, and Alan could critique her creative writing..... ;) Drew -----Original Message----- From: Gary Kjos [mailto:garykjos at gmail.com] Sent: Thursday, March 02, 2006 10:04 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT: farewell Good Luck Roz. We would certainly love to have you join the OT list. It's a nice chatty place. Well usually nice. Chatty nonetheless. ;-) On 3/2/06, Roz Clarke wrote: > Hi guys. > > Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. > > Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 > months. I am no longer working in IT, having given up my job and taken up a Masters in Creative > Writing. Whilst I may have the occasional web project to work on, I have no plans to return to > development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing > all your familiar names in my inbox every day. > > So I am leaving the list and standing down as a moderator. > > It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything > I know about database development and a lot more besides, but I've had tears and laughter along > the way and a fantastic trip to Germany into the bargain. > > Thank you all for being invaluable 'virtual colleagues', but above all for being friends. > > Love and hugs > > Roz > > PS what's the OT list like these days? ;) > > > > ___________________________________________________________ > NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Gary Kjos garykjos at gmail.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From developer at ultradnt.com Thu Mar 2 13:08:03 2006 From: developer at ultradnt.com (Steve Conklin) Date: Thu, 2 Mar 2006 14:08:03 -0500 Subject: [AccessD] OT - Action Pack In-Reply-To: Message-ID: <200603021907.k22J7wj63845@ultradnt.com> Charlotte, I agree 100%. Their previous consultant sent them on this path. When I asked for their W2k3 CD, that's when I saw Action Pack. I kept quiet (temporarily); I wanted to post here first to try to begin to assess their risk. Steve -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Thursday, March 02, 2006 1:44 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT - Action Pack Well, if MS ever decides to close that loophole, the EULA requires that they uninstall the software and any of its supporting files from all their machines. I've heard of people cheating like this, it's like those who buy the Academic edition even though it isn't licensed for commercial use. If we aren't honest about our licenses, how can our clients/customers/employees trust us? Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Conklin Sent: Thursday, March 02, 2006 10:20 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT - Action Pack Thanks for the link. But there's no way this real estate office does any influencing over anything computer related. There's no stretching the definition of their business to fit any of that, so that's why I wanted to know if there is any risk of them losing theses licenses. Seems to me that they have found a loophole that any business with <= 10 PC's and 1 Server can exploit. Steve -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gary Kjos Sent: Thursday, March 02, 2006 12:38 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT - Action Pack https://partner.microsoft.com/40009735 has all the info. here's a quote from the FAQ --------------------------------------- Who can subscribe to the Microsoft Action Pack? The Microsoft Action Pack Subscription is available exclusively to consultants, value-added resellers, value-added providers, system integrators, developers, system builders, hosts, and service providers who are enrolled as Registered Members in the Microsoft Partner Program and who distribute or influence the acquisition of Microsoft software and Microsoft-based solutions by end customers. ---------------------------------- that describes a pretty broad group. "influence the aquisition of Microsoft software and Microsoft-bases solutions by end customers" can include a whole lot of people and businesses. I think Microsoft is glad to have them paying something every year. GK On 3/2/06, Steve Conklin wrote: > I have picked up a new client, mostly for server work, and when I > asked him if his Windows XP and Server 2003 were properly licensed, he > showed me an Action Pack. This is a real estate office, but > apparently because the word "consulting" is in the company name, it > was able to be registered to whatever level necessary to get an Action Pack. > > The question is, is there any long term risk associated with this? > Are these things re-newable an unlimited number of times? Will MS > ever ask to see a list of how many clients you have influenced to buy > their products through your Ac.Pack? Or did this company find a > loophole you could drive a truck through? > > I know there are a few Action Packers out there; I am an MSDN-U > myself, so I don't any details about this thing. > > Thanks for any insight, > Steve > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Gary Kjos garykjos at gmail.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From starkey at wanadoo.nl Thu Mar 2 13:13:34 2006 From: starkey at wanadoo.nl (StaRKeY) Date: Thu, 2 Mar 2006 20:13:34 +0100 Subject: [AccessD] OT: farewell In-Reply-To: <20060302183549.37301.qmail@web50108.mail.yahoo.com> Message-ID: <001301c63e2d$6711d470$0400a8c0@PC1> Roz, all the best wishes in writing!! Eric Starkenburg Netherlands -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Roz Clarke Sent: Thursday, March 02, 2006 7:36 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT: farewell 'When' I'm published! Thank you for the vote of confidence, Andy. I'm sure that 'when' the novel is published I'll be shouting it from the rooftops - don't worry, you'll hear me! I tried to let you know on the moderators list but I don't seem to be able to post to it at the moment - so sorry for not giving you a seperate heads-up. You are more than sage enough to manage the moderating job without me - all of you mods are - and I will miss you, too. Take care (of the list and yourself) Roz --- Andy Lacey wrote: > As I'm not on OT I'll say goodbye now Roz, and good luck with the writing. > When you're published please let the list know somehow cos I'd love to read > it. I'll even BUY it for heaven's sake. > > And many thanks for your sage words on the moderator's list. You will be > sorely missed. > > -- > Andy Lacey > http://www.minstersystems.co.uk > > > > -----Original Message----- > > From: accessd-bounces at databaseadvisors.com > > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Roz Clarke > > Sent: 02 March 2006 16:22 > > To: Access Developers discussion and problem solving > > Subject: Re: [AccessD] OT: farewell > > > > > > LOL > > > > If I had a pound for every time someone's suggested that I'd > > be almost as rich as JK Rowling... well, OK, NOWHERE NEAR as > > rich as JK Rowling, but it would be enough to get a round of > > drinks in for all of AccessD. > > > > I am coming to OT, so this is only an arrivederci thread now. :) > > > > We'll see how long I last this time. > > > > --- Lembit Soobik wrote: > > > > > Roz, > > > I wish you a lot success with your writing (how about a > > Harry Potter > > > type > > > book :-)) > > > > > > why not log into OT at least to say hello. you will sure be welcome. > > > > > > Lembit > > > > > > ----- Original Message ----- > > > From: "Roz Clarke" > > > To: "Access Developers discussion and problem solving" > > > > > > Sent: Thursday, March 02, 2006 4:53 PM > > > Subject: [AccessD] OT: farewell > > > > > > > > > > Hi guys. > > > > > > > > Sorry to bust up your Thursday with an OT goodbye thread, but the > > > > moment > > > > is upon me. > > > > > > > > Those who ever noticed me at all, may have noticed that I haven't > > > > posted > > > > to Accessd in the last 6 > > > > months. I am no longer working in IT, having given up my > > job and taken up > > > > a Masters in Creative > > > > Writing. Whilst I may have the occasional web project to > > work on, I have > > > > no plans to return to > > > > development career-wise. The fact is, I only really > > stayed subscribed for > > > > the comfort of seeing > > > > all your familiar names in my inbox every day. > > > > > > > > So I am leaving the list and standing down as a moderator. > > > > > > > > It's been a good ten years. Not only do I owe a great deal to the > > > > list, > > > > which taught me everything > > > > I know about database development and a lot more besides, > > but I've had > > > > tears and laughter along > > > > the way and a fantastic trip to Germany into the bargain. > > > > > > > > Thank you all for being invaluable 'virtual colleagues', > > but above > > > > all for > > > > being friends. > > > > > > > > Love and hugs > > > > > > > > Roz > > > > > > > > PS what's the OT list like these days? ;) > > > > > > > > > > > > > > > > ___________________________________________________________ > > > > NEW Yahoo! Cars - sell your car and browse thousands of > > new and used > > > > cars > > > > online! http://uk.cars.yahoo.com/ > > > > -- > > > > AccessD mailing list > > > > AccessD at databaseadvisors.com > > > > http://databaseadvisors.com/mailman/listinfo/accessd > > > > Website: http://www.databaseadvisors.com > > > > > > > > > > > > -- > > > > No virus found in this incoming message. > > > > Checked by AVG Free Edition. > > > > Version: 7.1.375 / Virus Database: 268.1.1/272 - Release > > Date: 01.03.2006 > > > > > > > > > > > > > > -- > > > AccessD mailing list > > > AccessD at databaseadvisors.com > > > http://databaseadvisors.com/mailman/listinfo/accessd > > > Website: http://www.databaseadvisors.com > > > > > > > > > > > > > ___________________________________________________________ > > To help you stay safe and secure online, we've developed the > > all new Yahoo! Security Centre. http://uk.security.yahoo.com > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > ___________________________________________________________ Win a BlackBerry device from O2 with Yahoo!. Enter now. http://www.yahoo.co.uk/blackberry -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com --- avast! Antivirus: Uitgaande bericht is niet besmet. Virus Gegevensbestand (VPS): 0609-2, 02-03-2006 Getest op: 02-03-2006 20:13:35 uur avast! auteursrecht (c) 1988-2005 ALWIL Software. http://www.avast.com From wdhindman at bellsouth.net Thu Mar 2 13:41:11 2006 From: wdhindman at bellsouth.net (William Hindman) Date: Thu, 2 Mar 2006 14:41:11 -0500 Subject: [AccessD] OT - Action Pack References: <200603021907.k22J7wj63845@ultradnt.com> Message-ID: <003101c63e31$439c1560$6101a8c0@50NM721> ...is the Action Pak subscription actually in their name or the former consultant's? William ----- Original Message ----- From: "Steve Conklin" To: "'Access Developers discussion and problem solving'" Sent: Thursday, March 02, 2006 2:08 PM Subject: Re: [AccessD] OT - Action Pack > Charlotte, I agree 100%. Their previous consultant sent them on this > path. > When I asked for their W2k3 CD, that's when I saw Action Pack. I kept > quiet > (temporarily); I wanted to post here first to try to begin to assess their > risk. > > Steve > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust > Sent: Thursday, March 02, 2006 1:44 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] OT - Action Pack > > Well, if MS ever decides to close that loophole, the EULA requires that > they > uninstall the software and any of its supporting files from all their > machines. I've heard of people cheating like this, it's like those who > buy > the Academic edition even though it isn't licensed for commercial use. If > we aren't honest about our licenses, how can our > clients/customers/employees > trust us? > > Charlotte Foust > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Conklin > Sent: Thursday, March 02, 2006 10:20 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] OT - Action Pack > > > Thanks for the link. But there's no way this real estate office does any > influencing over anything computer related. There's no stretching the > definition of their business to fit any of that, so that's why I wanted to > know if there is any risk of them losing theses licenses. > Seems to me that they have found a loophole that any business with <= 10 > PC's and 1 Server can exploit. > > > Steve > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gary Kjos > Sent: Thursday, March 02, 2006 12:38 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] OT - Action Pack > > https://partner.microsoft.com/40009735 > > has all the info. > > here's a quote from the FAQ > --------------------------------------- > > Who can subscribe to the Microsoft Action Pack? > The Microsoft Action Pack Subscription is available exclusively to > consultants, value-added resellers, value-added providers, system > integrators, developers, system builders, hosts, and service providers who > are enrolled as Registered Members in the Microsoft Partner Program and > who > distribute or influence the acquisition of Microsoft software and > Microsoft-based solutions by end customers. > > ---------------------------------- > > that describes a pretty broad group. "influence the aquisition of > Microsoft > software and Microsoft-bases solutions by end customers" can include a > whole > lot of people and businesses. > > I think Microsoft is glad to have them paying something every year. > > GK > > > On 3/2/06, Steve Conklin wrote: >> I have picked up a new client, mostly for server work, and when I >> asked him if his Windows XP and Server 2003 were properly licensed, he > >> showed me an Action Pack. This is a real estate office, but >> apparently because the word "consulting" is in the company name, it >> was able to be registered to whatever level necessary to get an Action > Pack. >> >> The question is, is there any long term risk associated with this? >> Are these things re-newable an unlimited number of times? Will MS >> ever ask to see a list of how many clients you have influenced to buy >> their products through your Ac.Pack? Or did this company find a >> loophole you could drive a truck through? >> >> I know there are a few Action Packers out there; I am an MSDN-U >> myself, so I don't any details about this thing. >> >> Thanks for any insight, >> Steve >> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > > > -- > Gary Kjos > garykjos at gmail.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From developer at ultradnt.com Thu Mar 2 13:46:36 2006 From: developer at ultradnt.com (Steve Conklin) Date: Thu, 2 Mar 2006 14:46:36 -0500 Subject: [AccessD] OT - Action Pack In-Reply-To: <003101c63e31$439c1560$6101a8c0@50NM721> Message-ID: <200603021946.k22JkWj68683@ultradnt.com> It's in the client's corporate name, which includes the word "consulting" but not "real estate". Steve -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of William Hindman Sent: Thursday, March 02, 2006 2:41 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT - Action Pack ...is the Action Pak subscription actually in their name or the former consultant's? William ----- Original Message ----- From: "Steve Conklin" To: "'Access Developers discussion and problem solving'" Sent: Thursday, March 02, 2006 2:08 PM Subject: Re: [AccessD] OT - Action Pack > Charlotte, I agree 100%. Their previous consultant sent them on this > path. > When I asked for their W2k3 CD, that's when I saw Action Pack. I kept > quiet > (temporarily); I wanted to post here first to try to begin to assess their > risk. > > Steve > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust > Sent: Thursday, March 02, 2006 1:44 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] OT - Action Pack > > Well, if MS ever decides to close that loophole, the EULA requires that > they > uninstall the software and any of its supporting files from all their > machines. I've heard of people cheating like this, it's like those who > buy > the Academic edition even though it isn't licensed for commercial use. If > we aren't honest about our licenses, how can our > clients/customers/employees > trust us? > > Charlotte Foust > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Conklin > Sent: Thursday, March 02, 2006 10:20 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] OT - Action Pack > > > Thanks for the link. But there's no way this real estate office does any > influencing over anything computer related. There's no stretching the > definition of their business to fit any of that, so that's why I wanted to > know if there is any risk of them losing theses licenses. > Seems to me that they have found a loophole that any business with <= 10 > PC's and 1 Server can exploit. > > > Steve > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gary Kjos > Sent: Thursday, March 02, 2006 12:38 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] OT - Action Pack > > https://partner.microsoft.com/40009735 > > has all the info. > > here's a quote from the FAQ > --------------------------------------- > > Who can subscribe to the Microsoft Action Pack? > The Microsoft Action Pack Subscription is available exclusively to > consultants, value-added resellers, value-added providers, system > integrators, developers, system builders, hosts, and service providers who > are enrolled as Registered Members in the Microsoft Partner Program and > who > distribute or influence the acquisition of Microsoft software and > Microsoft-based solutions by end customers. > > ---------------------------------- > > that describes a pretty broad group. "influence the aquisition of > Microsoft > software and Microsoft-bases solutions by end customers" can include a > whole > lot of people and businesses. > > I think Microsoft is glad to have them paying something every year. > > GK > > > On 3/2/06, Steve Conklin wrote: >> I have picked up a new client, mostly for server work, and when I >> asked him if his Windows XP and Server 2003 were properly licensed, he > >> showed me an Action Pack. This is a real estate office, but >> apparently because the word "consulting" is in the company name, it >> was able to be registered to whatever level necessary to get an Action > Pack. >> >> The question is, is there any long term risk associated with this? >> Are these things re-newable an unlimited number of times? Will MS >> ever ask to see a list of how many clients you have influenced to buy >> their products through your Ac.Pack? Or did this company find a >> loophole you could drive a truck through? >> >> I know there are a few Action Packers out there; I am an MSDN-U >> myself, so I don't any details about this thing. >> >> Thanks for any insight, >> Steve >> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > > > -- > Gary Kjos > garykjos at gmail.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Thu Mar 2 12:55:18 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Thu, 2 Mar 2006 21:55:18 +0300 Subject: [AccessD] Table naming conventions References: <44073A15.4080206@san.rr.com> Message-ID: <00f101c63e32$fa4fd2a0$6401a8c0@Nant> <<< Any advantage other than the auto-fill to using Me.? >>> Rocky, If you move code out of form/report module then if Me. used it will be mechanical find and replace to change Me. to . Shamil ----- Original Message ----- From: "Rocky Smolin - Beach Access Software" To: "Access Developers discussion and problem solving" Sent: Thursday, March 02, 2006 9:31 PM Subject: Re: [AccessD] Table naming conventions > On a related note, does everyone use/not use Me. when referring to a > control in code? Any advantage other than the auto-fill to using Me.? > > TIA > > Rocky > > > Charlotte Foust wrote: >> You use suffixes for ease of navigation. I prefer prefixes for grouping >> by types of objects. Different strokes. >> >> Charlotte >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, >> Lambert >> Sent: Thursday, March 02, 2006 6:16 AM >> To: 'Access Developers discussion and problem solving' >> Subject: Re: [AccessD] Table naming conventions >> >> >> Not read all this, but one point I want to make is "why are people >> obsessed with PREFIXES?" >> >> I use the "_tbl" SUFFIX in my table names. Why? So that when I sort the >> list of tables I can use the initial letter of the table name to quickly >> jump to it using the keyboard. If they all begin with "tbl" you cannot >> do that. Simple. :-) >> >> Lambert >> >> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From shamil at users.mns.ru Thu Mar 2 13:53:26 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Thu, 2 Mar 2006 22:53:26 +0300 Subject: [AccessD] Table naming conventions References: Message-ID: <00f201c63e32$fa713d50$6401a8c0@Nant> <<< The underscore annoys me because it is harder to type than just a > capital letter, >>> I don't use underscore because they weren't used in LRNC. But typing it for me isn't a big trouble :) <<< I really think it boils down to whatever works for the developer, >>> Sure it is. I just accepted LRNC and I use it naturally for a long time. But to use other naming conventions if they are well systematically designed and applied (like JC's :)) wouldn't be a problem for me:) For example in VB.NET/C# I do not use Hungarian notation/LRNC as it's recommended by MS and I like it too - I'm flexible :) <<< It only becomes an issue in a team development environment, where > using the same or at least compatible naming conventions is critical. >>> Yes, in a team environment the systematic use of naming conventions is critical - the naming conventions approved by team leader :) - I mean any discussions what is better to use prefixes or suffixes or both or ... should be "rudely"/decisively suppressed by team leader as soon as naming conventions are defined and accepted and a project starts - teamwork isn't a discussion club... :) Prefixes or suffixes in variables and even tables', queries' etc. names are getting obsolete - this is my current opinion. I still use them in MS Access/VBA but not in VS.NET development (except control names prefixes but these are also becoming not easy to use with so many different types of controls in VS.NET 2005 Winforms). Still using table name prefixes in tables' field names look reasonable from practical point of view (to build queries quicker without field names collisions first of all) but with mainstream tendency of relational back-ends becoming something more than just normalized databases and morphing to XML hierarchies ... -> and finally somewhere in the future to ORDBMSs or pure OODBMSs - with this clear mainstream tendency the usage of prefixes or suffixes is clearly becoming generally depreciated... I do use tbl, tlkp, qsel, qapp, ... etc. prefixes with table names and queries but this usage is looking more and more obsolete because a table can migrate to a set of queries(views), stored procedures, UDFs, web services etc. and vice versa then renaming could become a real time consuming and error prone problem... I did use LRNC prefixes to clearly recognize source object type, to group objects, to speed-up development but it's clear that in real life modern development using only prefixes or only suffixes or both isn't enough - there could be many useful groupings/sortings of the same types or different types of objects - and modern development tools supply different features to natively keep and use such groupings/sortings.... There should be clear practical reasons to use prefixes or suffixes as it was with LRNC and MS Access/Office development for the last 10 years or with Hungarian notation and MSVC++ for the last 15 years ago, VB6 for the last 10 years... I mean it shouldn't be like "We use prefixes or suffixes because our fathers and grand-fathers used them, we forgot/don't know why they are so keen and what for they are needed, we do not see any practical reasons now to use them but we do use them to keep the traditions alive...." Shamil ----- Original Message ----- From: "Charlotte Foust" To: "Access Developers discussion and problem solving" Sent: Thursday, March 02, 2006 7:03 PM Subject: Re: [AccessD] Table naming conventions > Shamil, > > I, too, have used Stan's naming convention and have since it was > originally introduced as LRNC (R went off and developed his own later > ;o>). The underscore annoys me because it is harder to type than just a > capital letter, which is, I believe, the reason it was discouraged in > LRNC. I really think it boils down to whatever works for the developer, > but some kind of naming convention is critical. I've worked with some > of John's tables (bet you didn't know that, did you, JC?) and I > absolutely HATE his naming convention. I couldn't use it in a million > years and I break out in hives just thinking of it, but it works for > him. It only becomes an issue in a team development environment, where > using the same or at least compatible naming conventions is critical. > > Charlotte Foust > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Thursday, March 02, 2006 5:11 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Table naming conventions > > > John, > > AFAIS your naming conventions are based on LRNC (see e.g. Stan Leszinsky > "MS > Access 97 Expert Solutions"). > One exception are field names - the recommended in LRNC way is to not > use > underscore and to use 3-4 chars standard abbreviations to prefix field > names: > > - Company - comp > - Person - pers > - Employee - empl or emp > ... > > I do use LRNC for the last 10 years. It worked very well in many > situations. > > Best regards, > Shamil > -- > Web: http://smsconsulting.spb.ru/shamil_s > > ----- Original Message ----- > From: "John Colby" > To: "'Access Developers discussion and problem solving'" > > Sent: Thursday, March 02, 2006 2:12 PM > Subject: [AccessD] Table naming conventions > > >> Folks, >> >> There has been a bit of discussion in the past few days re naming >> conventions as applied to tables. I have used conventions for many >> years and I sat down tonight and started documenting the conventions I > >> use. I have shared my conventions in the past and will do so again >> here. I do these things because they work for me, in my environment. >> >> I have built a framework, which I use in any project where it is >> allowed. Having conventions allows me to make assumptions about how >> things will be handled, and write code that used those assumptions to >> make decisions. Even if you do not use a framework, having objects >> defined in a consistent manner >> can just generally make life easier. >> >> Feel free to discuss the methods and assumptions that I make, add how >> you >> do >> things (and WHY) etc. Don't bother calling the things I do stupid, if > >> they >> don't work for you, don't use them. Share what does work for you, and > WHY >> you do what you do. If you do something exactly opposite of the way I > do >> it, explain why you prefer to do it that way. I find rules useless. > I >> find >> reasons very useful. >> >> Table Definition Specification >> Tables are defined in a consistent manner so that they can be >> recognized >> and >> worked with easily. All of the definitions that I use have been >> assimilated >> from other people's ideas or developed over time, and all such > conventions >> exist to solve a problem, whether that be readability, distinguishing >> functionality or allowing the framework to make assumptions. >> >> Table definitions consist of several parts. >> 1. Tables always use an autonumber PK, whether it appears to need one >> or not. This is done for a variety of reasons, ranging from divorcing > >> the "table link" (PK/FK)from the unique index and making it trivial to > >> change that unique index without changing the "table link", to the >> consistency of PK data type which allows specific assumptions in the >> framework. The PK is always a long integer, and a single field, which > >> easily allows searches and >> other programmatic manipulations that wouldn't be possible or would be >> tedious if the PK was a multi-field set. >> 2. Table naming conventions. Tables are prefixed with 'tbl' so that > as >> table names are encountered in forms, reports and queries they can be >> distinguished from other objects such as queries. Thus tblPerson, >> tblCompany, tblVehicle. >> 3. I have used other table prefixes to cause tables to group by type >> and be visually distinguishable from each other. Tbl for main tables, > >> tlkp >> for lookup tables, tmm for many to many tables, ttmp for temporary > tables >> etc. There is a lot of discussion about whether grouping by type is >> preferable to grouping by functionality, i.e. all accounting tables > group >> together, all shipping tables group together etc. That is very much a >> 'preference' kind of thing. I have done both, even within the same > db. >> It >> is possible to throw a "type" suffix on the end of the tables > separated by >> an underscore if you care to group by function but be able to > distinguish >> table type. tblPeopleVehicle_MM for a many to many, tblState_LKP for > a >> lookup. >> 4. Field naming conventions. Field naming conventions have several >> parts. In general field and table names should only change in the > most >> dire >> circumstances. If any object name changes, I have to do a search and >> replace to find and fix them. If there are a bunch of Fes working > against >> a >> single BE, it becomes a nightmare. >> a. Data type prefixes are never used in field names because of issues >> with data type changes. There are just too many data types, and they > are >> often changed well into a project, for very valid reasons. >> b. A prefix to the field name is created using the first two > characters >> the table name where the table name is a single word - PEople, > VEhicle, >> COmpany. In cases where the table name is multiple words, the first >> character of each word is used. InvoiceLineItem ILI, PeopleVehicle > PV, >> CompanyProperty CP. An underscore is used to distinguish the field > name >> prefix from the rest of the field name. PE_ID, PE_FName, PE_SSN. Use > of >> the first two characters if each word is acceptable to avoid > collisions >> and >> make the field prefix more readable. PEopleVEhicle PEVE_ID. >> >> Obviously as a project gets large a table is required to track field >> name prefixes already used, but for small to medium sized projects >> this allows the developer to rapidly recognize which table a field >> comes from just from the field name. If this naming convention is >> rigorously followed then every >> field in the db has a unique name, which allows "search and replace" > type >> of >> operations to be performed without manual intervention. >> c. IDs (PK/FKs) are distinguished by the capitalized characters 'ID' >> in the field name. >> d. PKs use the convention of Prefix characters, followed by an >> underscore followed by ID. PE_ID, VE_ID, CO_ID. >> e. FKs use the convention of Prefix characters, followed by an >> underscore, followed by ID followed by the prefix characters of the >> foreign >> table. PV_IDPE, PV_IDVE. CP_IDCO. By placing ID immediately > following >> the >> underscore, PKs and FKs can be immediately distinguished from other > types >> of >> fields. >> f. PKs and FKs are grouped at the top of the field list in design > view. >> This is done so that the PK and all FKs can be seen at a glance > without >> having to search through the fields looking for PKs/FKs. >> >> >> Thus field names look like: >> tblVehicle: >> VE_ID >> VE_Color >> VE_Make >> >> tblPeople >> PE_ID >> PE_LName >> PE_FName >> PE_SSN >> >> tblPeopleVehicle >> PV_ID >> PV_IDPE >> PV_IDVE >> PV_DateAssigned >> >> As you can see, by using the _ character it is easy to distinguish the > >> prefix from the rest of the name. By using the ID immediately after >> the underscore it is easy to find every PK/FK field. By grouping all >> the PKs/FKs at the top of the table, no searching is required to find >> the PKs/FKs. By using the _IDXXXX construct, it is easy to visually >> look at the FK and just "see" what table that is the PK in. >> >> As I said above, to me reasons are the important thing. They define >> why I do what I do and allow me to evaluate whether making a change to > >> what I do is useful to me. Rules without the associated reason are >> useless since I cannot evaluate how it applies to what I am trying to >> do. >> >> Rules are made to be broken, but I want to know the danger of doing >> so. >> >> John W. Colby >> www.ColbyConsulting.com >> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Thu Mar 2 14:58:20 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 2 Mar 2006 12:58:20 -0800 Subject: [AccessD] Table naming conventions Message-ID: I do use naming conventions in VB.Net, at least as much as I'm allowed to. My boss decreed we would use suffixes instead of prefixes to name forms, reports, etc., so related objects would sort together in the project. Now you have to read the entire name of the object to find out what it is! We've never used prefixes on table names, or fields, so that hasn't been an issue in converting to .Net. I prefer prefixes on table names and I prefer prefixes because they allow my eye to skate over the object types I don't want to examine without having to read the entire name of the object. SIGH! I can't have everything I want. Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Thursday, March 02, 2006 11:53 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions <<< The underscore annoys me because it is harder to type than just a > capital letter, >>> I don't use underscore because they weren't used in LRNC. But typing it for me isn't a big trouble :) <<< I really think it boils down to whatever works for the developer, >>> Sure it is. I just accepted LRNC and I use it naturally for a long time. But to use other naming conventions if they are well systematically designed and applied (like JC's :)) wouldn't be a problem for me:) For example in VB.NET/C# I do not use Hungarian notation/LRNC as it's recommended by MS and I like it too - I'm flexible :) <<< It only becomes an issue in a team development environment, where > using the same or at least compatible naming conventions is critical. >>> Yes, in a team environment the systematic use of naming conventions is critical - the naming conventions approved by team leader :) - I mean any discussions what is better to use prefixes or suffixes or both or ... should be "rudely"/decisively suppressed by team leader as soon as naming conventions are defined and accepted and a project starts - teamwork isn't a discussion club... :) Prefixes or suffixes in variables and even tables', queries' etc. names are getting obsolete - this is my current opinion. I still use them in MS Access/VBA but not in VS.NET development (except control names prefixes but these are also becoming not easy to use with so many different types of controls in VS.NET 2005 Winforms). Still using table name prefixes in tables' field names look reasonable from practical point of view (to build queries quicker without field names collisions first of all) but with mainstream tendency of relational back-ends becoming something more than just normalized databases and morphing to XML hierarchies ... -> and finally somewhere in the future to ORDBMSs or pure OODBMSs - with this clear mainstream tendency the usage of prefixes or suffixes is clearly becoming generally depreciated... I do use tbl, tlkp, qsel, qapp, ... etc. prefixes with table names and queries but this usage is looking more and more obsolete because a table can migrate to a set of queries(views), stored procedures, UDFs, web services etc. and vice versa then renaming could become a real time consuming and error prone problem... I did use LRNC prefixes to clearly recognize source object type, to group objects, to speed-up development but it's clear that in real life modern development using only prefixes or only suffixes or both isn't enough - there could be many useful groupings/sortings of the same types or different types of objects - and modern development tools supply different features to natively keep and use such groupings/sortings.... There should be clear practical reasons to use prefixes or suffixes as it was with LRNC and MS Access/Office development for the last 10 years or with Hungarian notation and MSVC++ for the last 15 years ago, VB6 for the last 10 years... I mean it shouldn't be like "We use prefixes or suffixes because our fathers and grand-fathers used them, we forgot/don't know why they are so keen and what for they are needed, we do not see any practical reasons now to use them but we do use them to keep the traditions alive...." Shamil From Jim.Hale at FleetPride.com Thu Mar 2 14:46:20 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Thu, 2 Mar 2006 14:46:20 -0600 Subject: [AccessD] Table naming conventions Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDA73@corp-es01.fleetpride.com> Me.do Jim Hale -----Original Message----- From: Rocky Smolin - Beach Access Software [mailto:bchacc at san.rr.com] Sent: Thursday, March 02, 2006 12:32 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions On a related note, does everyone use/not use Me. when referring to a control in code? Any advantage other than the auto-fill to using Me.? TIA Rocky Charlotte Foust wrote: > You use suffixes for ease of navigation. I prefer prefixes for grouping > by types of objects. Different strokes. > > Charlotte > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, > Lambert > Sent: Thursday, March 02, 2006 6:16 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Table naming conventions > > > Not read all this, but one point I want to make is "why are people > obsessed with PREFIXES?" > > I use the "_tbl" SUFFIX in my table names. Why? So that when I sort the > list of tables I can use the initial letter of the table name to quickly > jump to it using the keyboard. If they all begin with "tbl" you cannot > do that. Simple. :-) > > Lambert > > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From jwcolby at ColbyConsulting.com Thu Mar 2 15:13:14 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 2 Mar 2006 16:13:14 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: <004501c63dfa$d3f1b7f0$6401a8c0@Nant> Message-ID: <000e01c63e3e$1f6b0680$647aa8c0@ColbyM6805> I started with LRNS, and still use it for variables etc. I do not claim to be the originator of anything, I adapt where possible. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Thursday, March 02, 2006 8:11 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions John, AFAIS your naming conventions are based on LRNC (see e.g. Stan Leszinsky "MS Access 97 Expert Solutions"). One exception are field names - the recommended in LRNC way is to not use underscore and to use 3-4 chars standard abbreviations to prefix field names: - Company - comp - Person - pers - Employee - empl or emp ... I do use LRNC for the last 10 years. It worked very well in many situations. Best regards, Shamil -- Web: http://smsconsulting.spb.ru/shamil_s ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Thursday, March 02, 2006 2:12 PM Subject: [AccessD] Table naming conventions > Folks, > > There has been a bit of discussion in the past few days re naming > conventions as applied to tables. I have used conventions for many years > and I sat down tonight and started documenting the conventions I use. I > have shared my conventions in the past and will do so again here. I do > these things because they work for me, in my environment. > > I have built a framework, which I use in any project where it is allowed. > Having conventions allows me to make assumptions about how things will be > handled, and write code that used those assumptions to make decisions. > Even > if you do not use a framework, having objects defined in a consistent > manner > can just generally make life easier. > > Feel free to discuss the methods and assumptions that I make, add how you > do > things (and WHY) etc. Don't bother calling the things I do stupid, if > they > don't work for you, don't use them. Share what does work for you, and WHY > you do what you do. If you do something exactly opposite of the way I do > it, explain why you prefer to do it that way. I find rules useless. I > find > reasons very useful. > > Table Definition Specification > Tables are defined in a consistent manner so that they can be recognized > and > worked with easily. All of the definitions that I use have been > assimilated > from other people's ideas or developed over time, and all such conventions > exist to solve a problem, whether that be readability, distinguishing > functionality or allowing the framework to make assumptions. > > Table definitions consist of several parts. > 1. Tables always use an autonumber PK, whether it appears to need one > or not. This is done for a variety of reasons, ranging from divorcing the > "table link" (PK/FK)from the unique index and making it trivial to change > that unique index without changing the "table link", to the consistency of > PK data type which allows specific assumptions in the framework. The PK > is > always a long integer, and a single field, which easily allows searches > and > other programmatic manipulations that wouldn't be possible or would be > tedious if the PK was a multi-field set. > 2. Table naming conventions. Tables are prefixed with 'tbl' so that as > table names are encountered in forms, reports and queries they can be > distinguished from other objects such as queries. Thus tblPerson, > tblCompany, tblVehicle. > 3. I have used other table prefixes to cause tables to group by type > and be visually distinguishable from each other. Tbl for main tables, > tlkp > for lookup tables, tmm for many to many tables, ttmp for temporary tables > etc. There is a lot of discussion about whether grouping by type is > preferable to grouping by functionality, i.e. all accounting tables group > together, all shipping tables group together etc. That is very much a > 'preference' kind of thing. I have done both, even within the same db. > It > is possible to throw a "type" suffix on the end of the tables separated by > an underscore if you care to group by function but be able to distinguish > table type. tblPeopleVehicle_MM for a many to many, tblState_LKP for a > lookup. > 4. Field naming conventions. Field naming conventions have several > parts. In general field and table names should only change in the most > dire > circumstances. If any object name changes, I have to do a search and > replace to find and fix them. If there are a bunch of Fes working against > a > single BE, it becomes a nightmare. > a. Data type prefixes are never used in field names because of issues > with data type changes. There are just too many data types, and they are > often changed well into a project, for very valid reasons. > b. A prefix to the field name is created using the first two characters > the table name where the table name is a single word - PEople, VEhicle, > COmpany. In cases where the table name is multiple words, the first > character of each word is used. InvoiceLineItem ILI, PeopleVehicle PV, > CompanyProperty CP. An underscore is used to distinguish the field name > prefix from the rest of the field name. PE_ID, PE_FName, PE_SSN. Use of > the first two characters if each word is acceptable to avoid collisions > and > make the field prefix more readable. PEopleVEhicle PEVE_ID. > > Obviously as a project gets large a table is required to track field name > prefixes already used, but for small to medium sized projects this allows > the developer to rapidly recognize which table a field comes from just > from > the field name. If this naming convention is rigorously followed then > every > field in the db has a unique name, which allows "search and replace" type > of > operations to be performed without manual intervention. > c. IDs (PK/FKs) are distinguished by the capitalized characters 'ID' > in the field name. > d. PKs use the convention of Prefix characters, followed by an > underscore followed by ID. PE_ID, VE_ID, CO_ID. > e. FKs use the convention of Prefix characters, followed by an > underscore, followed by ID followed by the prefix characters of the > foreign > table. PV_IDPE, PV_IDVE. CP_IDCO. By placing ID immediately following > the > underscore, PKs and FKs can be immediately distinguished from other types > of > fields. > f. PKs and FKs are grouped at the top of the field list in design view. > This is done so that the PK and all FKs can be seen at a glance without > having to search through the fields looking for PKs/FKs. > > > Thus field names look like: > tblVehicle: > VE_ID > VE_Color > VE_Make > > tblPeople > PE_ID > PE_LName > PE_FName > PE_SSN > > tblPeopleVehicle > PV_ID > PV_IDPE > PV_IDVE > PV_DateAssigned > > As you can see, by using the _ character it is easy to distinguish the > prefix from the rest of the name. By using the ID immediately after the > underscore it is easy to find every PK/FK field. By grouping all the > PKs/FKs at the top of the table, no searching is required to find the > PKs/FKs. By using the _IDXXXX construct, it is easy to visually look at > the > FK and just "see" what table that is the PK in. > > As I said above, to me reasons are the important thing. They define why I > do what I do and allow me to evaluate whether making a change to what I do > is useful to me. Rules without the associated reason are useless since I > cannot evaluate how it applies to what I am trying to do. > > Rules are made to be broken, but I want to know the danger of doing so. > > John W. Colby > www.ColbyConsulting.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Thu Mar 2 15:15:02 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 2 Mar 2006 16:15:02 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: <001701c63e0b$2f8fbf70$9ab3d6d1@SUSANONE> Message-ID: <000f01c63e3e$5f55a2a0$647aa8c0@ColbyM6805> I do use prefixes simply because it is easier for the eye to discover than suffixes (at least for Westerners). John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Thursday, March 02, 2006 10:08 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions I don't think using prefixes with the actual objects is terribly important -- I think a lot of people lend toward natural names for objects and use the prefixes for variables. Susan H. Not read all this, but one point I want to make is "why are people obsessed with PREFIXES?" I use the "_tbl" SUFFIX in my table names. Why? So that when I sort the list of tables I can use the initial letter of the table name to quickly jump to it using the keyboard. If they all begin with "tbl" you cannot do that. Simple. :-) -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Thu Mar 2 15:15:48 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 2 Mar 2006 16:15:48 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: <1D7828CDB8350747AFE9D69E0E90DA1F1DDB2286@xlivmbx21.aig.com> Message-ID: <001001c63e3e$7aa3fde0$647aa8c0@ColbyM6805> Understood, and that is a good reason for what you do! John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert Sent: Thursday, March 02, 2006 10:38 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions All I'm really saying is that the Access user interface allows you to select an object in the database window by typing the initial letter. Type 'D' and the interface will jump to the first object in the list that starts with a D. Type D again to jump to the next one. That's why I use suffixes instead of prefixes. If you have a common prefix for your objects, you lose this handy navigation feature. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Thursday, March 02, 2006 10:08 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions I don't think using prefixes with the actual objects is terribly important -- I think a lot of people lend toward natural names for objects and use the prefixes for variables. Susan H. Not read all this, but one point I want to make is "why are people obsessed with PREFIXES?" I use the "_tbl" SUFFIX in my table names. Why? So that when I sort the list of tables I can use the initial letter of the table name to quickly jump to it using the keyboard. If they all begin with "tbl" you cannot do that. Simple. :-) -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Thu Mar 2 15:17:22 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 2 Mar 2006 16:17:22 -0500 Subject: [AccessD] OT: farewell In-Reply-To: <20060302155328.19996.qmail@web50115.mail.yahoo.com> Message-ID: <001101c63e3e$b2b4ddd0$647aa8c0@ColbyM6805> Roz, Don't be a stranger. We'll miss you. Good luck in your future and pop in every once in awhile. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Roz Clarke Sent: Thursday, March 02, 2006 10:53 AM To: Access Developers discussion and problem solving Subject: [AccessD] OT: farewell Hi guys. Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 months. I am no longer working in IT, having given up my job and taken up a Masters in Creative Writing. Whilst I may have the occasional web project to work on, I have no plans to return to development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing all your familiar names in my inbox every day. So I am leaving the list and standing down as a moderator. It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything I know about database development and a lot more besides, but I've had tears and laughter along the way and a fantastic trip to Germany into the bargain. Thank you all for being invaluable 'virtual colleagues', but above all for being friends. Love and hugs Roz PS what's the OT list like these days? ;) ___________________________________________________________ NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Thu Mar 2 15:22:19 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 2 Mar 2006 16:22:19 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: <44073A15.4080206@san.rr.com> Message-ID: <001201c63e3f$63e658e0$647aa8c0@ColbyM6805> Me. Should NEVER be used to refer to controls. Dot . Should only refer to properties. Bang ! Should be used to refer to controls and objects. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 02, 2006 1:32 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions On a related note, does everyone use/not use Me. when referring to a control in code? Any advantage other than the auto-fill to using Me.? TIA Rocky Charlotte Foust wrote: > You use suffixes for ease of navigation. I prefer prefixes for > grouping by types of objects. Different strokes. > > Charlotte > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, > Lambert > Sent: Thursday, March 02, 2006 6:16 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Table naming conventions > > > Not read all this, but one point I want to make is "why are people > obsessed with PREFIXES?" > > I use the "_tbl" SUFFIX in my table names. Why? So that when I sort > the list of tables I can use the initial letter of the table name to > quickly jump to it using the keyboard. If they all begin with "tbl" > you cannot do that. Simple. :-) > > Lambert > > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From martyconnelly at shaw.ca Thu Mar 2 15:13:53 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Thu, 02 Mar 2006 13:13:53 -0800 Subject: [AccessD] OT - Action Pack References: <200603021946.k22JkWj68683@ultradnt.com> Message-ID: <44076011.6070103@shaw.ca> I have seen Action Packs assigned to numbered corporations. But if they don't renew the yearly subscriptions, security fix updates may not be available from MS update sites.. Steve Conklin wrote: >It's in the client's corporate name, which includes the word "consulting" >but not "real estate". > >Steve > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of William Hindman >Sent: Thursday, March 02, 2006 2:41 PM >To: Access Developers discussion and problem solving >Subject: Re: [AccessD] OT - Action Pack > >...is the Action Pak subscription actually in their name or the former >consultant's? > >William > >----- Original Message ----- >From: "Steve Conklin" >To: "'Access Developers discussion and problem solving'" > >Sent: Thursday, March 02, 2006 2:08 PM >Subject: Re: [AccessD] OT - Action Pack > > > > >>Charlotte, I agree 100%. Their previous consultant sent them on this >>path. >>When I asked for their W2k3 CD, that's when I saw Action Pack. I kept >>quiet >>(temporarily); I wanted to post here first to try to begin to assess their >>risk. >> >>Steve >> >> >>-----Original Message----- >>From: accessd-bounces at databaseadvisors.com >>[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust >>Sent: Thursday, March 02, 2006 1:44 PM >>To: Access Developers discussion and problem solving >>Subject: Re: [AccessD] OT - Action Pack >> >>Well, if MS ever decides to close that loophole, the EULA requires that >>they >>uninstall the software and any of its supporting files from all their >>machines. I've heard of people cheating like this, it's like those who >>buy >>the Academic edition even though it isn't licensed for commercial use. If >>we aren't honest about our licenses, how can our >>clients/customers/employees >>trust us? >> >>Charlotte Foust >> >> >>-----Original Message----- >>From: accessd-bounces at databaseadvisors.com >>[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Conklin >>Sent: Thursday, March 02, 2006 10:20 AM >>To: 'Access Developers discussion and problem solving' >>Subject: Re: [AccessD] OT - Action Pack >> >> >>Thanks for the link. But there's no way this real estate office does any >>influencing over anything computer related. There's no stretching the >>definition of their business to fit any of that, so that's why I wanted to >>know if there is any risk of them losing theses licenses. >>Seems to me that they have found a loophole that any business with <= 10 >>PC's and 1 Server can exploit. >> >> >>Steve >> >> >>-----Original Message----- >>From: accessd-bounces at databaseadvisors.com >>[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gary Kjos >>Sent: Thursday, March 02, 2006 12:38 PM >>To: Access Developers discussion and problem solving >>Subject: Re: [AccessD] OT - Action Pack >> >>https://partner.microsoft.com/40009735 >> >>has all the info. >> >>here's a quote from the FAQ >>--------------------------------------- >> >>Who can subscribe to the Microsoft Action Pack? >>The Microsoft Action Pack Subscription is available exclusively to >>consultants, value-added resellers, value-added providers, system >>integrators, developers, system builders, hosts, and service providers who >>are enrolled as Registered Members in the Microsoft Partner Program and >>who >>distribute or influence the acquisition of Microsoft software and >>Microsoft-based solutions by end customers. >> >>---------------------------------- >> >>that describes a pretty broad group. "influence the aquisition of >>Microsoft >>software and Microsoft-bases solutions by end customers" can include a >>whole >>lot of people and businesses. >> >>I think Microsoft is glad to have them paying something every year. >> >>GK >> >> >>On 3/2/06, Steve Conklin wrote: >> >> >>>I have picked up a new client, mostly for server work, and when I >>>asked him if his Windows XP and Server 2003 were properly licensed, he >>> >>> >>>showed me an Action Pack. This is a real estate office, but >>>apparently because the word "consulting" is in the company name, it >>>was able to be registered to whatever level necessary to get an Action >>> >>> >>Pack. >> >> >>>The question is, is there any long term risk associated with this? >>>Are these things re-newable an unlimited number of times? Will MS >>>ever ask to see a list of how many clients you have influenced to buy >>>their products through your Ac.Pack? Or did this company find a >>>loophole you could drive a truck through? >>> >>>I know there are a few Action Packers out there; I am an MSDN-U >>>myself, so I don't any details about this thing. >>> >>>Thanks for any insight, >>>Steve >>> >>> >>> >> >> > > -- Marty Connelly Victoria, B.C. Canada From developer at ultradnt.com Thu Mar 2 15:59:59 2006 From: developer at ultradnt.com (Steve Conklin) Date: Thu, 2 Mar 2006 16:59:59 -0500 Subject: [AccessD] OT - Action Pack In-Reply-To: <44076011.6070103@shaw.ca> Message-ID: <200603022159.k22Lxtj84166@ultradnt.com> Hey Marty, Uh, what's a numbered corp.? This is their 2nd year, they renewed in January. Is there any possibility that MS will ever say "you're not an IT firm" and refuse to let them renew, is my question. Steve -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of MartyConnelly Sent: Thursday, March 02, 2006 4:14 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT - Action Pack I have seen Action Packs assigned to numbered corporations. But if they don't renew the yearly subscriptions, security fix updates may not be available from MS update sites.. Steve Conklin wrote: >It's in the client's corporate name, which includes the word "consulting" >but not "real estate". > >Steve > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of William Hindman >Sent: Thursday, March 02, 2006 2:41 PM >To: Access Developers discussion and problem solving >Subject: Re: [AccessD] OT - Action Pack > >...is the Action Pak subscription actually in their name or the former >consultant's? > >William > >----- Original Message ----- >From: "Steve Conklin" >To: "'Access Developers discussion and problem solving'" > >Sent: Thursday, March 02, 2006 2:08 PM >Subject: Re: [AccessD] OT - Action Pack > > > > >>Charlotte, I agree 100%. Their previous consultant sent them on this >>path. >>When I asked for their W2k3 CD, that's when I saw Action Pack. I kept >>quiet >>(temporarily); I wanted to post here first to try to begin to assess their >>risk. >> >>Steve >> >> >>-----Original Message----- >>From: accessd-bounces at databaseadvisors.com >>[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust >>Sent: Thursday, March 02, 2006 1:44 PM >>To: Access Developers discussion and problem solving >>Subject: Re: [AccessD] OT - Action Pack >> >>Well, if MS ever decides to close that loophole, the EULA requires that >>they >>uninstall the software and any of its supporting files from all their >>machines. I've heard of people cheating like this, it's like those who >>buy >>the Academic edition even though it isn't licensed for commercial use. If >>we aren't honest about our licenses, how can our >>clients/customers/employees >>trust us? >> >>Charlotte Foust >> >> >>-----Original Message----- >>From: accessd-bounces at databaseadvisors.com >>[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Conklin >>Sent: Thursday, March 02, 2006 10:20 AM >>To: 'Access Developers discussion and problem solving' >>Subject: Re: [AccessD] OT - Action Pack >> >> >>Thanks for the link. But there's no way this real estate office does any >>influencing over anything computer related. There's no stretching the >>definition of their business to fit any of that, so that's why I wanted to >>know if there is any risk of them losing theses licenses. >>Seems to me that they have found a loophole that any business with <= 10 >>PC's and 1 Server can exploit. >> >> >>Steve >> >> >>-----Original Message----- >>From: accessd-bounces at databaseadvisors.com >>[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gary Kjos >>Sent: Thursday, March 02, 2006 12:38 PM >>To: Access Developers discussion and problem solving >>Subject: Re: [AccessD] OT - Action Pack >> >>https://partner.microsoft.com/40009735 >> >>has all the info. >> >>here's a quote from the FAQ >>--------------------------------------- >> >>Who can subscribe to the Microsoft Action Pack? >>The Microsoft Action Pack Subscription is available exclusively to >>consultants, value-added resellers, value-added providers, system >>integrators, developers, system builders, hosts, and service providers who >>are enrolled as Registered Members in the Microsoft Partner Program and >>who >>distribute or influence the acquisition of Microsoft software and >>Microsoft-based solutions by end customers. >> >>---------------------------------- >> >>that describes a pretty broad group. "influence the aquisition of >>Microsoft >>software and Microsoft-bases solutions by end customers" can include a >>whole >>lot of people and businesses. >> >>I think Microsoft is glad to have them paying something every year. >> >>GK >> >> >>On 3/2/06, Steve Conklin wrote: >> >> >>>I have picked up a new client, mostly for server work, and when I >>>asked him if his Windows XP and Server 2003 were properly licensed, he >>> >>> >>>showed me an Action Pack. This is a real estate office, but >>>apparently because the word "consulting" is in the company name, it >>>was able to be registered to whatever level necessary to get an Action >>> >>> >>Pack. >> >> >>>The question is, is there any long term risk associated with this? >>>Are these things re-newable an unlimited number of times? Will MS >>>ever ask to see a list of how many clients you have influenced to buy >>>their products through your Ac.Pack? Or did this company find a >>>loophole you could drive a truck through? >>> >>>I know there are a few Action Packers out there; I am an MSDN-U >>>myself, so I don't any details about this thing. >>> >>>Thanks for any insight, >>>Steve >>> >>> >>> >> >> > > -- Marty Connelly Victoria, B.C. Canada -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From developer at ultradnt.com Thu Mar 2 16:01:39 2006 From: developer at ultradnt.com (Steve Conklin) Date: Thu, 2 Mar 2006 17:01:39 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: <001201c63e3f$63e658e0$647aa8c0@ColbyM6805> Message-ID: <200603022201.k22M1Zj84564@ultradnt.com> Reason(s)? -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 4:22 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions Me. Should NEVER be used to refer to controls. Dot . Should only refer to properties. Bang ! Should be used to refer to controls and objects. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 02, 2006 1:32 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions On a related note, does everyone use/not use Me. when referring to a control in code? Any advantage other than the auto-fill to using Me.? TIA Rocky Charlotte Foust wrote: > You use suffixes for ease of navigation. I prefer prefixes for > grouping by types of objects. Different strokes. > > Charlotte > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, > Lambert > Sent: Thursday, March 02, 2006 6:16 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Table naming conventions > > > Not read all this, but one point I want to make is "why are people > obsessed with PREFIXES?" > > I use the "_tbl" SUFFIX in my table names. Why? So that when I sort > the list of tables I can use the initial letter of the table name to > quickly jump to it using the keyboard. If they all begin with "tbl" > you cannot do that. Simple. :-) > > Lambert > > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From prosoft6 at hotmail.com Thu Mar 2 16:30:23 2006 From: prosoft6 at hotmail.com (Julie Reardon-Taylor) Date: Thu, 02 Mar 2006 17:30:23 -0500 Subject: [AccessD] OT - Action Pack In-Reply-To: <44076011.6070103@shaw.ca> Message-ID: I recently had to "let an employee go" and I think that some of my software licenses may be missing. Can anyone tell me what they received in the Jan. update for licenses? I think that I have the cd's, I'm talking about the white cards with the sticky yellow license keys. The only yellow license keys that I see in my folder are the XP Pro 64-bit. Did anyone get any other cards? Julie Reardon-Taylor PRO-SOFT OF NY, INC. 44 Public Square Suite #5 Watertown, NY 13601 Phone/Fax: (315) 785-0319 www.pro-soft.net NYS IT Services Contract CMT026A NYS Certified Woman-Owned Business From shamil at users.mns.ru Thu Mar 2 16:33:53 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Fri, 3 Mar 2006 01:33:53 +0300 Subject: [AccessD] Table naming conventions References: Message-ID: <003501c63e49$deb70970$6401a8c0@Nant> <<< I can't have everything I want. >>> Charlotte, In MS Access database window you can create groups and put links to objects into these groups and rename these links whatever you need/prefer - the source object names will stay unchanged... In VS.NET 2005 projects you can create folders and subforders having source files as well as links to the source files - by thus you can create groups of related source files. Unfortunately you can't give different names to the links as in MS Access groups still it's a useful feature to keep related source files grouped - especialy useful in large projects with many source files.... Shamil ----- Original Message ----- From: "Charlotte Foust" To: "Access Developers discussion and problem solving" Sent: Thursday, March 02, 2006 11:58 PM Subject: Re: [AccessD] Table naming conventions >I do use naming conventions in VB.Net, at least as much as I'm allowed > to. My boss decreed we would use suffixes instead of prefixes to name > forms, reports, etc., so related objects would sort together in the > project. Now you have to read the entire name of the object to find out > what it is! We've never used prefixes on table names, or fields, so > that hasn't been an issue in converting to .Net. I prefer prefixes on > table names and I prefer prefixes because they allow my eye to skate > over the object types I don't want to examine without having to read the > entire name of the object. SIGH! I can't have everything I want. > > Charlotte > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Thursday, March 02, 2006 11:53 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Table naming conventions > > > <<< > The underscore annoys me because it is harder to type than just a >> capital letter, >>>> > I don't use underscore because they weren't used in LRNC. > But typing it for me isn't a big trouble :) > > <<< > I really think it boils down to whatever works for the developer, >>>> > Sure it is. I just accepted LRNC and I use it naturally for a long time. > But to use other naming conventions if they are well systematically > designed > and applied (like JC's :)) wouldn't be a problem for me:) > > For example in VB.NET/C# I do not use Hungarian notation/LRNC as it's > recommended by MS and I like it too - I'm flexible :) > > <<< > It only becomes an issue in a team development environment, where >> using the same or at least compatible naming conventions is critical. >>>> > Yes, in a team environment the systematic use of naming conventions is > critical - the naming conventions approved by team leader :) - I mean > any > discussions what is better to use prefixes or suffixes or both or ... > should > be "rudely"/decisively suppressed by team leader as soon as naming > conventions are defined and accepted and a project starts - teamwork > isn't > a discussion club... :) > > Prefixes or suffixes in variables and even tables', queries' etc. names > are > getting obsolete - this is my current opinion. I still use them in MS > Access/VBA but not in VS.NET development (except control names prefixes > but > these are also becoming not easy to use with so many different types of > controls in VS.NET 2005 Winforms). > > Still using table name prefixes in tables' field names look reasonable > from > practical point of view (to build queries quicker without field names > collisions first of all) but with mainstream tendency of relational > back-ends becoming something more than just normalized databases and > morphing to XML hierarchies ... -> and finally somewhere in the future > to > ORDBMSs or pure OODBMSs - with this clear mainstream tendency the usage > of > prefixes or suffixes is clearly becoming generally depreciated... > > I do use tbl, tlkp, qsel, qapp, ... etc. prefixes with table names and > queries but this usage is looking more and more obsolete because a table > can > migrate to a set of queries(views), stored procedures, UDFs, web > services > etc. and vice versa then renaming could become a real time consuming and > > error prone problem... > > I did use LRNC prefixes to clearly recognize source object type, to > group > objects, to speed-up development but it's clear that in real life modern > > development using only prefixes or only suffixes or both isn't enough - > there could be many useful groupings/sortings of the same types or > different > types of objects - and modern development tools supply different > features to > natively keep and use such groupings/sortings.... > > There should be clear practical reasons to use prefixes or suffixes as > it > was with LRNC and MS Access/Office development for the last 10 years or > with > Hungarian notation and MSVC++ for the last 15 years ago, VB6 for the > last 10 > years... > > I mean it shouldn't be like "We use prefixes or suffixes because our > fathers > and grand-fathers used them, we forgot/don't know why they are so keen > and > what for they are needed, we do not see any practical reasons now to use > > them but we do use them to keep the traditions alive...." > > Shamil > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From shamil at users.mns.ru Thu Mar 2 16:37:18 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Fri, 3 Mar 2006 01:37:18 +0300 Subject: [AccessD] Table naming conventions References: <000e01c63e3e$1f6b0680$647aa8c0@ColbyM6805> Message-ID: <003601c63e49$df6ec0b0$6401a8c0@Nant> John, I just noted that your naming conventions are solid and systematic and based on LRNC - and that's "what doctor ordered". <<< I adapt where possible. >>> Either do I. Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Friday, March 03, 2006 12:13 AM Subject: Re: [AccessD] Table naming conventions >I started with LRNS, and still use it for variables etc. I do not claim to > be the originator of anything, I adapt where possible. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Thursday, March 02, 2006 8:11 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Table naming conventions > > John, > > AFAIS your naming conventions are based on LRNC (see e.g. Stan Leszinsky > "MS > Access 97 Expert Solutions"). > One exception are field names - the recommended in LRNC way is to not use > underscore and to use 3-4 chars standard abbreviations to prefix field > names: > > - Company - comp > - Person - pers > - Employee - empl or emp > ... > > I do use LRNC for the last 10 years. It worked very well in many > situations. > > Best regards, > Shamil > -- > Web: http://smsconsulting.spb.ru/shamil_s > > ----- Original Message ----- > From: "John Colby" > To: "'Access Developers discussion and problem solving'" > > Sent: Thursday, March 02, 2006 2:12 PM > Subject: [AccessD] Table naming conventions > > >> Folks, >> >> There has been a bit of discussion in the past few days re naming >> conventions as applied to tables. I have used conventions for many years >> and I sat down tonight and started documenting the conventions I use. I >> have shared my conventions in the past and will do so again here. I do >> these things because they work for me, in my environment. >> >> I have built a framework, which I use in any project where it is allowed. >> Having conventions allows me to make assumptions about how things will be >> handled, and write code that used those assumptions to make decisions. >> Even >> if you do not use a framework, having objects defined in a consistent >> manner >> can just generally make life easier. >> >> Feel free to discuss the methods and assumptions that I make, add how you >> do >> things (and WHY) etc. Don't bother calling the things I do stupid, if >> they >> don't work for you, don't use them. Share what does work for you, and >> WHY >> you do what you do. If you do something exactly opposite of the way I do >> it, explain why you prefer to do it that way. I find rules useless. I >> find >> reasons very useful. >> >> Table Definition Specification >> Tables are defined in a consistent manner so that they can be recognized >> and >> worked with easily. All of the definitions that I use have been >> assimilated >> from other people's ideas or developed over time, and all such >> conventions >> exist to solve a problem, whether that be readability, distinguishing >> functionality or allowing the framework to make assumptions. >> >> Table definitions consist of several parts. >> 1. Tables always use an autonumber PK, whether it appears to need one >> or not. This is done for a variety of reasons, ranging from divorcing >> the >> "table link" (PK/FK)from the unique index and making it trivial to change >> that unique index without changing the "table link", to the consistency >> of >> PK data type which allows specific assumptions in the framework. The PK >> is >> always a long integer, and a single field, which easily allows searches >> and >> other programmatic manipulations that wouldn't be possible or would be >> tedious if the PK was a multi-field set. >> 2. Table naming conventions. Tables are prefixed with 'tbl' so that as >> table names are encountered in forms, reports and queries they can be >> distinguished from other objects such as queries. Thus tblPerson, >> tblCompany, tblVehicle. >> 3. I have used other table prefixes to cause tables to group by type >> and be visually distinguishable from each other. Tbl for main tables, >> tlkp >> for lookup tables, tmm for many to many tables, ttmp for temporary tables >> etc. There is a lot of discussion about whether grouping by type is >> preferable to grouping by functionality, i.e. all accounting tables group >> together, all shipping tables group together etc. That is very much a >> 'preference' kind of thing. I have done both, even within the same db. >> It >> is possible to throw a "type" suffix on the end of the tables separated >> by >> an underscore if you care to group by function but be able to distinguish >> table type. tblPeopleVehicle_MM for a many to many, tblState_LKP for a >> lookup. >> 4. Field naming conventions. Field naming conventions have several >> parts. In general field and table names should only change in the most >> dire >> circumstances. If any object name changes, I have to do a search and >> replace to find and fix them. If there are a bunch of Fes working >> against > >> a >> single BE, it becomes a nightmare. >> a. Data type prefixes are never used in field names because of issues >> with data type changes. There are just too many data types, and they are >> often changed well into a project, for very valid reasons. >> b. A prefix to the field name is created using the first two characters >> the table name where the table name is a single word - PEople, VEhicle, >> COmpany. In cases where the table name is multiple words, the first >> character of each word is used. InvoiceLineItem ILI, PeopleVehicle PV, >> CompanyProperty CP. An underscore is used to distinguish the field name >> prefix from the rest of the field name. PE_ID, PE_FName, PE_SSN. Use of >> the first two characters if each word is acceptable to avoid collisions >> and >> make the field prefix more readable. PEopleVEhicle PEVE_ID. >> >> Obviously as a project gets large a table is required to track field name >> prefixes already used, but for small to medium sized projects this allows >> the developer to rapidly recognize which table a field comes from just >> from >> the field name. If this naming convention is rigorously followed then >> every >> field in the db has a unique name, which allows "search and replace" type >> of >> operations to be performed without manual intervention. >> c. IDs (PK/FKs) are distinguished by the capitalized characters 'ID' >> in the field name. >> d. PKs use the convention of Prefix characters, followed by an >> underscore followed by ID. PE_ID, VE_ID, CO_ID. >> e. FKs use the convention of Prefix characters, followed by an >> underscore, followed by ID followed by the prefix characters of the >> foreign >> table. PV_IDPE, PV_IDVE. CP_IDCO. By placing ID immediately following >> the >> underscore, PKs and FKs can be immediately distinguished from other types >> of >> fields. >> f. PKs and FKs are grouped at the top of the field list in design view. >> This is done so that the PK and all FKs can be seen at a glance without >> having to search through the fields looking for PKs/FKs. >> >> >> Thus field names look like: >> tblVehicle: >> VE_ID >> VE_Color >> VE_Make >> >> tblPeople >> PE_ID >> PE_LName >> PE_FName >> PE_SSN >> >> tblPeopleVehicle >> PV_ID >> PV_IDPE >> PV_IDVE >> PV_DateAssigned >> >> As you can see, by using the _ character it is easy to distinguish the >> prefix from the rest of the name. By using the ID immediately after the >> underscore it is easy to find every PK/FK field. By grouping all the >> PKs/FKs at the top of the table, no searching is required to find the >> PKs/FKs. By using the _IDXXXX construct, it is easy to visually look at >> the >> FK and just "see" what table that is the PK in. >> >> As I said above, to me reasons are the important thing. They define why >> I >> do what I do and allow me to evaluate whether making a change to what I >> do >> is useful to me. Rules without the associated reason are useless since I >> cannot evaluate how it applies to what I am trying to do. >> >> Rules are made to be broken, but I want to know the danger of doing so. >> >> John W. Colby >> www.ColbyConsulting.com >> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From dwaters at usinternet.com Thu Mar 2 16:47:25 2006 From: dwaters at usinternet.com (Dan Waters) Date: Thu, 2 Mar 2006 16:47:25 -0600 Subject: [AccessD] OT: farewell In-Reply-To: <32863745.1141315151137.JavaMail.root@sniper22> Message-ID: <001901c63e4b$475aa530$0200a8c0@danwaters> Roz - Best of Luck! But I don't think you'll need much in the field of Creative Writing. Because, what is programming but Creative Writing? And you've done a lot of that! Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Roz Clarke Sent: Thursday, March 02, 2006 9:53 AM To: Access Developers discussion and problem solving Subject: [AccessD] OT: farewell Hi guys. Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 months. I am no longer working in IT, having given up my job and taken up a Masters in Creative Writing. Whilst I may have the occasional web project to work on, I have no plans to return to development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing all your familiar names in my inbox every day. So I am leaving the list and standing down as a moderator. It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything I know about database development and a lot more besides, but I've had tears and laughter along the way and a fantastic trip to Germany into the bargain. Thank you all for being invaluable 'virtual colleagues', but above all for being friends. Love and hugs Roz PS what's the OT list like these days? ;) ___________________________________________________________ NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Thu Mar 2 17:21:22 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 2 Mar 2006 15:21:22 -0800 Subject: [AccessD] Table naming conventions Message-ID: Yes, I know, but I tried groups and hated them. We do use folders and subfolders in our .Net projects, and multiple projects in a solution. But when you're looking through a long list of objects in the Forms subfolder, all you have to go on is the icon and the suffix at the Loooonnnngg end of the object name to tell you exactly what it is. Unless it's a vb modules, of course. LOL There are 4-1/2 of us doing dot.net development using VSS, so we all have to play by the same rules. The 1/2 is my boss, who doesn't get his hands too dirty in forms, reports, data tier details, and vb code, but who does jump in to stuff occasionally. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Thursday, March 02, 2006 2:34 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions <<< I can't have everything I want. >>> Charlotte, In MS Access database window you can create groups and put links to objects into these groups and rename these links whatever you need/prefer - the source object names will stay unchanged... In VS.NET 2005 projects you can create folders and subforders having source files as well as links to the source files - by thus you can create groups of related source files. Unfortunately you can't give different names to the links as in MS Access groups still it's a useful feature to keep related source files grouped - especialy useful in large projects with many source files.... Shamil ----- Original Message ----- From: "Charlotte Foust" To: "Access Developers discussion and problem solving" Sent: Thursday, March 02, 2006 11:58 PM Subject: Re: [AccessD] Table naming conventions >I do use naming conventions in VB.Net, at least as much as I'm allowed >to. My boss decreed we would use suffixes instead of prefixes to name >forms, reports, etc., so related objects would sort together in the >project. Now you have to read the entire name of the object to find >out what it is! We've never used prefixes on table names, or fields, >so that hasn't been an issue in converting to .Net. I prefer prefixes >on table names and I prefer prefixes because they allow my eye to >skate over the object types I don't want to examine without having to >read the entire name of the object. SIGH! I can't have everything I >want. > > Charlotte > > > From cfoust at infostatsystems.com Thu Mar 2 17:22:13 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 2 Mar 2006 15:22:13 -0800 Subject: [AccessD] OT: farewell Message-ID: LOL Yeah but the plots will be more interesting in the future! ;o} Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Dan Waters Sent: Thursday, March 02, 2006 2:47 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: farewell Roz - Best of Luck! But I don't think you'll need much in the field of Creative Writing. Because, what is programming but Creative Writing? And you've done a lot of that! Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Roz Clarke Sent: Thursday, March 02, 2006 9:53 AM To: Access Developers discussion and problem solving Subject: [AccessD] OT: farewell Hi guys. Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 months. I am no longer working in IT, having given up my job and taken up a Masters in Creative Writing. Whilst I may have the occasional web project to work on, I have no plans to return to development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing all your familiar names in my inbox every day. So I am leaving the list and standing down as a moderator. It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything I know about database development and a lot more besides, but I've had tears and laughter along the way and a fantastic trip to Germany into the bargain. Thank you all for being invaluable 'virtual colleagues', but above all for being friends. Love and hugs Roz PS what's the OT list like these days? ;) ___________________________________________________________ NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Thu Mar 2 17:55:29 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 2 Mar 2006 18:55:29 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: <200603022201.k22M1Zj84564@ultradnt.com> Message-ID: <001f01c63e54$ca92a160$647aa8c0@ColbyM6805> LOL, because it is the wrong syntax and can cause the vba interpreter to get confused and do stupid things. In the early days of Access, me.object was the accepted syntax. Sometime around A97 Microsoft switched to the ! As the "accepted" syntax. Dot is for properties, Bang is for objects. Using Dot to refer to properties is known to cause weirdnesses. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Conklin Sent: Thursday, March 02, 2006 5:02 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions Reason(s)? -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 4:22 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions Me. Should NEVER be used to refer to controls. Dot . Should only refer to properties. Bang ! Should be used to refer to controls and objects. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 02, 2006 1:32 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions On a related note, does everyone use/not use Me. when referring to a control in code? Any advantage other than the auto-fill to using Me.? TIA Rocky Charlotte Foust wrote: > You use suffixes for ease of navigation. I prefer prefixes for > grouping by types of objects. Different strokes. > > Charlotte > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, > Lambert > Sent: Thursday, March 02, 2006 6:16 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Table naming conventions > > > Not read all this, but one point I want to make is "why are people > obsessed with PREFIXES?" > > I use the "_tbl" SUFFIX in my table names. Why? So that when I sort > the list of tables I can use the initial letter of the table name to > quickly jump to it using the keyboard. If they all begin with "tbl" > you cannot do that. Simple. :-) > > Lambert > > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bchacc at san.rr.com Thu Mar 2 18:43:03 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 02 Mar 2006 16:43:03 -0800 Subject: [AccessD] Access and Excel issue Message-ID: <44079117.4010409@san.rr.com> Dear List: According to this: http://winks.office-watch.com/9/templates/feat.aspx?articleid=7&zoneid=2 Some of the functionality between Access and Excel is disabled in 2002 and 2003 SP2. I have a client where I create a rather elaborate worksheet from a template in Access and push data out to the Excel worksheet, then open it up for editing. When the worksheet is saved, I have a lot of code behind the worksheet that pushes the data back into the Access tables. The worksheets are not linked however. I use automation to do the data transfers. Am I in trouble here or did I inadvertently dodge this bullet? The article refers to linked tables and spreadsheets. TIA Rocky -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From jwcolby at ColbyConsulting.com Thu Mar 2 18:47:28 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 2 Mar 2006 19:47:28 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: <001f01c63e54$ca92a160$647aa8c0@ColbyM6805> Message-ID: <002101c63e5c$0f836320$647aa8c0@ColbyM6805> >Using Dot to refer to properties is known to cause weirdnesses. Ooops. Using Dot to refer to Objects can cause weirdnesses. Sorry for the confusion. I can think of at least one exception (kind of) however. To refer to a control on a subform, the syntax is me!SubformControl.Subform!Control. In this case I think that .Subform is a PROPERTY of the subformControl which returns a pointer to an object (the actual loaded subform). So even here Dot is the correct syntax. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 6:55 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions LOL, because it is the wrong syntax and can cause the vba interpreter to get confused and do stupid things. In the early days of Access, me.object was the accepted syntax. Sometime around A97 Microsoft switched to the ! As the "accepted" syntax. Dot is for properties, Bang is for objects. Using Dot to refer to properties is known to cause weirdnesses. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Conklin Sent: Thursday, March 02, 2006 5:02 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions Reason(s)? -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 4:22 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions Me. Should NEVER be used to refer to controls. Dot . Should only refer to properties. Bang ! Should be used to refer to controls and objects. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 02, 2006 1:32 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions On a related note, does everyone use/not use Me. when referring to a control in code? Any advantage other than the auto-fill to using Me.? TIA Rocky Charlotte Foust wrote: > You use suffixes for ease of navigation. I prefer prefixes for > grouping by types of objects. Different strokes. > > Charlotte > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, > Lambert > Sent: Thursday, March 02, 2006 6:16 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Table naming conventions > > > Not read all this, but one point I want to make is "why are people > obsessed with PREFIXES?" > > I use the "_tbl" SUFFIX in my table names. Why? So that when I sort > the list of tables I can use the initial letter of the table name to > quickly jump to it using the keyboard. If they all begin with "tbl" > you cannot do that. Simple. :-) > > Lambert > > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Thu Mar 2 19:29:54 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 2 Mar 2006 17:29:54 -0800 Subject: [AccessD] Table naming conventions Message-ID: But you also use the dot operator to refer to members of a collection, and the controls are members of the parent object's controls collection. ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 4:47 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions >Using Dot to refer to properties is known to cause weirdnesses. Ooops. Using Dot to refer to Objects can cause weirdnesses. Sorry for the confusion. I can think of at least one exception (kind of) however. To refer to a control on a subform, the syntax is me!SubformControl.Subform!Control. In this case I think that .Subform is a PROPERTY of the subformControl which returns a pointer to an object (the actual loaded subform). So even here Dot is the correct syntax. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 6:55 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions LOL, because it is the wrong syntax and can cause the vba interpreter to get confused and do stupid things. In the early days of Access, me.object was the accepted syntax. Sometime around A97 Microsoft switched to the ! As the "accepted" syntax. Dot is for properties, Bang is for objects. Using Dot to refer to properties is known to cause weirdnesses. John W. Colby www.ColbyConsulting.com From stuart at lexacorp.com.pg Thu Mar 2 20:21:56 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Fri, 03 Mar 2006 12:21:56 +1000 Subject: [AccessD] Table naming conventions In-Reply-To: <001f01c63e54$ca92a160$647aa8c0@ColbyM6805> References: <200603022201.k22M1Zj84564@ultradnt.com> Message-ID: <440834E4.22587.A3272B8@stuart.lexacorp.com.pg> On 2 Mar 2006 at 18:55, John Colby wrote: > LOL, because it is the wrong syntax and can cause the vba interpreter to get > confused and do stupid things. In the early days of Access, me.object was > the accepted syntax. Sometime around A97 Microsoft switched to the ! As the > "accepted" syntax. Dot is for properties, Bang is for objects. Using Dot > to refer to properties is known to cause weirdnesses. > I recently had to update a series of A97 applications to XP. The original developer had used "Me." in a number of places to refer to controls and I had to change then to "Me!" before the upgraded app would compile. Unfortunately, I can't rememer the exact error that they were throwing when I tried to compile. -- Stuart From jwcolby at ColbyConsulting.com Thu Mar 2 22:18:31 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 2 Mar 2006 23:18:31 -0500 Subject: [AccessD] Access and Excel issue In-Reply-To: <44079117.4010409@san.rr.com> Message-ID: <000601c63e79$896a2e40$647aa8c0@ColbyM6805> I think the issue is specifically that linking spreadsheets has been disabled. If you use automation then you don't have an issue. IO know that because I am using automation (successfully) myself. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 02, 2006 7:43 PM To: Access Developers discussion and problem solving Subject: [AccessD] Access and Excel issue Dear List: According to this: http://winks.office-watch.com/9/templates/feat.aspx?articleid=7&zoneid=2 Some of the functionality between Access and Excel is disabled in 2002 and 2003 SP2. I have a client where I create a rather elaborate worksheet from a template in Access and push data out to the Excel worksheet, then open it up for editing. When the worksheet is saved, I have a lot of code behind the worksheet that pushes the data back into the Access tables. The worksheets are not linked however. I use automation to do the data transfers. Am I in trouble here or did I inadvertently dodge this bullet? The article refers to linked tables and spreadsheets. TIA Rocky -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Thu Mar 2 22:21:01 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 2 Mar 2006 23:21:01 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: Message-ID: <000701c63e79$e2a29ab0$647aa8c0@ColbyM6805> >But you also use the dot operator to refer to members of a collection, and the controls are members of the parent object's controls collection. I'm not following you on this one. Can you give an example? John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Thursday, March 02, 2006 8:30 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions But you also use the dot operator to refer to members of a collection, and the controls are members of the parent object's controls collection. ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 4:47 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions >Using Dot to refer to properties is known to cause weirdnesses. Ooops. Using Dot to refer to Objects can cause weirdnesses. Sorry for the confusion. I can think of at least one exception (kind of) however. To refer to a control on a subform, the syntax is me!SubformControl.Subform!Control. In this case I think that .Subform is a PROPERTY of the subformControl which returns a pointer to an object (the actual loaded subform). So even here Dot is the correct syntax. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 6:55 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions LOL, because it is the wrong syntax and can cause the vba interpreter to get confused and do stupid things. In the early days of Access, me.object was the accepted syntax. Sometime around A97 Microsoft switched to the ! As the "accepted" syntax. Dot is for properties, Bang is for objects. Using Dot to refer to properties is known to cause weirdnesses. John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Thu Mar 2 22:27:18 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 2 Mar 2006 23:27:18 -0500 Subject: [AccessD] Table naming conventions In-Reply-To: <440834E4.22587.A3272B8@stuart.lexacorp.com.pg> Message-ID: <000801c63e7a$c3fa70a0$647aa8c0@ColbyM6805> >I recently had to update a series of A97 applications to XP. I think that the Dot operator referring to controls was supported in A97 but they were already strongly suggesting switching the syntax. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stuart McLachlan Sent: Thursday, March 02, 2006 9:22 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions On 2 Mar 2006 at 18:55, John Colby wrote: > LOL, because it is the wrong syntax and can cause the vba interpreter > to get confused and do stupid things. In the early days of Access, > me.object was the accepted syntax. Sometime around A97 Microsoft > switched to the ! As the "accepted" syntax. Dot is for properties, > Bang is for objects. Using Dot to refer to properties is known to cause weirdnesses. > I recently had to update a series of A97 applications to XP. The original developer had used "Me." in a number of places to refer to controls and I had to change then to "Me!" before the upgraded app would compile. Unfortunately, I can't rememer the exact error that they were throwing when I tried to compile. -- Stuart -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bchacc at san.rr.com Thu Mar 2 22:27:20 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 02 Mar 2006 20:27:20 -0800 Subject: [AccessD] Access and Excel issue In-Reply-To: <000601c63e79$896a2e40$647aa8c0@ColbyM6805> References: <000601c63e79$896a2e40$647aa8c0@ColbyM6805> Message-ID: <4407C5A8.2060406@san.rr.com> In A2K3 SP2? Rocky John Colby wrote: > I think the issue is specifically that linking spreadsheets has been > disabled. If you use automation then you don't have an issue. IO know that > because I am using automation (successfully) myself. > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - > Beach Access Software > Sent: Thursday, March 02, 2006 7:43 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Access and Excel issue > > Dear List: > > According to this: > > http://winks.office-watch.com/9/templates/feat.aspx?articleid=7&zoneid=2 > > > Some of the functionality between Access and Excel is disabled in 2002 and > 2003 SP2. > > > I have a client where I create a rather elaborate worksheet from a > template in Access and push data out to the Excel worksheet, then open > it up for editing. When the worksheet is saved, I have a lot of code > behind the worksheet that pushes the data back into the Access tables. > The worksheets are not linked however. I use automation to do the data > transfers. Am I in trouble here or did I inadvertently dodge this > bullet? The article refers to linked tables and spreadsheets. > > TIA > > Rocky > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From jwcolby at ColbyConsulting.com Thu Mar 2 23:16:59 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Fri, 3 Mar 2006 00:16:59 -0500 Subject: [AccessD] Access and Excel issue In-Reply-To: <4407C5A8.2060406@san.rr.com> Message-ID: <000f01c63e81$b3bd78c0$647aa8c0@ColbyM6805> No, in AXP (2002) but service packs updated AXP (and maybe even before) and above to prevent links from working. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 02, 2006 11:27 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access and Excel issue In A2K3 SP2? Rocky John Colby wrote: > I think the issue is specifically that linking spreadsheets has been > disabled. If you use automation then you don't have an issue. IO > know that because I am using automation (successfully) myself. > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky > Smolin - Beach Access Software > Sent: Thursday, March 02, 2006 7:43 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Access and Excel issue > > Dear List: > > According to this: > > http://winks.office-watch.com/9/templates/feat.aspx?articleid=7&zoneid > =2 > d=2> > > Some of the functionality between Access and Excel is disabled in 2002 > and > 2003 SP2. > > > I have a client where I create a rather elaborate worksheet from a > template in Access and push data out to the Excel worksheet, then open > it up for editing. When the worksheet is saved, I have a lot of code > behind the worksheet that pushes the data back into the Access tables. > The worksheets are not linked however. I use automation to do the > data transfers. Am I in trouble here or did I inadvertently dodge > this bullet? The article refers to linked tables and spreadsheets. > > TIA > > Rocky > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From martyconnelly at shaw.ca Thu Mar 2 23:44:17 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Thu, 02 Mar 2006 21:44:17 -0800 Subject: [AccessD] OT - Action Pack References: <200603022159.k22Lxtj84166@ultradnt.com> Message-ID: <4407D7B1.3010104@shaw.ca> In Canada you can create a corporation with a 7 digit number ie, 1098886 Co. It saves you the time and price of doing a name search that is unique. I know lawyers who keep a half dozen numbered companies in their drawer and can set one up prearranged in half an hour via a share purchase. You see these done to conceal obvious ownership or for quick real estate deals. Steve Conklin wrote: >Hey Marty, >Uh, what's a numbered corp.? >This is their 2nd year, they renewed in January. Is there any possibility >that MS will ever say "you're not an IT firm" and refuse to let them renew, >is my question. > >Steve > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of MartyConnelly >Sent: Thursday, March 02, 2006 4:14 PM >To: Access Developers discussion and problem solving >Subject: Re: [AccessD] OT - Action Pack > >I have seen Action Packs assigned to numbered corporations. > >But if they don't renew the yearly subscriptions, security fix updates may >not be available from MS update sites.. > > >Steve Conklin wrote: > > > >>It's in the client's corporate name, which includes the word "consulting" >>but not "real estate". >> >>Steve >> >>-----Original Message----- >>From: accessd-bounces at databaseadvisors.com >>[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of William Hindman >>Sent: Thursday, March 02, 2006 2:41 PM >>To: Access Developers discussion and problem solving >>Subject: Re: [AccessD] OT - Action Pack >> >>...is the Action Pak subscription actually in their name or the former >>consultant's? >> >>William >> >>----- Original Message ----- >>From: "Steve Conklin" >>To: "'Access Developers discussion and problem solving'" >> >>Sent: Thursday, March 02, 2006 2:08 PM >>Subject: Re: [AccessD] OT - Action Pack >> >> >> >> >> >> >>>Charlotte, I agree 100%. Their previous consultant sent them on this >>>path. >>>When I asked for their W2k3 CD, that's when I saw Action Pack. I kept >>>quiet >>>(temporarily); I wanted to post here first to try to begin to assess their >>>risk. >>> >>>Steve >>> >>> >>>-----Original Message----- >>>From: accessd-bounces at databaseadvisors.com >>>[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust >>>Sent: Thursday, March 02, 2006 1:44 PM >>>To: Access Developers discussion and problem solving >>>Subject: Re: [AccessD] OT - Action Pack >>> >>>Well, if MS ever decides to close that loophole, the EULA requires that >>>they >>>uninstall the software and any of its supporting files from all their >>>machines. I've heard of people cheating like this, it's like those who >>>buy >>>the Academic edition even though it isn't licensed for commercial use. If >>>we aren't honest about our licenses, how can our >>>clients/customers/employees >>>trust us? >>> >>>Charlotte Foust >>> >>> >>>-----Original Message----- >>>From: accessd-bounces at databaseadvisors.com >>>[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Conklin >>>Sent: Thursday, March 02, 2006 10:20 AM >>>To: 'Access Developers discussion and problem solving' >>>Subject: Re: [AccessD] OT - Action Pack >>> >>> >>>Thanks for the link. But there's no way this real estate office does any >>>influencing over anything computer related. There's no stretching the >>>definition of their business to fit any of that, so that's why I wanted to >>>know if there is any risk of them losing theses licenses. >>>Seems to me that they have found a loophole that any business with <= 10 >>>PC's and 1 Server can exploit. >>> >>> >>>Steve >>> >>> >>>-----Original Message----- >>>From: accessd-bounces at databaseadvisors.com >>>[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gary Kjos >>>Sent: Thursday, March 02, 2006 12:38 PM >>>To: Access Developers discussion and problem solving >>>Subject: Re: [AccessD] OT - Action Pack >>> >>>https://partner.microsoft.com/40009735 >>> >>>has all the info. >>> >>>here's a quote from the FAQ >>>--------------------------------------- >>> >>>Who can subscribe to the Microsoft Action Pack? >>>The Microsoft Action Pack Subscription is available exclusively to >>>consultants, value-added resellers, value-added providers, system >>>integrators, developers, system builders, hosts, and service providers who >>>are enrolled as Registered Members in the Microsoft Partner Program and >>>who >>>distribute or influence the acquisition of Microsoft software and >>>Microsoft-based solutions by end customers. >>> >>>---------------------------------- >>> >>>that describes a pretty broad group. "influence the aquisition of >>>Microsoft >>>software and Microsoft-bases solutions by end customers" can include a >>>whole >>>lot of people and businesses. >>> >>>I think Microsoft is glad to have them paying something every year. >>> >>>GK >>> >>> >>>On 3/2/06, Steve Conklin wrote: >>> >>> >>> >>> >>>>I have picked up a new client, mostly for server work, and when I >>>>asked him if his Windows XP and Server 2003 were properly licensed, he >>>> >>>> >>>>showed me an Action Pack. This is a real estate office, but >>>>apparently because the word "consulting" is in the company name, it >>>>was able to be registered to whatever level necessary to get an Action >>>> >>>> >>>> >>>> >>>Pack. >>> >>> >>> >>> >>>>The question is, is there any long term risk associated with this? >>>>Are these things re-newable an unlimited number of times? Will MS >>>>ever ask to see a list of how many clients you have influenced to buy >>>>their products through your Ac.Pack? Or did this company find a >>>>loophole you could drive a truck through? >>>> >>>>I know there are a few Action Packers out there; I am an MSDN-U >>>>myself, so I don't any details about this thing. >>>> >>>>Thanks for any insight, >>>>Steve >>>> >>>> >>>> >>>> >>>> >>> >>> >>> >>> >> >> >> >> > > > -- Marty Connelly Victoria, B.C. Canada From Gustav at cactus.dk Fri Mar 3 04:21:20 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 03 Mar 2006 11:21:20 +0100 Subject: [AccessD] Access and Excel issue Message-ID: Hi Rocky You can still link and reading is possible but update and append will be disabled. /gustav >>> jwcolby at ColbyConsulting.com 03-03-2006 05:18 >>> I think the issue is specifically that linking spreadsheets has been disabled. If you use automation then you don't have an issue. IO know that because I am using automation (successfully) myself. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 02, 2006 7:43 PM To: Access Developers discussion and problem solving Subject: [AccessD] Access and Excel issue Dear List: According to this: http://winks.office-watch.com/9/templates/feat.aspx?articleid=7&zoneid=2 Some of the functionality between Access and Excel is disabled in 2002 and 2003 SP2. I have a client where I create a rather elaborate worksheet from a template in Access and push data out to the Excel worksheet, then open it up for editing. When the worksheet is saved, I have a lot of code behind the worksheet that pushes the data back into the Access tables. The worksheets are not linked however. I use automation to do the data transfers. Am I in trouble here or did I inadvertently dodge this bullet? The article refers to linked tables and spreadsheets. TIA Rocky From tinanfields at torchlake.com Fri Mar 3 06:46:23 2006 From: tinanfields at torchlake.com (Tina Norris Fields) Date: Fri, 03 Mar 2006 07:46:23 -0500 Subject: [AccessD] OT: farewell References: <20060302155328.19996.qmail@web50115.mail.yahoo.com> Message-ID: <44083A9F.9010402@torchlake.com> Roz, Just read the postings this morning - sorry to see you leave here, but thrilled for your new opportunities. We'll certainly all be waiting and watching for your novels. Enjoy the studies! Godspeed, Tina Roz Clarke wrote: >Hi guys. > >Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. > >Those who ever noticed me at all, may have noticed that I haven't posted to Accessd in the last 6 >months. I am no longer working in IT, having given up my job and taken up a Masters in Creative >Writing. Whilst I may have the occasional web project to work on, I have no plans to return to >development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing >all your familiar names in my inbox every day. > >So I am leaving the list and standing down as a moderator. > >It's been a good ten years. Not only do I owe a great deal to the list, which taught me everything >I know about database development and a lot more besides, but I've had tears and laughter along >the way and a fantastic trip to Germany into the bargain. > >Thank you all for being invaluable 'virtual colleagues', but above all for being friends. > >Love and hugs > >Roz > >PS what's the OT list like these days? ;) > > > >___________________________________________________________ >NEW Yahoo! Cars - sell your car and browse thousands of new and used cars online! http://uk.cars.yahoo.com/ > > From cfoust at infostatsystems.com Fri Mar 3 10:06:49 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 3 Mar 2006 08:06:49 -0800 Subject: [AccessD] Table naming conventions Message-ID: For Each ctl in Me.Controls ... Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 8:21 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions >But you also use the dot operator to refer to members of a collection, >and the controls are members of the parent object's controls collection. I'm not following you on this one. Can you give an example? John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Thursday, March 02, 2006 8:30 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions But you also use the dot operator to refer to members of a collection, and the controls are members of the parent object's controls collection. ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 4:47 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions >Using Dot to refer to properties is known to cause weirdnesses. Ooops. Using Dot to refer to Objects can cause weirdnesses. Sorry for the confusion. I can think of at least one exception (kind of) however. To refer to a control on a subform, the syntax is me!SubformControl.Subform!Control. In this case I think that .Subform is a PROPERTY of the subformControl which returns a pointer to an object (the actual loaded subform). So even here Dot is the correct syntax. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 6:55 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions LOL, because it is the wrong syntax and can cause the vba interpreter to get confused and do stupid things. In the early days of Access, me.object was the accepted syntax. Sometime around A97 Microsoft switched to the ! As the "accepted" syntax. Dot is for properties, Bang is for objects. Using Dot to refer to properties is known to cause weirdnesses. John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Lambert.Heenan at AIG.com Fri Mar 3 10:35:41 2006 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Fri, 3 Mar 2006 11:35:41 -0500 Subject: [AccessD] Table naming conventions Message-ID: <1D7828CDB8350747AFE9D69E0E90DA1F1E2EAE7F@xlivmbx21.aig.com> " Me.Controls" is not referring to the members of the Controls collection. It is referring to the Controls collection itself, which is property of a Form object. So Me.Controls is a legitimate use of the dot operator to access a property. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Friday, March 03, 2006 11:07 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions For Each ctl in Me.Controls ... Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 8:21 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions >But you also use the dot operator to refer to members of a collection, >and the controls are members of the parent object's controls collection. I'm not following you on this one. Can you give an example? John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Thursday, March 02, 2006 8:30 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions But you also use the dot operator to refer to members of a collection, and the controls are members of the parent object's controls collection. ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 4:47 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions >Using Dot to refer to properties is known to cause weirdnesses. Ooops. Using Dot to refer to Objects can cause weirdnesses. Sorry for the confusion. I can think of at least one exception (kind of) however. To refer to a control on a subform, the syntax is me!SubformControl.Subform!Control. In this case I think that .Subform is a PROPERTY of the subformControl which returns a pointer to an object (the actual loaded subform). So even here Dot is the correct syntax. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 6:55 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions LOL, because it is the wrong syntax and can cause the vba interpreter to get confused and do stupid things. In the early days of Access, me.object was the accepted syntax. Sometime around A97 Microsoft switched to the ! As the "accepted" syntax. Dot is for properties, Bang is for objects. Using Dot to refer to properties is known to cause weirdnesses. John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jdemarco at hudsonhealthplan.org Fri Mar 3 10:50:32 2006 From: Jdemarco at hudsonhealthplan.org (Jim DeMarco) Date: Fri, 3 Mar 2006 11:50:32 -0500 Subject: [AccessD] A2000: XML Q Message-ID: <08F823FD83787D4BA0B99CA580AD3C7402DE6E78@TTNEXCHCL2.hshhp.com> Darren, We've been using this: But I'm pretty sure you can get by with just: Once you navigate the file below this processing instruction your on your own as far as defining elements etc. May I ask why the concern? HTH Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darren DICK Sent: Wednesday, March 01, 2006 11:19 PM To: AccessD Subject: [AccessD] A2000: XML Q Hello all Cross Posted to dba_SQL List What is the minimum header information i need to include before 'my data' starts to get a 'Well formed' xml doc? Eg the stuff that looks like Thanks again William. Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of William Hindman Sent: Wednesday, March 01, 2006 8:50 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Converting to 2003 ...my mdbs no longer bloat the way they did in AXP ...but I can find no mention of a fix in any SP "problems resolved" list ...they just no longer do the bad thing as badly as they once did ...hth :))) William ----- Original Message ----- From: "Jim DeMarco" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 01, 2006 9:20 AM Subject: Re: [AccessD] Converting to 2003 > While I can certainly understand the how mere mention of Gustav's name > might instill respect in an application I'm not quite sure I have an > answer to my question. > > Was the bloating issue fixed or will I have to insert Gustav into my > conversion process? ;-) > > Thanks, > > Jim D. > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of William > Hindman > Sent: Tuesday, February 28, 2006 9:14 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Converting to 2003 > > ...your blessing or MS actually fixing an Access bug ...both are > miracles in my book :) > > William > > ----- Original Message ----- > From: "Gustav Brock" > To: > Sent: Tuesday, February 28, 2006 4:33 AM > Subject: Re: [AccessD] Converting to 2003 > > >> Hi William >> >> "don't particularly care" ... well, that hurts - after all my efforts! >> >> Actually, we have two clients - both female, wonder why - who claim > that >> more than once they have seen issues vanish just by calling me. I > didn't >> do anything - no advice or problem solving - other than devoting my >> attention. And my middle name isn't Jesus. Maybe your mdbs have been > on my >> mind too! >> >> /gustav >> >>>>> wdhindman at bellsouth.net 28-02-2006 00:39 >>> >> ...either its been fixed or Gustav blessed all my mdbs ...I don't >> particularly care which :) >> >> William >> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > > ************************************************************************ *********** > "This electronic message is intended to be for the use only of the named > recipient, and may contain information from Hudson Health Plan (HHP) that > is confidential or privileged. If you are not the intended recipient, you > are hereby notified that any disclosure, copying, distribution or use of > the contents of this message is strictly prohibited. If you have received > this message in error or are not the named recipient, please notify us > immediately, either by contacting the sender at the electronic mail > address noted above or calling HHP at (914) 631-1611. If you are not the > intended recipient, please do not forward this email to anyone, and delete > and destroy all copies of this message. Thank You". > ************************************************************************ *********** > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************************** "This electronic message is intended to be for the use only of the named recipient, and may contain information from Hudson Health Plan (HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". *********************************************************************************** From john at winhaven.net Fri Mar 3 11:45:37 2006 From: john at winhaven.net (John Bartow) Date: Fri, 3 Mar 2006 11:45:37 -0600 Subject: [AccessD] OT: farewell In-Reply-To: <20060302155328.19996.qmail@web50115.mail.yahoo.com> Message-ID: <02b701c63eea$48312ed0$7201a8c0@ScuzzPaq> Hi Roz, Best wishes in your new endeavors, see you over on OT! John B. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Roz Clarke Sent: Thursday, March 02, 2006 9:53 AM To: Access Developers discussion and problem solving Subject: [AccessD] OT: farewell From cfoust at infostatsystems.com Fri Mar 3 12:30:24 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 3 Mar 2006 10:30:24 -0800 Subject: [AccessD] Table naming conventions Message-ID: Yes, I understand that, Lambert. But when you create a custom collection object and you refer to the members of that collection, you use the dot operator, not the bang. I didn't have a handy example, so I fell back on what I posted to illustrate. Arrays are much easier to work with, but collections have a charm all their own. ;o} Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert Sent: Friday, March 03, 2006 8:36 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions " Me.Controls" is not referring to the members of the Controls collection. It is referring to the Controls collection itself, which is property of a Form object. So Me.Controls is a legitimate use of the dot operator to access a property. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Friday, March 03, 2006 11:07 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions For Each ctl in Me.Controls ... Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 8:21 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions >But you also use the dot operator to refer to members of a collection, >and the controls are members of the parent object's controls collection. I'm not following you on this one. Can you give an example? John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Thursday, March 02, 2006 8:30 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions But you also use the dot operator to refer to members of a collection, and the controls are members of the parent object's controls collection. ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 4:47 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions >Using Dot to refer to properties is known to cause weirdnesses. Ooops. Using Dot to refer to Objects can cause weirdnesses. Sorry for the confusion. I can think of at least one exception (kind of) however. To refer to a control on a subform, the syntax is me!SubformControl.Subform!Control. In this case I think that .Subform is a PROPERTY of the subformControl which returns a pointer to an object (the actual loaded subform). So even here Dot is the correct syntax. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 6:55 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions LOL, because it is the wrong syntax and can cause the vba interpreter to get confused and do stupid things. In the early days of Access, me.object was the accepted syntax. Sometime around A97 Microsoft switched to the ! As the "accepted" syntax. Dot is for properties, Bang is for objects. Using Dot to refer to properties is known to cause weirdnesses. John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Lambert.Heenan at AIG.com Fri Mar 3 13:44:10 2006 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Fri, 3 Mar 2006 14:44:10 -0500 Subject: [AccessD] Table naming conventions Message-ID: <1D7828CDB8350747AFE9D69E0E90DA1F1E2EAF5D@xlivmbx21.aig.com> Perhaps part of the confusion is caused by terminology. In Access land, objects have "Properties" and "Methods". There is no such thing as a "Member", except in the informal sense which means either a Property or a Method. Lambert :-) -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Friday, March 03, 2006 1:30 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions Yes, I understand that, Lambert. But when you create a custom collection object and you refer to the members of that collection, you use the dot operator, not the bang. I didn't have a handy example, so I fell back on what I posted to illustrate. Arrays are much easier to work with, but collections have a charm all their own. ;o} Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert Sent: Friday, March 03, 2006 8:36 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions " Me.Controls" is not referring to the members of the Controls collection. It is referring to the Controls collection itself, which is property of a Form object. So Me.Controls is a legitimate use of the dot operator to access a property. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Friday, March 03, 2006 11:07 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions For Each ctl in Me.Controls ... Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 8:21 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions >But you also use the dot operator to refer to members of a collection, >and the controls are members of the parent object's controls collection. I'm not following you on this one. Can you give an example? John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Thursday, March 02, 2006 8:30 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Table naming conventions But you also use the dot operator to refer to members of a collection, and the controls are members of the parent object's controls collection. ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 4:47 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions >Using Dot to refer to properties is known to cause weirdnesses. Ooops. Using Dot to refer to Objects can cause weirdnesses. Sorry for the confusion. I can think of at least one exception (kind of) however. To refer to a control on a subform, the syntax is me!SubformControl.Subform!Control. In this case I think that .Subform is a PROPERTY of the subformControl which returns a pointer to an object (the actual loaded subform). So even here Dot is the correct syntax. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 02, 2006 6:55 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Table naming conventions LOL, because it is the wrong syntax and can cause the vba interpreter to get confused and do stupid things. In the early days of Access, me.object was the accepted syntax. Sometime around A97 Microsoft switched to the ! As the "accepted" syntax. Dot is for properties, Bang is for objects. Using Dot to refer to properties is known to cause weirdnesses. John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From martyconnelly at shaw.ca Fri Mar 3 13:59:45 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Fri, 03 Mar 2006 11:59:45 -0800 Subject: [AccessD] A2000: XML Q References: <08F823FD83787D4BA0B99CA580AD3C7402DE6E78@TTNEXCHCL2.hshhp.com> Message-ID: <4408A031.30605@shaw.ca> Just some thoughts on this The xml PI ( processing instruction) statement. is not required if the xml file is UTF-8 or UTF-16, ie. file starts with a proper BOM at least for MS XML parsers. I wish MS would spell out, all of it's XML defaults, They assume developers know by osmosis. Watch out for encoding statements, it assumes you know where the file is coming from, if it's not specified then, the parser assumes UTF-8 and or will do a BOM check. If you add an encoding as above you are stating the file is originally created as ANSI "iso-8859-1" western european. Any characters outside this range will be non-valid or may not be interpeted correctly. It used to do funny things to Euro and UK pound symbols. You can however change the PI on the fly with statements like pi = xmlDoc.createProcessingInstruction("xml", "version=\"1.0\""); xmlDoc.insertBefore(pi, xmlDoc.childNodes.item(0)); If you edit an xml file in notepad watch out whether you save as ANSI or UTF-8 (unicode). May cause grief by changing the BOM In most cases US users will get away with this type of encoding iso-8859-1, but if you start bringing in files from international sites or Unix boxes this will give you problems. See info on xml encodings. http://www.topxml.com/code/default.asp?p=3&id=v20010810181946 There are quick and dirty ways to bulk change encodings via ADO stream charset's, I posted some code in the archives. There is a difference between well-formed and valid XML. Well-formed is a syntax check on XML (ie. matching tags) Valid also means that XML data entities and attributes comply with an xml schema or DTD. Here is some validation code that might help you out, the special error code displays the xml character in error I hated trying to count the error line and position number in a file to determine the character in error. There is also a routine to check the files BOM marker. 'ValidXMLCheck "C:\XML\Gil Encodings\encUTF8_noBOM.xml" Sub ValidXMLCheck(strxmlfilepath As String) Dim xmlMessage As MSXML2.DOMDocument40 Dim oXMLError As IXMLDOMParseError Dim lngErrCode As Long Set xmlMessage = New MSXML2.DOMDocument40 xmlMessage.async = False xmlMessage.validateOnParse = True 'true by default xmlMessage.resolveExternals = False 'Set xmlMessage.schemas = xmlSchema 'After loading the XML document, call the Validate method of the 'DOMDocument. If there is an error validating against the schema, there will be a 'parse Error: xmlMessage.Load (strxmlfilepath) lngErrCode = xmlMessage.validate() If xmlMessage.parseError.errorCode <> 0 Then Debug.Print " Reason: " & xmlMessage.parseError.reason Set oXMLError = xmlMessage.parseError reportParseError oXMLError Else Debug.Print strxmlfilepath & " file OK" End If End Sub Public Function reportParseError(err As IXMLDOMParseError) 'this is not setup to count tabs used as whitespace Dim s As String Dim r As String Dim i As Long s = "" For i = 1 To err.linepos - 1 s = s & " " Next r = "XML Error loading " & err.url & " * " & err.reason Debug.Print r 'show character postion of error; tired of counting on screen If (err.Line > 0) Then r = "at line " & err.Line & ", character " & err.linepos & vbCrLf & _ err.srcText & vbCrLf & s & "^" End If Debug.Print r Debug.Print "url=" & err.url & vbCrLf End Function Sub CheckBOM(Optional strFileIn As Variant, Optional strIn As Variant) 'checkbom "C:\XML\Gil Encodings\encUTF8_NoDecl.xml" On Error GoTo Err_handler Dim strInputData As String * 4 Dim lpBuffer() As Byte Dim intFreeFile As Integer If Not IsMissing(strFileIn) Then intFreeFile = FreeFile Open strFileIn For Binary Access Read Lock Read As #intFreeFile Len = 4 ReDim lpBuffer(4) Get #intFreeFile, , lpBuffer Close #intFreeFile ElseIf Not IsMissing(strIn) Then 'Can't makes this work since VBA is always converting the string to UTF-16LE lpBuffer = Left$(strIn, 4) Else MsgBox "Nothing To Do" Exit Sub End If If lpBuffer(0) = 255 And lpBuffer(1) = 254 Then Debug.Print "File is UTF-16 Little Endian" ElseIf lpBuffer(0) = 254 And lpBuffer(1) = 255 Then Debug.Print "File is UTF-16 Big Endian" ElseIf lpBuffer(0) = 239 And lpBuffer(1) = 187 And lpBuffer(2) = 191 Then Debug.Print "File is UTF-8" 'Start trying to figure out by other means this will only work on xml files that start with "Darren, > >We've been using this: > > > >But I'm pretty sure you can get by with just: > > > >Once you navigate the file below this processing instruction your on >your own as far as defining elements etc. > >May I ask why the concern? > >HTH > >Jim > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darren DICK >Sent: Wednesday, March 01, 2006 11:19 PM >To: AccessD >Subject: [AccessD] A2000: XML Q > >Hello all >Cross Posted to dba_SQL List >What is the minimum header information i need to include before 'my >data' starts to get a 'Well formed' xml doc? >Eg the stuff that looks like >xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > > > >etc etc > > > >many thanks > >DD > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com > > >*********************************************************************************** >"This electronic message is intended to be for the use only of the named recipient, and may contain information from Hudson Health Plan (HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". >*********************************************************************************** > > > -- Marty Connelly Victoria, B.C. Canada From rbgajewski at adelphia.net Fri Mar 3 17:07:53 2006 From: rbgajewski at adelphia.net (Bob Gajewski) Date: Fri, 3 Mar 2006 18:07:53 -0500 Subject: [AccessD] OT: farewell In-Reply-To: <44083A9F.9010402@torchlake.com> Message-ID: <008a01c63f17$4d138380$bd00a8c0@DG1P2N21> Roz Thanks for all of the help, witticism and friendship. We may have never communicated directly, but your presence and contributions here will not be forgotten. Best luck in your 'access-less' life! :) Regards, Bob Gajewski Roz Clarke wrote: >Hi guys. > >Sorry to bust up your Thursday with an OT goodbye thread, but the moment is upon me. > >Those who ever noticed me at all, may have noticed that I haven't >posted to Accessd in the last 6 months. I am no longer working in IT, >having given up my job and taken up a Masters in Creative Writing. >Whilst I may have the occasional web project to work on, I have no >plans to return to development career-wise. The fact is, I only really stayed subscribed for the comfort of seeing all your familiar names in my inbox every day. > >So I am leaving the list and standing down as a moderator. > >It's been a good ten years. Not only do I owe a great deal to the list, >which taught me everything I know about database development and a lot >more besides, but I've had tears and laughter along the way and a fantastic trip to Germany into the bargain. > >Thank you all for being invaluable 'virtual colleagues', but above all for being friends. > >Love and hugs > >Roz > >PS what's the OT list like these days? ;) > > > >___________________________________________________________ >NEW Yahoo! Cars - sell your car and browse thousands of new and used >cars online! http://uk.cars.yahoo.com/ > > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From artful at rogers.com Fri Mar 3 22:32:22 2006 From: artful at rogers.com (Arthur Fuller) Date: Fri, 3 Mar 2006 23:32:22 -0500 Subject: [AccessD] Code to Copy a query to Excel and Open said file? In-Reply-To: <008a01c63f17$4d138380$bd00a8c0@DG1P2N21> Message-ID: <051b01c63f44$a3964c60$8e01a8c0@rock> I want to open an Access query and have its contents sent to an Excel file, and have Excel open automatically with said file visible. I have played around a little with TransferSpreadsheet, and if this method works, then I am clearly doing something wrong. I have a sample file resembling the desired result in Excel, so I could use that as a template in the "Word" sense, but I need some guidance as to how to achieve this, because my experiments have all failed. I checked Helen Feddema's site but her Access->Excel heading says "Coming Soon". Have you any suggestions in the interim? TIA, Arthur From stuart at lexacorp.com.pg Sat Mar 4 01:28:48 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Sat, 04 Mar 2006 17:28:48 +1000 Subject: [AccessD] Code to Copy a query to Excel and Open said file? In-Reply-To: <051b01c63f44$a3964c60$8e01a8c0@rock> References: <008a01c63f17$4d138380$bd00a8c0@DG1P2N21> Message-ID: <4409CE50.18872.1071C059@stuart.lexacorp.com.pg> On 3 Mar 2006 at 23:32, Arthur Fuller wrote: > I want to open an Access query and have its contents sent to an Excel file, > and have Excel open automatically with said file visible. DoCmd.OutputTo acOutputQuery, "qryTest", acFormatXLS, "Test.XLS", True-- Stuart From darrend at nimble.com.au Sat Mar 4 05:54:58 2006 From: darrend at nimble.com.au (Darren DICK) Date: Sat, 4 Mar 2006 22:54:58 +1100 Subject: [AccessD] A2000: XML Q In-Reply-To: <08F823FD83787D4BA0B99CA580AD3C7402DE6E78@TTNEXCHCL2.hshhp.com> Message-ID: <20060304115500.PBUG16720.omta01sl.mx.bigpond.com@DENZILLAP> Hi Jim Thanks for the response Just starting to output XML stuff to be read by various sources all from SQL And maybe Access Thanks Darren ------------------------------ T: 0424 696 433 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim DeMarco Sent: Saturday, 4 March 2006 3:51 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] A2000: XML Q Darren, We've been using this: But I'm pretty sure you can get by with just: Once you navigate the file below this processing instruction your on your own as far as defining elements etc. May I ask why the concern? HTH Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darren DICK Sent: Wednesday, March 01, 2006 11:19 PM To: AccessD Subject: [AccessD] A2000: XML Q Hello all Cross Posted to dba_SQL List What is the minimum header information i need to include before 'my data' starts to get a 'Well formed' xml doc? Eg the stuff that looks like Message-ID: <20060304115717.EFSG1358.omta03sl.mx.bigpond.com@DENZILLAP> Hi Marty Thanks for the response Way over my head I have forwarded it to my SQL gurus (Soon to be XML gurus I guess) Many thanks Darren ------------------------------ T: 0424 696 433 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of MartyConnelly Sent: Saturday, 4 March 2006 7:00 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] A2000: XML Q Just some thoughts on this The xml PI ( processing instruction) statement. is not required if the xml file is UTF-8 or UTF-16, ie. file starts with a proper BOM at least for MS XML parsers. I wish MS would spell out, all of it's XML defaults, They assume developers know by osmosis. Watch out for encoding statements, it assumes you know where the file is coming from, if it's not specified then, the parser assumes UTF-8 and or will do a BOM check. If you add an encoding as above you are stating the file is originally created as ANSI "iso-8859-1" western european. Any characters outside this range will be non-valid or may not be interpeted correctly. It used to do funny things to Euro and UK pound symbols. You can however change the PI on the fly with statements like pi = xmlDoc.createProcessingInstruction("xml", "version=\"1.0\""); xmlDoc.insertBefore(pi, xmlDoc.childNodes.item(0)); If you edit an xml file in notepad watch out whether you save as ANSI or UTF-8 (unicode). May cause grief by changing the BOM In most cases US users will get away with this type of encoding iso-8859-1, but if you start bringing in files from international sites or Unix boxes this will give you problems. See info on xml encodings. http://www.topxml.com/code/default.asp?p=3&id=v20010810181946 There are quick and dirty ways to bulk change encodings via ADO stream charset's, I posted some code in the archives. There is a difference between well-formed and valid XML. Well-formed is a syntax check on XML (ie. matching tags) Valid also means that XML data entities and attributes comply with an xml schema or DTD. Here is some validation code that might help you out, the special error code displays the xml character in error I hated trying to count the error line and position number in a file to determine the character in error. There is also a routine to check the files BOM marker. 'ValidXMLCheck "C:\XML\Gil Encodings\encUTF8_noBOM.xml" Sub ValidXMLCheck(strxmlfilepath As String) Dim xmlMessage As MSXML2.DOMDocument40 Dim oXMLError As IXMLDOMParseError Dim lngErrCode As Long Set xmlMessage = New MSXML2.DOMDocument40 xmlMessage.async = False xmlMessage.validateOnParse = True 'true by default xmlMessage.resolveExternals = False 'Set xmlMessage.schemas = xmlSchema 'After loading the XML document, call the Validate method of the 'DOMDocument. If there is an error validating against the schema, there will be a 'parse Error: xmlMessage.Load (strxmlfilepath) lngErrCode = xmlMessage.validate() If xmlMessage.parseError.errorCode <> 0 Then Debug.Print " Reason: " & xmlMessage.parseError.reason Set oXMLError = xmlMessage.parseError reportParseError oXMLError Else Debug.Print strxmlfilepath & " file OK" End If End Sub Public Function reportParseError(err As IXMLDOMParseError) 'this is not setup to count tabs used as whitespace Dim s As String Dim r As String Dim i As Long s = "" For i = 1 To err.linepos - 1 s = s & " " Next r = "XML Error loading " & err.url & " * " & err.reason Debug.Print r 'show character postion of error; tired of counting on screen If (err.Line > 0) Then r = "at line " & err.Line & ", character " & err.linepos & vbCrLf & _ err.srcText & vbCrLf & s & "^" End If Debug.Print r Debug.Print "url=" & err.url & vbCrLf End Function Sub CheckBOM(Optional strFileIn As Variant, Optional strIn As Variant) 'checkbom "C:\XML\Gil Encodings\encUTF8_NoDecl.xml" On Error GoTo Err_handler Dim strInputData As String * 4 Dim lpBuffer() As Byte Dim intFreeFile As Integer If Not IsMissing(strFileIn) Then intFreeFile = FreeFile Open strFileIn For Binary Access Read Lock Read As #intFreeFile Len = 4 ReDim lpBuffer(4) Get #intFreeFile, , lpBuffer Close #intFreeFile ElseIf Not IsMissing(strIn) Then 'Can't makes this work since VBA is always converting the string to UTF-16LE lpBuffer = Left$(strIn, 4) Else MsgBox "Nothing To Do" Exit Sub End If If lpBuffer(0) = 255 And lpBuffer(1) = 254 Then Debug.Print "File is UTF-16 Little Endian" ElseIf lpBuffer(0) = 254 And lpBuffer(1) = 255 Then Debug.Print "File is UTF-16 Big Endian" ElseIf lpBuffer(0) = 239 And lpBuffer(1) = 187 And lpBuffer(2) = 191 Then Debug.Print "File is UTF-8" 'Start trying to figure out by other means this will only work on xml files that start with "Darren, > >We've been using this: > > > >But I'm pretty sure you can get by with just: > > > >Once you navigate the file below this processing instruction your on >your own as far as defining elements etc. > >May I ask why the concern? > >HTH > >Jim > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darren DICK >Sent: Wednesday, March 01, 2006 11:19 PM >To: AccessD >Subject: [AccessD] A2000: XML Q > >Hello all >Cross Posted to dba_SQL List >What is the minimum header information i need to include before 'my >data' starts to get a 'Well formed' xml doc? >Eg the stuff that looks like >xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > > > >etc etc > > > >many thanks > >DD > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com > > >*********************************************************************** >************ "This electronic message is intended to be for the use >only of the named recipient, and may contain information from Hudson Health Plan (HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". >*********************************************************************** >************ > > > -- Marty Connelly Victoria, B.C. Canada -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bill_Patten at earthlink.net Sat Mar 4 11:42:55 2006 From: bill_Patten at earthlink.net (Bill Patten) Date: Sat, 4 Mar 2006 09:42:55 -0800 Subject: [AccessD] Code to Copy a query to Excel and Open said file? References: <008a01c63f17$4d138380$bd00a8c0@DG1P2N21> <4409CE50.18872.1071C059@stuart.lexacorp.com.pg> Message-ID: <000601c63fb3$13373980$6501a8c0@BPCS> Stuart, Sometimes the answer to one question creates a solution for another, for example I need to export a simple Excel report once a month or so and have been using functions or stored procedures to do this, this worked and is very simple, no error protection yet just an idea that may help others. Public Function test() Dim rs As New ADODB.Recordset Dim cn As New ADODB.Connection Dim strSQl As String Set cn = CurrentProject.AccessConnection strSQl = "Select * from vUnits where UnitID between 19445 and 19448" rs.Open strSQl, cn, adOpenKeyset, adLockOptimistic DoCmd.OutputTo acOutputServerView, strSQl, acFormatXLS, "C:\test.xls", True End Function I tried to use a recordset in and MDB but that didn't work. Thanks Bill ----- Original Message ----- From: "Stuart McLachlan" To: "Access Developers discussion and problem solving" Sent: Friday, March 03, 2006 11:28 PM Subject: Re: [AccessD] Code to Copy a query to Excel and Open said file? On 3 Mar 2006 at 23:32, Arthur Fuller wrote: > I want to open an Access query and have its contents sent to an Excel > file, > and have Excel open automatically with said file visible. DoCmd.OutputTo acOutputQuery, "qryTest", acFormatXLS, "Test.XLS", True-- Stuart -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From martyconnelly at shaw.ca Sat Mar 4 12:55:48 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Sat, 04 Mar 2006 10:55:48 -0800 Subject: [AccessD] Table naming conventions References: Message-ID: <4409E2B4.7020605@shaw.ca> Long explanation and history of Dot vs Bang from Peter Walker http://www.papwalker.com/ref101/me.html Charlotte Foust wrote: >Yes, I understand that, Lambert. But when you create a custom >collection object and you refer to the members of that collection, you >use the dot operator, not the bang. I didn't have a handy example, so I >fell back on what I posted to illustrate. Arrays are much easier to >work with, but collections have a charm all their own. ;o} > >Charlotte Foust > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, >Lambert >Sent: Friday, March 03, 2006 8:36 AM >To: 'Access Developers discussion and problem solving' >Subject: Re: [AccessD] Table naming conventions > > >" Me.Controls" is not referring to the members of the Controls >collection. It is referring to the Controls collection itself, which is >property of a Form object. > >So Me.Controls is a legitimate use of the dot operator to access a >property. > > >Lambert > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte >Foust >Sent: Friday, March 03, 2006 11:07 AM >To: Access Developers discussion and problem solving >Subject: Re: [AccessD] Table naming conventions > > >For Each ctl in Me.Controls ... > > >Charlotte > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby >Sent: Thursday, March 02, 2006 8:21 PM >To: 'Access Developers discussion and problem solving' >Subject: Re: [AccessD] Table naming conventions > > > > >>But you also use the dot operator to refer to members of a collection, >>and >> >> >the controls are members of the parent object's controls collection. > >I'm not following you on this one. Can you give an example? > >John W. Colby >www.ColbyConsulting.com > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte >Foust >Sent: Thursday, March 02, 2006 8:30 PM >To: Access Developers discussion and problem solving >Subject: Re: [AccessD] Table naming conventions > >But you also use the dot operator to refer to members of a collection, >and the controls are members of the parent object's controls collection. >;o> > >Charlotte Foust > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby >Sent: Thursday, March 02, 2006 4:47 PM >To: 'Access Developers discussion and problem solving' >Subject: Re: [AccessD] Table naming conventions > > > > >>Using Dot to refer to properties is known to cause weirdnesses. >> >> > >Ooops. Using Dot to refer to Objects can cause weirdnesses. > >Sorry for the confusion. > >I can think of at least one exception (kind of) however. To refer to a >control on a subform, the syntax is me!SubformControl.Subform!Control. >In this case I think that .Subform is a PROPERTY of the subformControl >which returns a pointer to an object (the actual loaded subform). So >even here Dot is the correct syntax. > >John W. Colby >www.ColbyConsulting.com > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby >Sent: Thursday, March 02, 2006 6:55 PM >To: 'Access Developers discussion and problem solving' >Subject: Re: [AccessD] Table naming conventions > >LOL, because it is the wrong syntax and can cause the vba interpreter to >get confused and do stupid things. In the early days of Access, >me.object was the accepted syntax. Sometime around A97 Microsoft >switched to the ! As the "accepted" syntax. Dot is for properties, Bang >is for objects. Using Dot to refer to properties is known to cause >weirdnesses. > >John W. Colby >www.ColbyConsulting.com > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com > > > -- Marty Connelly Victoria, B.C. Canada From colin.spence at centrelink.gov.au Sun Mar 5 08:02:32 2006 From: colin.spence at centrelink.gov.au (colin.spence at centrelink.gov.au) Date: Mon, 6 Mar 2006 01:02:32 +1100 Subject: [AccessD] Colin Spence/NSO/CSDA is out of the office. Message-ID: I will be out of the office starting 03/03/2006 and will not return until 20/03/2006. I am on leave for 2 weeks. Please contact Ray Paquola (383146), John Slokan (383292). Also Terry Bissell (383208) ********************************************************************** IMPORTANT: This e-mail is intended for the use of the addressee and may contain information that is confidential, commercially valuable or subject to legal or parliamentary privilege. If you are not the intended recipient you are notified that any review, re-transmission, disclosure, use or dissemination of this communication is strictly prohibited by several Commonwealth Acts of Parliament. If you have received this communication in error please notify the sender immediately and delete all copies of this transmission together with any attachments. ********************************************************************** From viner at EUnet.yu Mon Mar 6 01:27:02 2006 From: viner at EUnet.yu (Ervin Brindza) Date: Mon, 6 Mar 2006 08:27:02 +0100 Subject: [AccessD] Code to Copy a query to Excel and Open said file? References: <051b01c63f44$a3964c60$8e01a8c0@rock> Message-ID: <018001c640ef$60046520$0100a8c0@RazvojErvin> Athur, look at Garry Robinson's 512robinson_SA05l.zip there are a lot of interesting features... E. ----- Original Message ----- From: "Arthur Fuller" To: "'Access Developers discussion and problem solving'" Sent: Saturday, March 04, 2006 5:32 AM Subject: [AccessD] Code to Copy a query to Excel and Open said file? >I want to open an Access query and have its contents sent to an Excel file, > and have Excel open automatically with said file visible. I have played > around a little with TransferSpreadsheet, and if this method works, then I > am clearly doing something wrong. I have a sample file resembling the > desired result in Excel, so I could use that as a template in the "Word" > sense, but I need some guidance as to how to achieve this, because my > experiments have all failed. I checked Helen Feddema's site but her > Access->Excel heading says "Coming Soon". > Have you any suggestions in the interim? > TIA, > Arthur > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From Jim.Hale at FleetPride.com Mon Mar 6 09:03:36 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Mon, 6 Mar 2006 09:03:36 -0600 Subject: [AccessD] Code to Copy a query to Excel and Open said file? Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDA82@corp-es01.fleetpride.com> I am sending you an example database Jim Hale -----Original Message----- From: Arthur Fuller [mailto:artful at rogers.com] Sent: Friday, March 03, 2006 10:32 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Code to Copy a query to Excel and Open said file? I want to open an Access query and have its contents sent to an Excel file, and have Excel open automatically with said file visible. I have played around a little with TransferSpreadsheet, and if this method works, then I am clearly doing something wrong. I have a sample file resembling the desired result in Excel, so I could use that as a template in the "Word" sense, but I need some guidance as to how to achieve this, because my experiments have all failed. I checked Helen Feddema's site but her Access->Excel heading says "Coming Soon". Have you any suggestions in the interim? TIA, Arthur -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From oost at e-business2start.com Mon Mar 6 10:13:52 2006 From: oost at e-business2start.com (E-business2start.com - Marcel Vreuls) Date: Mon, 6 Mar 2006 08:13:52 -0800 Subject: [AccessD] Code to Copy a query to Excel and Open said file? Message-ID: <5c3a9a1fb7331a53a7547b118e11841d@e-business2start.com> Hi Ervin, Do not now if your already solved the problem. I use the function underneed. The clsprogress class is my progress bar but you can delete it or use a own one. If you do not have the sql string you can use the name propertie of the query to get the sql statement .name Regards marcel ? Public Function fncExportNaarExcel(strSQL As String) On Error Resume Next 'ivm het eventueel niet aanwezig zijn van de exporteren query If strSQL = "" Or IsNull(strSQL) Then MsgBox "Er kunnen geen gegevens gevonden worden", vbInformation, pMsgboxHeader Exit Function Else Dim objProgress As New clsProgress Dim daodatabase As DAO.database Set daodatabase = CurrentDb() objProgress.ShowProgress objProgress.TextMsg = "Verzamelen van de gegevens..." daodatabase.QueryDefs.Delete ("Exporteren") objProgress.TextMsg= "Exporteren van de gegevens..." daodatabase.CreateQueryDef "Exporteren", strSQL objProgress.TextMsg = "Starten van Microsoft Excel..." DoCmd.OutputTo acOutputQuery, "Exporteren", acFormatXLS, "c:\export.xls", True objProgress.HideProgress Set objProgress = Nothing End If Exit Function ? Exit_Ooperror: Exit Function Ooperror: Call lci_ErrMsgStd(Name, Err.Number, Err.Description, True) Resume Exit_Ooperror End Function From adtp at airtelbroadband.in Mon Mar 6 11:21:45 2006 From: adtp at airtelbroadband.in (A.D.TEJPAL) Date: Mon, 6 Mar 2006 22:51:45 +0530 Subject: [AccessD] Sub Report not going into Two Columns References: <7.0.1.0.0.20060227175809.01acbe68@dalyn.co.nz><001f01c63b6d$fae e19a0$6101a8c0@50NM721><7.0.1.0.0.20060228110128.01a53410@dalyn.co.nz><0085 01c63c1e$63147b90$5540f63d@pcadt> <7.0.1.0.0.20060301113023.01a446c0@dalyn.co.nz> Message-ID: <005501c64142$7fb3bad0$e00765cb@pcadt> David, It transpires that your report does not deal with a set of records. Instead you are having text boxes (with CanGrow set to "Yes"), having large text content. This situation is not amenable to multicolumn layout. (Granularity for spreading the display across columns is a record). Best wishes, A.D.Tejpal --------------- ----- Original Message ----- From: David Emerson To: Access Developers discussion and problem solving Sent: Wednesday, March 01, 2006 04:14 Subject: Re: [AccessD] Sub Report not going into Two Columns The report is a column of text boxes with the control source being set to a string (eg ="This is a sample string"). Because of the varying size of the strings, and different printers format report text slightly differently, I have set the text boxes to a height of 1, and set the Can Grow property to Yes. When the report is viewed itself the text boxes snake down the first column of the first page, then the second column of the first page, then to the first column of the second page. This is what I want. However, when I use the report as a sub report to another report (along with a number of other sub reports) it stays at one column. The main report page settings (Column Tab) is set to one column (because other reports are full width), column size width 19.5. The sub report page settings (Column tab) is set to 2 columns, row spacing 0, column spacing 0.3, column size width 9, column layout down then across. Changing to across then down has the effect of the sub report not snaking over two columns when run on its own, nor in the main report. David. At 28/02/2006, you wrote: >David, > > It has been stated in your post that there are no records. Yet > it is mentioned that when run as independent report, the two > columns display nicely, filling up two pages. Could you please > clarify this apparent contradiction? > > Various values as actually existing on Columns tab of page set > up dialog box of the report may also please be furnished. If you > are getting two column output in independent report mode, it can be > ensured that you get similar display in subreport mode. > > With Across, then Down (A&D) layout, it is straightforward. > However, in this case, there can be awkward white spaces if the > contents of records across columns do not always measure up to same > number of lines. Down, then Across (D&A) layout overcomes such > drawback but routine adoption of this layout in a subreport puts > everything into one column (even though the original report is > designed for two columns). There is a solution for that too. > >Best wishes, >A.D.Tejpal >--------------- > > ----- Original Message ----- > From: David Emerson > To: Access Developers discussion and problem solving > Sent: Tuesday, February 28, 2006 03:33 > Subject: Re: [AccessD] Sub Report not going into Two Columns > > > Thanks for the reply William. I tried all that with no joy. I might > just have to go to fixed formatting. > > David > > At 27/02/2006, you wrote: > >...best guess is that the width of your design subreport area on > the report is narrower than the width of the two columns in the > subreport when the "can grow" is fully expanded at runtime ...try > decreasing the font size of the columns to verify this is the > problem ...or disable the "can grow" ...hth. > > > >William > > > >----- Original Message ----- > >From: "David Emerson" > >To: ; > >Sent: Monday, February 27, 2006 12:07 AM > >Subject: [AccessD] Sub Report not going into Two Columns> > > > > > Cross Posted Access D, Access L > > > > > > Access XP. > > > > > > I have a report which is a long column of text boxes with the text > > > entered into the control source. Because different printers format > > > reports slightly differently I have made the boxes shorter than the > > > text warrants and have set the can grow property on for all the text > > > boxes. There are no records associated with this report. > > > > > > I have set the Page Setup .. Number of columns to 2 and when > I view the report the text boxes flow over two columns. The full > report is two pages long. > > > > > > However, when I use the report as a subreport for another > main report then the text boxes remain in one column. I have > checked help and it suggests changing the column order to across > then down. I have tried this but it doesn't make any difference (I > guess because there are no records). > > > > > > Apart from physically placing the text boxes in two columns, does > > > anyone know how I can get them to flow properly? > > > > > > Regards > > > > > > David Emerson > > > Dalyn Software Ltd From newsgrps at dalyn.co.nz Mon Mar 6 12:12:54 2006 From: newsgrps at dalyn.co.nz (David Emerson) Date: Tue, 07 Mar 2006 07:12:54 +1300 Subject: [AccessD] Sub Report not going into Two Columns In-Reply-To: <005501c64142$7fb3bad0$e00765cb@pcadt> References: <7.0.1.0.0.20060227175809.01acbe68@dalyn.co.nz> <001f01c63b6d$fae e19a0$6101a8c0@50NM721> <7.0.1.0.0.20060228110128.01a53410@dalyn.co.nz> <0085 01c63c1e$63147b90$5540f63d@pcadt> <7.0.1.0.0.20060301113023.01a446c0@dalyn.co.nz> <005501c64142$7fb3bad0$e00765cb@pcadt> Message-ID: <7.0.1.0.0.20060307070959.01a91848@dalyn.co.nz> Thanks AD. I managed to get around it by positioning the text boxes in two columns and setting their height to what was required to show all the text. CanGrow was turned off because the text was different lengths which meant some boxes in the opposite column would be pushed down and leave gaps. David At 7/03/2006, you wrote: >David, > > It transpires that your report does not deal with a set of > records. Instead you are having text boxes (with CanGrow set to > "Yes"), having large text content. > > This situation is not amenable to multicolumn layout. > (Granularity for spreading the display across columns is a record). > >Best wishes, >A.D.Tejpal >--------------- > > ----- Original Message ----- > From: David Emerson > To: Access Developers discussion and problem solving > Sent: Wednesday, March 01, 2006 04:14 > Subject: Re: [AccessD] Sub Report not going into Two Columns > > > The report is a column of text boxes with the control source being > set to a string (eg ="This is a sample string"). Because of the > varying size of the strings, and different printers format report > text slightly differently, I have set the text boxes to a height of > 1, and set the Can Grow property to Yes. > > When the report is viewed itself the text boxes snake down the first > column of the first page, then the second column of the first page, > then to the first column of the second page. This is what I want. > > However, when I use the report as a sub report to another report > (along with a number of other sub reports) it stays at one column. > > The main report page settings (Column Tab) is set to one column > (because other reports are full width), column size width 19.5. > > The sub report page settings (Column tab) is set to 2 columns, row > spacing 0, column spacing 0.3, column size width 9, column layout > down then across. Changing to across then down has the effect of the > sub report not snaking over two columns when run on its own, nor in > the main report. > > David. > > At 28/02/2006, you wrote: > >David, > > > > It has been stated in your post that there are no records. Yet > > it is mentioned that when run as independent report, the two > > columns display nicely, filling up two pages. Could you please > > clarify this apparent contradiction? > > > > Various values as actually existing on Columns tab of page set > > up dialog box of the report may also please be furnished. If you > > are getting two column output in independent report mode, it can be > > ensured that you get similar display in subreport mode. > > > > With Across, then Down (A&D) layout, it is straightforward. > > However, in this case, there can be awkward white spaces if the > > contents of records across columns do not always measure up to same > > number of lines. Down, then Across (D&A) layout overcomes such > > drawback but routine adoption of this layout in a subreport puts > > everything into one column (even though the original report is > > designed for two columns). There is a solution for that too. > > > >Best wishes, > >A.D.Tejpal > >--------------- > > > > ----- Original Message ----- > > From: David Emerson > > To: Access Developers discussion and problem solving > > Sent: Tuesday, February 28, 2006 03:33 > > Subject: Re: [AccessD] Sub Report not going into Two Columns > > > > > > Thanks for the reply William. I tried all that with no joy. I might > > just have to go to fixed formatting. > > > > David > > > > At 27/02/2006, you wrote: > > >...best guess is that the width of your design subreport area on > > the report is narrower than the width of the two columns in the > > subreport when the "can grow" is fully expanded at runtime ...try > > decreasing the font size of the columns to verify this is the > > problem ...or disable the "can grow" ...hth. > > > > > >William > > > > > >----- Original Message ----- > > >From: "David Emerson" > > >To: ; > > >Sent: Monday, February 27, 2006 12:07 AM > > >Subject: [AccessD] Sub Report not going into Two Columns> > > > > > > > Cross Posted Access D, Access L > > > > > > > > Access XP. > > > > > > > > I have a report which is a long column of text boxes with the text > > > > entered into the control source. Because different printers format > > > > reports slightly differently I have made the boxes shorter than the > > > > text warrants and have set the can grow property on for > all the text > > > > boxes. There are no records associated with this report. > > > > > > > > I have set the Page Setup .. Number of columns to 2 and when > > I view the report the text boxes flow over two columns. The full > > report is two pages long. > > > > > > > > However, when I use the report as a subreport for another > > main report then the text boxes remain in one column. I have > > checked help and it suggests changing the column order to across > > then down. I have tried this but it doesn't make any difference (I > > guess because there are no records). > > > > > > > > Apart from physically placing the text boxes in two columns, does > > > > anyone know how I can get them to flow properly? > > > > > > > > Regards > > > > > > > > David Emerson > > > > Dalyn Software Ltd >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From martyconnelly at shaw.ca Mon Mar 6 13:22:51 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Mon, 06 Mar 2006 11:22:51 -0800 Subject: [AccessD] Code to Copy a query to Excel and Open said file? References: <051b01c63f44$a3964c60$8e01a8c0@rock> Message-ID: <440C8C0B.7030306@shaw.ca> Looking in wrong section these are the examples from Access Newswatch letter Try here http://www.helenfeddema.com/access.htm 127. Creating Excel Time Sheets from Access Data accarch127.zip Opens an Excel Spreadsheet inside a Word document from Access query You may have to muck about with references if keeping late binding especially if you are using different versions of excel and word , changing type definitions like Excel.Range to Variant and removing references, change file paths and add a couple of Constants. Const wdUserTemplatesPath = 2 Const xlNormal = -4143 '(&HFFFFEFD1) Arthur Fuller wrote: >I want to open an Access query and have its contents sent to an Excel file, >and have Excel open automatically with said file visible. I have played >around a little with TransferSpreadsheet, and if this method works, then I >am clearly doing something wrong. I have a sample file resembling the >desired result in Excel, so I could use that as a template in the "Word" >sense, but I need some guidance as to how to achieve this, because my >experiments have all failed. I checked Helen Feddema's site but her >Access->Excel heading says "Coming Soon". >Have you any suggestions in the interim? >TIA, >Arthur > > > -- Marty Connelly Victoria, B.C. Canada From Donald.A.McGillivray at sprint.com Mon Mar 6 16:42:16 2006 From: Donald.A.McGillivray at sprint.com (Mcgillivray, Don [IT]) Date: Mon, 6 Mar 2006 16:42:16 -0600 Subject: [AccessD] Preventing childless parent records Message-ID: Hello, All I have a data entry form for entering transactions where the main form holds the transaction header and a subform holds the header's details. Works as advertised, except that I have a user who has a habit of creating headers without adding line items. She sets up the header, tabs into the line item section, gets distracted (I guess), returns to the form (after dealing with the distraction) and starts over for some reason. Now, by virtue of having tabbed into the line item section, the header was saved, but because no line items were ever entered, the header is an orphan, or, more accurately, a childless parent. Every week, I scan the data and find several of these records that need to be removed. My first approach was to educate the user about how to do data entry. My second approach was to educate the user about how NOT to do data entry. Both approaches netted me that vacant nodding smile that says "I don't know what you're talking about, but if I keep nodding like this, maybe you'll go away and leave me alone." I'm sure you're all familiar with that look. This must be a common problem - the childless parent record, not the vacant nodding smile - but I'm struggling with how to detect the condition and disallow it. Can anybody point me in the right direction? Thanks! Don From hadyn at dataconcepts.co.nz Mon Mar 6 17:28:22 2006 From: hadyn at dataconcepts.co.nz (Hadyn Morgan) Date: Tue, 7 Mar 2006 12:28:22 +1300 Subject: [AccessD] Preventing childless parent records In-Reply-To: Message-ID: Hi Don You could always run a query on the closing of the form that deletes the records without children. Kind regards Hadyn -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Mcgillivray, Don [IT] Sent: Tuesday, 7 March 2006 11:42 To: AccessD Subject: [AccessD] Preventing childless parent records Hello, All I have a data entry form for entering transactions where the main form holds the transaction header and a subform holds the header's details. Works as advertised, except that I have a user who has a habit of creating headers without adding line items. She sets up the header, tabs into the line item section, gets distracted (I guess), returns to the form (after dealing with the distraction) and starts over for some reason. Now, by virtue of having tabbed into the line item section, the header was saved, but because no line items were ever entered, the header is an orphan, or, more accurately, a childless parent. Every week, I scan the data and find several of these records that need to be removed. My first approach was to educate the user about how to do data entry. My second approach was to educate the user about how NOT to do data entry. Both approaches netted me that vacant nodding smile that says "I don't know what you're talking about, but if I keep nodding like this, maybe you'll go away and leave me alone." I'm sure you're all familiar with that look. This must be a common problem - the childless parent record, not the vacant nodding smile - but I'm struggling with how to detect the condition and disallow it. Can anybody point me in the right direction? Thanks! Don -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- No virus found in this incoming message. Checked by AVG Free Edition. Version: 7.1.375 / Virus Database: 268.2.0/275 - Release Date: 6/03/2006 -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.1.375 / Virus Database: 268.2.0/275 - Release Date: 6/03/2006 From ldoering at symphonyinfo.com Mon Mar 6 17:46:41 2006 From: ldoering at symphonyinfo.com (Liz Doering) Date: Mon, 6 Mar 2006 17:46:41 -0600 Subject: [AccessD] Preventing childless parent records Message-ID: <855499653F55AD4190B242717DF132BC10C43F@dewey.Symphony.local> Don, Both are a common problem. :) Can you make a default child record, which is saved along with the parent record? Or not let her close the form until she's added child records? (On the OnClose event of the form, open a recordset (Select ParentID from ChildTable where ParentID = lngMyNewRecord) and test for EOF. If EOF = true, then Cancel = True.) I usually handle this with a little unbound pop-up form that collects the must-have data for both records, has an OK button with the code to create both records, then displays both partially filled records for the user to make changes. HTH, Liz -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mcgillivray, Don [IT] Sent: Monday, March 06, 2006 4:46 PM To: AccessD Subject: [AccessD] Preventing childless parent records Hello, All I have a data entry form for entering transactions where the main form holds the transaction header and a subform holds the header's details. Works as advertised, except that I have a user who has a habit of creating headers without adding line items. She sets up the header, tabs into the line item section, gets distracted (I guess), returns to the form (after dealing with the distraction) and starts over for some reason. Now, by virtue of having tabbed into the line item section, the header was saved, but because no line items were ever entered, the header is an orphan, or, more accurately, a childless parent. Every week, I scan the data and find several of these records that need to be removed. My first approach was to educate the user about how to do data entry. My second approach was to educate the user about how NOT to do data entry. Both approaches netted me that vacant nodding smile that says "I don't know what you're talking about, but if I keep nodding like this, maybe you'll go away and leave me alone." I'm sure you're all familiar with that look. This must be a common problem - the childless parent record, not the vacant nodding smile - but I'm struggling with how to detect the condition and disallow it. Can anybody point me in the right direction? Thanks! Don -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From dwaters at usinternet.com Mon Mar 6 18:08:45 2006 From: dwaters at usinternet.com (Dan Waters) Date: Mon, 6 Mar 2006 18:08:45 -0600 Subject: [AccessD] Preventing childless parent records In-Reply-To: <27170416.1141688043997.JavaMail.root@sniper19> Message-ID: <000001c6417b$4d19d800$0200a8c0@danwaters> Hi Don, I would add that prior to deleting those records, you should send an email to each person whose record is being deleted, along with enough information from the parent record for them to re-create the parent and child records. A good time to go through this sequence is whenever the first person is logging on in the morning. You'll need to record the name of each person entering a parent record, but that's probably already there, and you'll need another table to look up everyone's email address. I bet people will start paying more attention if they know that the computer telling them they screwed up will NOT go away when they smile vacantly at the monitor! ;-) Best of Luck! Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hadyn Morgan Sent: Monday, March 06, 2006 5:28 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Preventing childless parent records Hi Don You could always run a query on the closing of the form that deletes the records without children. Kind regards Hadyn -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Mcgillivray, Don [IT] Sent: Tuesday, 7 March 2006 11:42 To: AccessD Subject: [AccessD] Preventing childless parent records Hello, All I have a data entry form for entering transactions where the main form holds the transaction header and a subform holds the header's details. Works as advertised, except that I have a user who has a habit of creating headers without adding line items. She sets up the header, tabs into the line item section, gets distracted (I guess), returns to the form (after dealing with the distraction) and starts over for some reason. Now, by virtue of having tabbed into the line item section, the header was saved, but because no line items were ever entered, the header is an orphan, or, more accurately, a childless parent. Every week, I scan the data and find several of these records that need to be removed. My first approach was to educate the user about how to do data entry. My second approach was to educate the user about how NOT to do data entry. Both approaches netted me that vacant nodding smile that says "I don't know what you're talking about, but if I keep nodding like this, maybe you'll go away and leave me alone." I'm sure you're all familiar with that look. This must be a common problem - the childless parent record, not the vacant nodding smile - but I'm struggling with how to detect the condition and disallow it. Can anybody point me in the right direction? Thanks! Don -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- No virus found in this incoming message. Checked by AVG Free Edition. Version: 7.1.375 / Virus Database: 268.2.0/275 - Release Date: 6/03/2006 -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.1.375 / Virus Database: 268.2.0/275 - Release Date: 6/03/2006 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Donald.A.McGillivray at sprint.com Mon Mar 6 18:28:39 2006 From: Donald.A.McGillivray at sprint.com (Mcgillivray, Don [IT]) Date: Mon, 6 Mar 2006 18:28:39 -0600 Subject: [AccessD] Preventing childless parent records Message-ID: Thanks to all for your replies. I think I'll end up using some bits of each of them in my solution to this problem. My aim is to catch and eliminate the error before the user moves off the record, rather than upon close of the form. I should be able to adapt your ideas to that end. Now if I could just penetrate that vacant smile . . . Regards, Don From jwcolby at ColbyConsulting.com Mon Mar 6 18:36:08 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Mon, 6 Mar 2006 19:36:08 -0500 Subject: [AccessD] Preventing childless parent records In-Reply-To: Message-ID: <00dd01c6417f$20fef670$647aa8c0@ColbyM6805> Vacant nodding smiles is a very common problem. As for how to detect childless records, I do not believe there is any solution without code. The basic concept is: In the parent form, do not allow a close of the form, or a move off of the record without knowing that there are children. This can be done two ways. One, you can "ask" the subform how many records are in its recordset. Every (bound) form has a DAO recordset behind the form, called Recordset. Thus me.Recordset.recordcount will return the number of records in the recordset. Thus (from the parent) me!MyFormControl.form.recordset.count will return the number of records that the form in MyFormControl contains. If me!MyFormControl.form.recordset.count > 0 then cancel a form close, and warn the user they need to enter child records or delete the parent record. For moving off the record, it is a bit more complex since the only event that fires when you move to a different record is the Current event and there is no Cancel for that. Click the new record and you will move. For this reason the only thing that comes to mind is to set a bookmark, allow the move to happen, but in OnCurrent go lookup the children of the record with that bookmark. This is a very interesting discussion and the solution begs for a framework solution (which I do NOT have, but will once we figure out how to do this). John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mcgillivray, Don [IT] Sent: Monday, March 06, 2006 5:42 PM To: AccessD Subject: [AccessD] Preventing childless parent records Hello, All I have a data entry form for entering transactions where the main form holds the transaction header and a subform holds the header's details. Works as advertised, except that I have a user who has a habit of creating headers without adding line items. She sets up the header, tabs into the line item section, gets distracted (I guess), returns to the form (after dealing with the distraction) and starts over for some reason. Now, by virtue of having tabbed into the line item section, the header was saved, but because no line items were ever entered, the header is an orphan, or, more accurately, a childless parent. Every week, I scan the data and find several of these records that need to be removed. My first approach was to educate the user about how to do data entry. My second approach was to educate the user about how NOT to do data entry. Both approaches netted me that vacant nodding smile that says "I don't know what you're talking about, but if I keep nodding like this, maybe you'll go away and leave me alone." I'm sure you're all familiar with that look. This must be a common problem - the childless parent record, not the vacant nodding smile - but I'm struggling with how to detect the condition and disallow it. Can anybody point me in the right direction? Thanks! Don -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From stuart at lexacorp.com.pg Mon Mar 6 18:47:29 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Tue, 07 Mar 2006 10:47:29 +1000 Subject: [AccessD] Preventing childless parent records In-Reply-To: Message-ID: <440D64C1.24468.575F513@stuart.lexacorp.com.pg> On 6 Mar 2006 at 18:28, Mcgillivray, Don [IT] wrote: > Thanks to all for your replies. I think I'll end up using some bits of each > of them in my solution to this problem. My aim is to catch and eliminate > the error before the user moves off the record, rather than upon close of > the form. I should be able to adapt your ideas to that end. > > Now if I could just penetrate that vacant smile . . . > I've always found that using a LART end-on tends to penetrate quite well :-) -- Stuart From wdhindman at bellsouth.net Mon Mar 6 21:00:55 2006 From: wdhindman at bellsouth.net (William Hindman) Date: Mon, 6 Mar 2006 22:00:55 -0500 Subject: [AccessD] Preventing childless parent records References: <000001c6417b$4d19d800$0200a8c0@danwaters> Message-ID: <006201c64193$5a854840$6101a8c0@50NM721> ...evil genius at work! :)))))) William ----- Original Message ----- From: "Dan Waters" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 06, 2006 7:08 PM Subject: Re: [AccessD] Preventing childless parent records > Hi Don, > > I would add that prior to deleting those records, you should send an email > to each person whose record is being deleted, along with enough > information > from the parent record for them to re-create the parent and child records. > > A good time to go through this sequence is whenever the first person is > logging on in the morning. > > You'll need to record the name of each person entering a parent record, > but > that's probably already there, and you'll need another table to look up > everyone's email address. > > I bet people will start paying more attention if they know that the > computer > telling them they screwed up will NOT go away when they smile vacantly at > the monitor! ;-) > > Best of Luck! > > Dan > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hadyn Morgan > Sent: Monday, March 06, 2006 5:28 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Preventing childless parent records > > Hi Don > > You could always run a query on the closing of the form that deletes the > records without children. > > Kind regards > Hadyn > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Mcgillivray, Don > [IT] > Sent: Tuesday, 7 March 2006 11:42 > To: AccessD > Subject: [AccessD] Preventing childless parent records > > > Hello, All > > I have a data entry form for entering transactions where the main form > holds the transaction header and a subform holds the header's details. > Works as advertised, except that I have a user who has a habit of > creating headers without adding line items. She sets up the header, > tabs into the line item section, gets distracted (I guess), returns to > the form (after dealing with the distraction) and starts over for some > reason. Now, by virtue of having tabbed into the line item section, the > header was saved, but because no line items were ever entered, the > header is an orphan, or, more accurately, a childless parent. Every > week, I scan the data and find several of these records that need to be > removed. > > My first approach was to educate the user about how to do data entry. > My second approach was to educate the user about how NOT to do data > entry. > > Both approaches netted me that vacant nodding smile that says "I don't > know what you're talking about, but if I keep nodding like this, maybe > you'll go away and leave me alone." I'm sure you're all familiar with > that look. > > This must be a common problem - the childless parent record, not the > vacant nodding smile - but I'm struggling with how to detect the > condition and disallow it. Can anybody point me in the right direction? > > Thanks! > > Don > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- > No virus found in this incoming message. > Checked by AVG Free Edition. > Version: 7.1.375 / Virus Database: 268.2.0/275 - Release Date: 6/03/2006 > > -- > No virus found in this outgoing message. > Checked by AVG Free Edition. > Version: 7.1.375 / Virus Database: 268.2.0/275 - Release Date: 6/03/2006 > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From ecritt1 at alltel.net Tue Mar 7 04:29:17 2006 From: ecritt1 at alltel.net (Penn White) Date: Tue, 7 Mar 2006 05:29:17 -0500 Subject: [AccessD] Using Multidimensional Arrays Message-ID: <010501c641d1$fd330f30$0302a8c0@pennp4> ACC03 - I'm sending out emails from Access to a list of recipients selected from a listbox. Since I don't have Exchange Server, I can't be sure that the entries in the 'workstations' Outlook Contact list is up-to-date. Consequently, I have to verity first that the Contact is in that workstation's Outlook Contact list and second that the email address hasn't changed. It's a bit messy and may be time consuming since every single email will have to check all the recipients before being sent but there would rarely be more than 10 recipients for an email and more usually only 2-3 and I can't think of any other way to do it. I was thinking of creating a multi-dimensional array to hold the FirstName, LastName and Email address for each selected recipient but I can't figure out how to do it. The number of entries in the array will vary depending on how many recipients are selected. There may not necessarily be a first name and the 'last name' may actually be a string of several words, like "Belton Manufacturing" for example. Once the array is created, I'll need to concatenate the first and last names and check them against the existing entries in Outlook Contacts, updating or adding as necessary. If I can get the entries out of the array, that won't be hard, I've already done if before and have developed functions for the various pieces. I've also seen some comparisons between using structures and arrays and maybe I should be using a structure here. I'm a bit befuddled. Penn From Jdemarco at hudsonhealthplan.org Tue Mar 7 06:57:58 2006 From: Jdemarco at hudsonhealthplan.org (Jim DeMarco) Date: Tue, 7 Mar 2006 07:57:58 -0500 Subject: [AccessD] Using Multidimensional Arrays Message-ID: <08F823FD83787D4BA0B99CA580AD3C7402DE6FA2@TTNEXCHCL2.hshhp.com> Here's a case where I'd use a custom collection class rather than an array. You can refer to my article in the March O5 list newsletter for details but I think you'll find it easier to navigate than an array. As I see it you'll create a cMailInfo class containing Name (do your concatenation on the way in if possible otherwise add FName, LName properties instead) and EmailAddress properties, then a custom collection class, cMailInfoColl, to hold cMailInfo items. You can grab the cContacts collection class from the article and make a few simple mods to accommodate this scenario. Glad to answer any questions on it. HTH Jim DeMarco -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Penn White Sent: Tuesday, March 07, 2006 5:29 AM To: Access Developers discussion and problem solving Subject: [AccessD] Using Multidimensional Arrays ACC03 - I'm sending out emails from Access to a list of recipients selected from a listbox. Since I don't have Exchange Server, I can't be sure that the entries in the 'workstations' Outlook Contact list is up-to-date. Consequently, I have to verity first that the Contact is in that workstation's Outlook Contact list and second that the email address hasn't changed. It's a bit messy and may be time consuming since every single email will have to check all the recipients before being sent but there would rarely be more than 10 recipients for an email and more usually only 2-3 and I can't think of any other way to do it. I was thinking of creating a multi-dimensional array to hold the FirstName, LastName and Email address for each selected recipient but I can't figure out how to do it. The number of entries in the array will vary depending on how many recipients are selected. There may not necessarily be a first name and the 'last name' may actually be a string of several words, like "Belton Manufacturing" for example. Once the array is created, I'll need to concatenate the first and last names and check them against the existing entries in Outlook Contacts, updating or adding as necessary. If I can get the entries out of the array, that won't be hard, I've already done if before and have developed functions for the various pieces. I've also seen some comparisons between using structures and arrays and maybe I should be using a structure here. I'm a bit befuddled. Penn -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************************** "This electronic message is intended to be for the use only of the named recipient, and may contain information from Hudson Health Plan (HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". *********************************************************************************** From jwcolby at ColbyConsulting.com Tue Mar 7 07:55:40 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Tue, 7 Mar 2006 08:55:40 -0500 Subject: [AccessD] Using Multidimensional Arrays In-Reply-To: <08F823FD83787D4BA0B99CA580AD3C7402DE6FA2@TTNEXCHCL2.hshhp.com> Message-ID: <00ee01c641ee$d2b42100$647aa8c0@ColbyM6805> I agree with Jim. One of the programming structures available for us to use in Access is called a class. A class is a place to store information, along with the code required to manipulate that information. So for example, you could create an email info class that holds all of the information about one "record" - First name, Last name, Email Address. 1) You then instantiate the email info class and load one person's info in it. 2) You save the pointer to the email info class in a collection. The nice thing about collections is that you can "key" them if you want to. So you might save it keyed on the email address, or the first name and last name concatenated - assuming you need this. 3) You then build a second class - what I call a controller or supervisor class - that reads the data and instantiates all of these records and saves them in a collection in the controller class. The controller then has all of the code that you will use to do the checking. It can iterate through the collection of email classes performing the checks that you mention. Place code close to the data used. For example, if you are going to concatenate the name fields, place the code to do that in the email info class, just build a method called WholeName which concatenates the two name variables and returns the result. Doing this makes the concatenation identical everywhere that you need the data concatenated and it is a function of the email info class to return the data formatted as it is needed. The code to do the Outlook lookup and manipulation may be in the controller class, or you might have a dedicated Outlook class that "knows about" the Email Info Controller class and asks it for data. Classes are very powerful and used with collections to store the class instances, makes the "array" thing obsolete. Classes and collections will not be as fast as direct array manipulation, but it will be fast and it will allow much better documentation and so forth as you break the task down into logical pieces. BTW, one thing that people often get confused about is how much overhead is created by having the code in classes. Is the code reloaded for each instance of the class? The answer is that the code is loaded once when the first class instance is loaded. The DATA storage in memory is created for each class instance as it is loaded. So the code is literally shared, whereas the data (variables) is only created as it is needed - as an instance is loaded. There is no "additional overhead" for loading the code over and over again. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim DeMarco Sent: Tuesday, March 07, 2006 7:58 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Using Multidimensional Arrays Here's a case where I'd use a custom collection class rather than an array. You can refer to my article in the March O5 list newsletter for details but I think you'll find it easier to navigate than an array. As I see it you'll create a cMailInfo class containing Name (do your concatenation on the way in if possible otherwise add FName, LName properties instead) and EmailAddress properties, then a custom collection class, cMailInfoColl, to hold cMailInfo items. You can grab the cContacts collection class from the article and make a few simple mods to accommodate this scenario. Glad to answer any questions on it. HTH Jim DeMarco -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Penn White Sent: Tuesday, March 07, 2006 5:29 AM To: Access Developers discussion and problem solving Subject: [AccessD] Using Multidimensional Arrays ACC03 - I'm sending out emails from Access to a list of recipients selected from a listbox. Since I don't have Exchange Server, I can't be sure that the entries in the 'workstations' Outlook Contact list is up-to-date. Consequently, I have to verity first that the Contact is in that workstation's Outlook Contact list and second that the email address hasn't changed. It's a bit messy and may be time consuming since every single email will have to check all the recipients before being sent but there would rarely be more than 10 recipients for an email and more usually only 2-3 and I can't think of any other way to do it. I was thinking of creating a multi-dimensional array to hold the FirstName, LastName and Email address for each selected recipient but I can't figure out how to do it. The number of entries in the array will vary depending on how many recipients are selected. There may not necessarily be a first name and the 'last name' may actually be a string of several words, like "Belton Manufacturing" for example. Once the array is created, I'll need to concatenate the first and last names and check them against the existing entries in Outlook Contacts, updating or adding as necessary. If I can get the entries out of the array, that won't be hard, I've already done if before and have developed functions for the various pieces. I've also seen some comparisons between using structures and arrays and maybe I should be using a structure here. I'm a bit befuddled. Penn -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com **************************************************************************** ******* "This electronic message is intended to be for the use only of the named recipient, and may contain information from Hudson Health Plan (HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". **************************************************************************** ******* -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From reuben at gfconsultants.com Tue Mar 7 08:00:38 2006 From: reuben at gfconsultants.com (Reuben Cummings) Date: Tue, 7 Mar 2006 09:00:38 -0500 Subject: [AccessD] Preventing childless parent records In-Reply-To: <00dd01c6417f$20fef670$647aa8c0@ColbyM6805> Message-ID: > > For moving off the record, it is a bit more complex since the only event > that fires when you move to a different record is the Current event and > there is no Cancel for that. Actually, to handle something like moving off the record I turn off the Access record navigation and make my own. You can make one to look very similar to the Access navigation. Anyhow, in it you can write any code you want and you can then fire any record checking code you want before allowing the user to change records. The only option then to change records I guess you couldn't catch would be Page Up or Page Down. But maybe you could catch them using the Keystroke. Reuben Cummings GFC, LLC 812.523.1017 From shamil at users.mns.ru Tue Mar 7 08:51:54 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Tue, 7 Mar 2006 17:51:54 +0300 Subject: [AccessD] Using Multidimensional Arrays References: <010501c641d1$fd330f30$0302a8c0@pennp4> Message-ID: <001a01c641f6$b43a55c0$6401a8c0@Nant> Penn, yes, why not use user defined types/structures? Public Type myType FirstName As String LastName As String EmailAddress As String End Type Public Function a_Test() Dim avar(0 To 99) As myType Dim i As Integer For i = 0 To 99 With avar(i) .FirstName = "FN" & i .LastName = "LN" & i .EmailAddress = "EA" & i & "@gmail.com" End With Next i End Function Custom classes could be an overkill here but if you will have several public methods (like First and Last name concatenation) then custom class os looking as the best candidate: ' class module myClass Public FirstName As String Public LastName As String Public EmailAddress As String Public Property Get FullName() As String FullName = FirstName & " " & LastName End Property ' test Public Function a_test1() Dim avar(0 To 99) As myClass Dim i As Integer For i = 0 To 99 Set avar(i) = New myClass With avar(i) .FirstName = "FN" & i .LastName = "LN" & i .EmailAddress = "EA" & i & "@gmail.com" End With Next i End Function Classes can be also/should be better(?) used with collections - then additionally you cah have mnemonic access to collection memebers by symbolic key like fullname assuming it's unique (or you can define a surrogate key unique value property): Public Function a_test2() Dim avar As myClass Dim col As New Collection Dim i As Integer For i = 0 To 99 Set avar = New myClass With avar .FirstName = "FN" & i .LastName = "LN" & i .EmailAddress = "EA" & i & "@gmail.com" col.Add avar, .FullName End With Next i End Function Shamil ----- Original Message ----- From: "Penn White" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 07, 2006 1:29 PM Subject: [AccessD] Using Multidimensional Arrays > ACC03 - I'm sending out emails from Access to a list of recipients > selected > from a listbox. Since I don't have Exchange Server, I can't be sure that > the entries in the 'workstations' Outlook Contact list is up-to-date. > Consequently, I have to verity first that the Contact is in that > workstation's Outlook Contact list and second that the email address > hasn't > changed. It's a bit messy and may be time consuming since every single > email will have to check all the recipients before being sent but there > would rarely be more than 10 recipients for an email and more usually only > 2-3 and I can't think of any other way to do it. > > I was thinking of creating a multi-dimensional array to hold the > FirstName, > LastName and Email address for each selected recipient but I can't figure > out how to do it. The number of entries in the array will vary depending > on > how many recipients are selected. There may not necessarily be a first > name > and the 'last name' may actually be a string of several words, like > "Belton > Manufacturing" for example. > > Once the array is created, I'll need to concatenate the first and last > names > and check them against the existing entries in Outlook Contacts, updating > or > adding as necessary. If I can get the entries out of the array, that > won't > be hard, I've already done if before and have developed functions for the > various pieces. > > I've also seen some comparisons between using structures and arrays and > maybe I should be using a structure here. > > I'm a bit befuddled. > > Penn > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From oost at e-business2start.com Tue Mar 7 09:27:19 2006 From: oost at e-business2start.com (E-business2start.com - Marcel Vreuls) Date: Tue, 7 Mar 2006 07:27:19 -0800 Subject: [AccessD] Access or not as platform Message-ID: <693e53087305546f4d8111c681af44f9@e-business2start.com> Hi Group, I am wondering on which platform to develop a new application. This app should handle archiving and searching for documents, scans and emails (like hummingbird but the lite version :-). I would like to store document information and a link to the psychical document on the server. I can do this rapidly in Access with my framework and knowledge (about 4 weeks) I can do this rapid in vb6 (about (5 weeks) i can do this in c# (about 6 weeks) Any suggestions which platform to choose. Because of integration i like access but deployment is not that good because of the large runtime? c#, .net is the future platform. Any suggestions, help, tips to help me solve this issue would be welcome. tnxs, marcel From DWUTKA at marlow.com Tue Mar 7 09:50:55 2006 From: DWUTKA at marlow.com (DWUTKA at marlow.com) Date: Tue, 7 Mar 2006 09:50:55 -0600 Subject: [AccessD] Using Multidimensional Arrays Message-ID: <17724746D360394AA3BFE5B8D40A9C1BD890@main2.marlow.com> Sounds like a Class and Collection would be easier to use here. Unless you are going for supreme processing speed, that is the way I would go. Drew -----Original Message----- From: Penn White [mailto:ecritt1 at alltel.net] Sent: Tuesday, March 07, 2006 4:29 AM To: Access Developers discussion and problem solving Subject: [AccessD] Using Multidimensional Arrays ACC03 - I'm sending out emails from Access to a list of recipients selected from a listbox. Since I don't have Exchange Server, I can't be sure that the entries in the 'workstations' Outlook Contact list is up-to-date. Consequently, I have to verity first that the Contact is in that workstation's Outlook Contact list and second that the email address hasn't changed. It's a bit messy and may be time consuming since every single email will have to check all the recipients before being sent but there would rarely be more than 10 recipients for an email and more usually only 2-3 and I can't think of any other way to do it. I was thinking of creating a multi-dimensional array to hold the FirstName, LastName and Email address for each selected recipient but I can't figure out how to do it. The number of entries in the array will vary depending on how many recipients are selected. There may not necessarily be a first name and the 'last name' may actually be a string of several words, like "Belton Manufacturing" for example. Once the array is created, I'll need to concatenate the first and last names and check them against the existing entries in Outlook Contacts, updating or adding as necessary. If I can get the entries out of the array, that won't be hard, I've already done if before and have developed functions for the various pieces. I've also seen some comparisons between using structures and arrays and maybe I should be using a structure here. I'm a bit befuddled. Penn -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From hoopesg at hotmail.com Tue Mar 7 11:12:48 2006 From: hoopesg at hotmail.com (Gina Hoopes) Date: Tue, 07 Mar 2006 11:12:48 -0600 Subject: [AccessD] Difficult calculations Message-ID: A co-worker has asked for my help and I'm stumped. Perhaps one or more of you can help me figure out how he can accomplish what he needs. The way his table is laid out is the main problem, but it serves him in all of the other ways he reports on the data. He's got the following fields: StmtType, Category, and 36 fields with numbers (JanYTD, JanLYB, JanCYB for all 12 months). The StmtType field has the primary designation (VUH, PHV, VCH) and the Category field has the secondary designation (Admissions, Discharges, Patient Days, Inpatient Revenue, Outpatient Revenue). So for each primary designation he has each of the secondary designations. So, a table row looks like VUH/Admissions/JanYTD/JanLYB/JanCYB/... then VUH/Discharges/JanYTD/JanLYB/JanCYB ... I hope that makes sense since I don't know how to represent it graphically with plain text. Now here's what he needs: (VUH Inpatient Revenue JanYTD + VUH Outpatient Revenue JAN YTD) divided by VUH Inpatient Revenue Jan YTD = X - (X is his ratio) X times VUH Patient Days Jan YTD X times VUH Admissions Jan YTD X times VUH Discharges Jan YTD The calculations have to take place for each of the 36 values. I would be fairly simple for him to accomplish with queries if there were only a couple of values but with 36 columns for each primary/secondary combination it's way too cumbersome to accomplish that way. Can anyone help me figure out if he can get from here to there? Thanks so much, Gina From bheid at appdevgrp.com Tue Mar 7 13:47:59 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Tue, 7 Mar 2006 14:47:59 -0500 Subject: [AccessD] Difficult calculations In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D6A6EF@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D3509C@ADGSERVER> I would recommend the use of one or more temporary tables to process the data. It looks like from your description that he needs to use data from fields in different records in one calculation. Maybe something that would first put all of the VUH Inpatient Revenue JanYTD data into the work table. The another query that would add the VUH Outpatient Revenue JAN YTD data to the corresponding work record, etc. Then he would have one or more final queries that would take all of the data in the one record needed for a given calculation and calculate it. Is that clear as mud now? LOL. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gina Hoopes Sent: Tuesday, March 07, 2006 12:13 PM To: AccessD at databaseadvisors.com Subject: [AccessD] Difficult calculations A co-worker has asked for my help and I'm stumped. Perhaps one or more of you can help me figure out how he can accomplish what he needs. The way his table is laid out is the main problem, but it serves him in all of the other ways he reports on the data. He's got the following fields: StmtType, Category, and 36 fields with numbers (JanYTD, JanLYB, JanCYB for all 12 months). The StmtType field has the primary designation (VUH, PHV, VCH) and the Category field has the secondary designation (Admissions, Discharges, Patient Days, Inpatient Revenue, Outpatient Revenue). So for each primary designation he has each of the secondary designations. So, a table row looks like VUH/Admissions/JanYTD/JanLYB/JanCYB/... then VUH/Discharges/JanYTD/JanLYB/JanCYB ... I hope that makes sense since I don't know how to represent it graphically with plain text. Now here's what he needs: (VUH Inpatient Revenue JanYTD + VUH Outpatient Revenue JAN YTD) divided by VUH Inpatient Revenue Jan YTD = X - (X is his ratio) X times VUH Patient Days Jan YTD X times VUH Admissions Jan YTD X times VUH Discharges Jan YTD The calculations have to take place for each of the 36 values. I would be fairly simple for him to accomplish with queries if there were only a couple of values but with 36 columns for each primary/secondary combination it's way too cumbersome to accomplish that way. Can anyone help me figure out if he can get from here to there? Thanks so much, Gina From bheid at appdevgrp.com Tue Mar 7 13:52:34 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Tue, 7 Mar 2006 14:52:34 -0500 Subject: [AccessD] [SPAM SUSPECT] Access or not as platform In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D5BCA2@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D3509D@ADGSERVER> Marcel, If I had the choice, I'd probably do it in .Net with a SQL back-end (or Access if SQL is not an option). Remember, you can get SQL 2005 Express for free. With .Net, you have access to the latest technologies and there is some really nice stuff in .Net that would be difficult in Access or VB 6. You also have a choice of language(s) to use. As for the large run time, you would have a large runtime in .Net or in VB 6 also. SO I would not worry about the runtime aspect of it, unless they are using ancient PCs. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of E-business2start.com - Marcel Vreuls Sent: Tuesday, March 07, 2006 10:27 AM To: Access Developers discussion and problem solving Subject: [SPAM SUSPECT] [AccessD] Access or not as platform Importance: Low Hi Group, I am wondering on which platform to develop a new application. This app should handle archiving and searching for documents, scans and emails (like hummingbird but the lite version :-). I would like to store document information and a link to the psychical document on the server. I can do this rapidly in Access with my framework and knowledge (about 4 weeks) I can do this rapid in vb6 (about (5 weeks) i can do this in c# (about 6 weeks) Any suggestions which platform to choose. Because of integration i like access but deployment is not that good because of the large runtime? c#, .net is the future platform. Any suggestions, help, tips to help me solve this issue would be welcome. tnxs, marcel From markamatte at hotmail.com Tue Mar 7 13:55:29 2006 From: markamatte at hotmail.com (Mark A Matte) Date: Tue, 07 Mar 2006 19:55:29 +0000 Subject: [AccessD] Import Image Message In-Reply-To: Message-ID: Hello All, In A2K I'm building a form with a large number of images...the location, type, and image settings are loaded 'On Open' from a table. There is a brief moment during the load that I can see the import image message box, which has a cancel button...if I hit enter...this halts my code. I've tried setting warnings to false...but this doesn't help. I need this to go away...any ideas? Thanks, Mark A. Matte From Donald.A.McGillivray at sprint.com Tue Mar 7 14:12:29 2006 From: Donald.A.McGillivray at sprint.com (Mcgillivray, Don [IT]) Date: Tue, 7 Mar 2006 14:12:29 -0600 Subject: [AccessD] Import Image Message Message-ID: Mark, Can you convert your images to another format? I think this happens because your images are in a format that Access can use, but needs to import first. Access can work with some image types directly without the importing step. I know bitmaps work without importing, and there may be others. Don From Gustav at cactus.dk Tue Mar 7 14:14:06 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Tue, 07 Mar 2006 21:14:06 +0100 Subject: [AccessD] Import Image Message Message-ID: Hi Mark Are you talking about the Show Progress Dialog box: http://databaseadvisors.com/pipermail/accessd/2004-August/026513.html /gustav >>> markamatte at hotmail.com 07-03-2006 20:55:29 >>> Hello All, In A2K I'm building a form with a large number of images...the location, type, and image settings are loaded 'On Open' from a table. There is a brief moment during the load that I can see the import image message box, which has a cancel button...if I hit enter...this halts my code. I've tried setting warnings to false...but this doesn't help. I need this to go away...any ideas? Thanks, Mark A. Matte From markamatte at hotmail.com Tue Mar 7 14:21:47 2006 From: markamatte at hotmail.com (Mark A Matte) Date: Tue, 07 Mar 2006 20:21:47 +0000 Subject: [AccessD] Import Image Message In-Reply-To: Message-ID: I am using .gif images...When the user configures the screen...depending on what the user selects...the control has to change what .gif file it uses. I found that once I convert the mdb to an mde...hitting enter just cancels the load. This is better but not optimum. I'll play with the file format if necessary. Thanks, Mark A. Matte >From: "Mcgillivray, Don [IT]" >Reply-To: Access Developers discussion and problem >solving >To: "Access Developers discussion and problem >solving" >Subject: Re: [AccessD] Import Image Message >Date: Tue, 7 Mar 2006 14:12:29 -0600 > >Mark, > >Can you convert your images to another format? > >I think this happens because your images are in a format that Access can >use, but needs to import first. Access can work with some image types >directly without the importing step. I know bitmaps work without >importing, and there may be others. > >Don > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From hoopesg at hotmail.com Tue Mar 7 14:42:57 2006 From: hoopesg at hotmail.com (Gina Hoopes) Date: Tue, 07 Mar 2006 14:42:57 -0600 Subject: [AccessD] Difficult calculations Message-ID: Yes, he does need to use data from different records but the same field in his calculation. I was actually thinking along the lines you propose - but I don't know how to automate the process so that he doesn't have to create 144 (or more) queries. It seems like there should be a way to loop through the table and reproduce this activity over and over again for each value in each StmtType. Any suggestions? Thanks! Gina -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Tuesday, March 07, 2006 1:48 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Difficult calculations I would recommend the use of one or more temporary tables to process the data. It looks like from your description that he needs to use data from fields in different records in one calculation. Maybe something that would first put all of the VUH Inpatient Revenue JanYTD data into the work table. The another query that would add the VUH Outpatient Revenue JAN YTD data to the corresponding work record, etc. Then he would have one or more final queries that would take all of the data in the one record needed for a given calculation and calculate it. Is that clear as mud now? LOL. Bobby From martyconnelly at shaw.ca Tue Mar 7 14:59:30 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Tue, 07 Mar 2006 12:59:30 -0800 Subject: [AccessD] Access or not as platform References: <693e53087305546f4d8111c681af44f9@e-business2start.com> Message-ID: <440DF432.2030100@shaw.ca> If you have Windows 2003 Server have you considered Windows SharePoint Services that comes free with it. This will handle your document archiving and searching. WSS stores info in lists, Access can link to these as tables or you can use ADO or ADO.Net. You may not need the more advanced WSS Portal Server that roughly cost $5000, whereas rough prices for 25 users on Documentum is $30,000 and Hummingbird $15,000. There are products that allow integration of all three. Getting Email into your system really depends on your mail client, I know there are quick ways to save Outlook email into Documentum. WSS works easily with Exchange. Sending email to WSS is supposed to work with any SMTP system - it doesn't have to be Exchange. You just send email to a WSS folder. Also since WSS sits on top of SQL Server you can create your own special SQL SP search procedures. WSS FAQ site http://wss.collutions.com/default.aspx If you do write a lite Access version to do all this, there might be a few Records Manager's from the ARMA group that would be interested. E-business2start.com - Marcel Vreuls wrote: >Hi Group, >I am wondering on which platform to develop a new application. This app should handle archiving and searching for documents, scans and emails (like hummingbird but the lite version :-). I would like to store document information and a link to the psychical document on the server. > >I can do this rapidly in Access with my framework and knowledge (about 4 weeks) >I can do this rapid in vb6 (about (5 weeks) >i can do this in c# (about 6 weeks) >Any suggestions which platform to choose. Because of integration i like access but deployment is not that good because of the large runtime? >c#, .net is the future platform. > >Any suggestions, help, tips to help me solve this issue would be welcome. > >tnxs, marcel > > -- Marty Connelly Victoria, B.C. Canada From Jim.Hale at FleetPride.com Tue Mar 7 15:52:38 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Tue, 7 Mar 2006 15:52:38 -0600 Subject: [AccessD] SQL count distinct problem Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDA91@corp-es01.fleetpride.com> Assume a table with vendor, inv amt and check number. There may be multiple records for the vendor with the same check number. If I want to determine the total amt paid to a vendor and the number of checks written to him a simple groupby query will not do since the count function will count the number of occurrences not number of distinct checks. COUNT(DISTINCT(CHKNO) works in a pass through query on the AS400 but not in Jet SQL. What is the equivalent Jet SQL to determine the number of distinct checks written per vendor? TIA Jim Hale *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From Lambert.Heenan at aig.com Tue Mar 7 16:11:31 2006 From: Lambert.Heenan at aig.com (Heenan, Lambert) Date: Tue, 7 Mar 2006 16:11:31 -0600 Subject: [AccessD] SQL count distinct problem Message-ID: <1D7828CDB8350747AFE9D69E0E90DA1F1E2EB6A3@xlivmbx21.aig.com> You'll need a query that looks like this... SELECT DISTINCT Table1.Vendor, Table1.CHKNO FROM Table1; Then you can use that query as the source of your other query to do the grouping and counting. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Tuesday, March 07, 2006 4:53 PM To: 'Accessd (E-mail) Subject: [AccessD] SQL count distinct problem Assume a table with vendor, inv amt and check number. There may be multiple records for the vendor with the same check number. If I want to determine the total amt paid to a vendor and the number of checks written to him a simple groupby query will not do since the count function will count the number of occurrences not number of distinct checks. COUNT(DISTINCT(CHKNO) works in a pass through query on the AS400 but not in Jet SQL. What is the equivalent Jet SQL to determine the number of distinct checks written per vendor? TIA Jim Hale *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jim.Hale at FleetPride.com Tue Mar 7 16:26:29 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Tue, 7 Mar 2006 16:26:29 -0600 Subject: [AccessD] SQL count distinct problem Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDA92@corp-es01.fleetpride.com> That will certainly work but I was kind of hoping I was missing something simple (Like the distinct keyword) that would allow me to do it in one query. Jim Hale -----Original Message----- From: Heenan, Lambert [mailto:Lambert.Heenan at aig.com] Sent: Tuesday, March 07, 2006 4:12 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] SQL count distinct problem You'll need a query that looks like this... SELECT DISTINCT Table1.Vendor, Table1.CHKNO FROM Table1; Then you can use that query as the source of your other query to do the grouping and counting. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Tuesday, March 07, 2006 4:53 PM To: 'Accessd (E-mail) Subject: [AccessD] SQL count distinct problem Assume a table with vendor, inv amt and check number. There may be multiple records for the vendor with the same check number. If I want to determine the total amt paid to a vendor and the number of checks written to him a simple groupby query will not do since the count function will count the number of occurrences not number of distinct checks. COUNT(DISTINCT(CHKNO) works in a pass through query on the AS400 but not in Jet SQL. What is the equivalent Jet SQL to determine the number of distinct checks written per vendor? TIA Jim Hale *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From pjewett at bayplace.com Tue Mar 7 18:03:05 2006 From: pjewett at bayplace.com (Phil Jewett) Date: Tue, 7 Mar 2006 16:03:05 -0800 Subject: [AccessD] Code to Copy a query to Excel and Open said file Message-ID: I haven't been following the replies to this, but to open a query in Excel, I use: Private Sub QueryToExcel(ByVal theQuery As String) DoCmd.Echo False DoCmd.OpenQuery theQuery, acViewPreview, acReadOnly DoCmd.RunCommand acCmdOutputToExcel DoCmd.Close acQuery, theQuery DoCmd.Echo True End Sub Turning off echo avoids the 'flash' when the query opens. Another handy option is acCmdOutputToRTF, which sends the query to Word nicely formatted as a Word table. Phil Jewett Phil Jewett Consulting pjewett at bayplace.com (619) 318-4899 Arthur Fuller wrote: >I want to open an Access query and have its contents sent to an Excel >file, and have Excel open automatically with said file visible. I have >played around a little with TransferSpreadsheet, and if this method >works, then I am clearly doing something wrong. I have a sample file >resembling the desired result in Excel, so I could use that as a >template in the "Word" sense, but I need some guidance as to how to >achieve this, because my experiments have all failed. I checked Helen >Feddema's site but her >Access->Excel heading says "Coming Soon". >Have you any suggestions in the interim? >TIA, >Arthur From darrend at nimble.com.au Tue Mar 7 19:06:31 2006 From: darrend at nimble.com.au (Darren DICK) Date: Wed, 8 Mar 2006 12:06:31 +1100 Subject: [AccessD] Import Image Message In-Reply-To: Message-ID: <20060308010739.VQKH19070.omta01ps.mx.bigpond.com@DENZILLAP> Have a look at Gustav's post Recommending http://databaseadvisors.com/pipermail/accessd/2004-August/026513.html I think this is what you want It's about turning on/off a flag in the Registry to show/hide this little import dialogue box Darren ------------------------------ T: 0424 696 433 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mark A Matte Sent: Wednesday, 8 March 2006 7:22 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Import Image Message I am using .gif images...When the user configures the screen...depending on what the user selects...the control has to change what .gif file it uses. I found that once I convert the mdb to an mde...hitting enter just cancels the load. This is better but not optimum. I'll play with the file format if necessary. Thanks, Mark A. Matte >From: "Mcgillivray, Don [IT]" >Reply-To: Access Developers discussion and problem >solving >To: "Access Developers discussion and problem >solving" >Subject: Re: [AccessD] Import Image Message >Date: Tue, 7 Mar 2006 14:12:29 -0600 > >Mark, > >Can you convert your images to another format? > >I think this happens because your images are in a format that Access >can use, but needs to import first. Access can work with some image >types directly without the importing step. I know bitmaps work without >importing, and there may be others. > >Don > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Wed Mar 8 02:57:27 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 08 Mar 2006 09:57:27 +0100 Subject: [AccessD] SQL count distinct problem Message-ID: Hi Jim Simple? Normally you are not that scared? Just use Lambert's SQL as a subquery: SELECT Vendor, Count(CHKNO) As CountChecks FROM (SELECT DISTINCT Table1.Vendor, Table1.CHKNO FROM Table1) GROUP BY Vendor; But checks? I can't believe this. We are writing 2006 and you are still mailing checks around by surface mail at extensive costs? Here checks are only used for very special occasions. Every normal kind of B2B payment is electronic. Imagine what level of potential cost savings you are facing ... /gustav >>> Jim.Hale at FleetPride.com 07-03-2006 23:26 >>> That will certainly work but I was kind of hoping I was missing something simple (Like the distinct keyword) that would allow me to do it in one query. Jim Hale -----Original Message----- From: Heenan, Lambert [mailto:Lambert.Heenan at aig.com] Sent: Tuesday, March 07, 2006 4:12 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] SQL count distinct problem You'll need a query that looks like this... SELECT DISTINCT Table1.Vendor, Table1.CHKNO FROM Table1; Then you can use that query as the source of your other query to do the grouping and counting. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Tuesday, March 07, 2006 4:53 PM To: 'Accessd (E-mail) Subject: [AccessD] SQL count distinct problem Assume a table with vendor, inv amt and check number. There may be multiple records for the vendor with the same check number. If I want to determine the total amt paid to a vendor and the number of checks written to him a simple groupby query will not do since the count function will count the number of occurrences not number of distinct checks. COUNT(DISTINCT(CHKNO) works in a pass through query on the AS400 but not in Jet SQL. What is the equivalent Jet SQL to determine the number of distinct checks written per vendor? TIA Jim Hale From marcus at tsstech.com Wed Mar 8 07:08:03 2006 From: marcus at tsstech.com (Scott Marcus) Date: Wed, 8 Mar 2006 08:08:03 -0500 Subject: [AccessD] SQL count distinct problem Message-ID: SELECT W.vendor, (SELECT count(C) As Checks FROM (SELECT V.vendor, V.checkno AS C FROM VendorChecks V GROUP BY V.vendor, V.checkno) WHERE V.vendor=W.vendor) AS NumOfChecks, Sum(W.amt) AS SumOfamt FROM VendorChecks AS W GROUP BY W.vendor; Slightly more complicated, but another way of doing the query. Scott Marcus -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Tuesday, March 07, 2006 5:26 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] SQL count distinct problem That will certainly work but I was kind of hoping I was missing something simple (Like the distinct keyword) that would allow me to do it in one query. Jim Hale -----Original Message----- From: Heenan, Lambert [mailto:Lambert.Heenan at aig.com] Sent: Tuesday, March 07, 2006 4:12 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] SQL count distinct problem You'll need a query that looks like this... SELECT DISTINCT Table1.Vendor, Table1.CHKNO FROM Table1; Then you can use that query as the source of your other query to do the grouping and counting. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Tuesday, March 07, 2006 4:53 PM To: 'Accessd (E-mail) Subject: [AccessD] SQL count distinct problem Assume a table with vendor, inv amt and check number. There may be multiple records for the vendor with the same check number. If I want to determine the total amt paid to a vendor and the number of checks written to him a simple groupby query will not do since the count function will count the number of occurrences not number of distinct checks. COUNT(DISTINCT(CHKNO) works in a pass through query on the AS400 but not in Jet SQL. What is the equivalent Jet SQL to determine the number of distinct checks written per vendor? TIA Jim Hale *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com NOTICE: This electronic mail transmission is for the use of the named individual or entity to which it is directed and may contain information that is privileged or confidential. If you are not the intended recipient, any disclosure, copying, distribution or use of the contents of any information contained herein is prohibited. If you have received this electronic mail transmission in error, delete it from your system without copying or forwarding it, and notify the sender of the error by replying via email or calling TSS Technologies at (513) 772-7000, so that our address record can be corrected. Any information included in this email is provided on an ?as is? and ?where as? basis, and TSS Technologies makes no representations or warranties of any kind with respect to the completeness or accuracy of the information contained in this email. From Jdemarco at hudsonhealthplan.org Wed Mar 8 07:19:37 2006 From: Jdemarco at hudsonhealthplan.org (Jim DeMarco) Date: Wed, 8 Mar 2006 08:19:37 -0500 Subject: [AccessD] Access or not as platform Message-ID: <08F823FD83787D4BA0B99CA580AD3C74030C5C78@TTNEXCHCL2.hshhp.com> I'd have to agree. Your development time is only a couple of weeks longer but you'll end up on a platform you can feel more confident will be around in a few years. We've been an Access house probably since this company was very young (it's over 20 years old now) but given some recent threads about the future of Access as a developer tool I've been rethinking that (other reasons as well but this is certainly a driver). We've been developing some .NET stuff for web and winforms and a move for my team to .NET is not out of the question. Access will still be around as BE tool here but SQL has been the db of choice for the past couple of years. Jim DeMarco -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Tuesday, March 07, 2006 2:53 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] [SPAM SUSPECT] Access or not as platform Marcel, If I had the choice, I'd probably do it in .Net with a SQL back-end (or Access if SQL is not an option). Remember, you can get SQL 2005 Express for free. With .Net, you have access to the latest technologies and there is some really nice stuff in .Net that would be difficult in Access or VB 6. You also have a choice of language(s) to use. As for the large run time, you would have a large runtime in .Net or in VB 6 also. SO I would not worry about the runtime aspect of it, unless they are using ancient PCs. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of E-business2start.com - Marcel Vreuls Sent: Tuesday, March 07, 2006 10:27 AM To: Access Developers discussion and problem solving Subject: [SPAM SUSPECT] [AccessD] Access or not as platform Importance: Low Hi Group, I am wondering on which platform to develop a new application. This app should handle archiving and searching for documents, scans and emails (like hummingbird but the lite version :-). I would like to store document information and a link to the psychical document on the server. I can do this rapidly in Access with my framework and knowledge (about 4 weeks) I can do this rapid in vb6 (about (5 weeks) i can do this in c# (about 6 weeks) Any suggestions which platform to choose. Because of integration i like access but deployment is not that good because of the large runtime? c#, .net is the future platform. Any suggestions, help, tips to help me solve this issue would be welcome. tnxs, marcel -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************************** "This electronic message is intended to be for the use only of the named recipient, and may contain information from Hudson Health Plan (HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". *********************************************************************************** From Gustav at cactus.dk Wed Mar 8 09:13:06 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 08 Mar 2006 16:13:06 +0100 Subject: [AccessD] Problem inserting and resizing MS Web Browser Control in MS Acces97 Message-ID: Hi David et al Oh my, gems are in the archive! Who could have figured this totally weird Access97 tip out? Thanks! You may need to choose Insert, ActiveX Control from the menu and then in the listbox select the control Microsoft Webbrowser. /gustav >>> SDC 11-10-2002 11:35:05 >>> Hi I solved this problem some years ago and gave it to Ken Getz who included it in Access Adviser magazine. The trick is to add the browser object to your form, then drag it to the required size. Having sized it right, now copy it to the clipboard (control X) and then paste it back to your form (Control V). It will now keep its size. You can only do this once. To set to a different size, start from scratch by pasting a new control. I discovered this approach by accident, but think it is to do with getting two independent programs (Access and Active X) to agree on a setting at the same time. It works with other active X objects also. Good luck David -----Original Message----- From: AccessD-owner at databaseadvisors.com [mailto:AccessD-owner at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Friday, 11 October 2002 7:15 PM To: AccessD Subject: [AccessD] Problem inserting and resizing MS Web Browser Control in MS Acces97 Hi All, Have anybody solved the trouble I've here with MS Web Browser Control in Acc97? From Jim.Hale at FleetPride.com Wed Mar 8 10:18:44 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Wed, 8 Mar 2006 10:18:44 -0600 Subject: [AccessD] SQL count distinct problem Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDA95@corp-es01.fleetpride.com> Thank you. That was the sub query I was looking for. Jim Hale -----Original Message----- From: Scott Marcus [mailto:marcus at tsstech.com] Sent: Wednesday, March 08, 2006 7:08 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] SQL count distinct problem SELECT W.vendor, (SELECT count(C) As Checks FROM (SELECT V.vendor, V.checkno AS C FROM VendorChecks V GROUP BY V.vendor, V.checkno) WHERE V.vendor=W.vendor) AS NumOfChecks, Sum(W.amt) AS SumOfamt FROM VendorChecks AS W GROUP BY W.vendor; Slightly more complicated, but another way of doing the query. Scott Marcus *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From sgeller at cce.umn.edu Wed Mar 8 11:36:58 2006 From: sgeller at cce.umn.edu (Susan Geller) Date: Wed, 8 Mar 2006 11:36:58 -0600 Subject: [AccessD] Utility to help replace primary key Message-ID: <89934FC7BFD7AC40AC64F2A29B0C2D63A9DE4A@mail.cce.local> I am working with a customer that has a database where the main person table uses SSN as the primary key. Yikes, yuck, ugly etc. I'm inheriting this mess from someone else. I want to create a new autonumber field in that table to use as a primary key instead, but once I do that I'm going to need to go in and fix all the queries and reports that reference the SSN field and especially those that link to it. My question is: Is there some kind of utility that could help with this chore? Even if there was something that could find all places the SSN field was referenced, that would be good. Thanks. --Susan Susan B. Geller Office of Information Systems College of Continuing Education University of Minnesota 306 Wesbrook Hall 77 Pleasant Street SE Minneapolis, MN 55455 Phone: 612-626-4785 Fax: 612-625-2568 From dwaters at usinternet.com Wed Mar 8 12:32:28 2006 From: dwaters at usinternet.com (Dan Waters) Date: Wed, 8 Mar 2006 12:32:28 -0600 Subject: [AccessD] Utility to help replace primary key In-Reply-To: <8800883.1141839635345.JavaMail.root@sniper13> Message-ID: <000501c642de$a79683f0$0200a8c0@danwaters> Susan, I use Rick Fisher's Find & Replace for doing this kind of thing. Don't worry about buying it and having it not turn out to be helpful just for this task. You should have a find and replace tool in any case. Another possibility is SpeedFerret, which I haven't used. I believe Find & Replace is about $40, and SpeedFerret is about $150. Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Geller Sent: Wednesday, March 08, 2006 11:37 AM To: accessD at databaseadvisors.com Subject: [AccessD] Utility to help replace primary key I am working with a customer that has a database where the main person table uses SSN as the primary key. Yikes, yuck, ugly etc. I'm inheriting this mess from someone else. I want to create a new autonumber field in that table to use as a primary key instead, but once I do that I'm going to need to go in and fix all the queries and reports that reference the SSN field and especially those that link to it. My question is: Is there some kind of utility that could help with this chore? Even if there was something that could find all places the SSN field was referenced, that would be good. Thanks. --Susan Susan B. Geller Office of Information Systems College of Continuing Education University of Minnesota 306 Wesbrook Hall 77 Pleasant Street SE Minneapolis, MN 55455 Phone: 612-626-4785 Fax: 612-625-2568 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jeffrey.demulling at usbank.com Wed Mar 8 12:23:56 2006 From: jeffrey.demulling at usbank.com (jeffrey.demulling at usbank.com) Date: Wed, 8 Mar 2006 12:23:56 -0600 Subject: [AccessD] Utility to help replace primary key In-Reply-To: <89934FC7BFD7AC40AC64F2A29B0C2D63A9DE4A@mail.cce.local> Message-ID: At least for the code part you could try using MZ-Tools. Jeffrey F. Demulling Project Manager U.S. Bank Corporate Trust Services 60 Livingston Avenue EP-MN-WS3C St. Paul, MN 55107-2292 Ph: 651-495-3925 Fax: 651-495-8103 Pager: 888-732-3909 Text Messaging: 8887323909 at my2way.com email: jeffrey.demulling at usbank.com "Susan Geller" To Sent by: accessD at databaseadvisors.com accessd-bounces at d cc atabaseadvisors.c om Subject [AccessD] Utility to help replace primary key 03/08/2006 11:36 AM Please respond to "Access Developers discussion and problem solving" I am working with a customer that has a database where the main person table uses SSN as the primary key. Yikes, yuck, ugly etc. I'm inheriting this mess from someone else. I want to create a new autonumber field in that table to use as a primary key instead, but once I do that I'm going to need to go in and fix all the queries and reports that reference the SSN field and especially those that link to it. My question is: Is there some kind of utility that could help with this chore? Even if there was something that could find all places the SSN field was referenced, that would be good. Thanks. --Susan Susan B. Geller Office of Information Systems College of Continuing Education University of Minnesota 306 Wesbrook Hall 77 Pleasant Street SE Minneapolis, MN 55455 Phone: 612-626-4785 Fax: 612-625-2568 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com ------------------------------------------------------------------------------ Electronic Privacy Notice. This e-mail, and any attachments, contains information that is, or may be, covered by electronic communications privacy laws, and is also confidential and proprietary in nature. If you are not the intended recipient, please be advised that you are legally prohibited from retaining, using, copying, distributing, or otherwise disclosing this information in any manner. Instead, please reply to the sender that you have received this communication in error, and then immediately delete it. Thank you in advance for your cooperation. ============================================================================== From carlo at xsit.nl Wed Mar 8 13:21:03 2006 From: carlo at xsit.nl (Carlo van der Zon (Access IT Training)) Date: Wed, 8 Mar 2006 20:21:03 +0100 Subject: [AccessD] Start Excel Automation Message-ID: <2E4C3CCA2B12EC40B396A1A63CFC1ABA08F95F@headitdc.headit.nl> Hi I start Excel from code, fill a list, and Works fine. I recorded a macro to create a pivottable, paste it in the Access code and it Works fine. But just only the first time!! Is there any way to make sure just only 1 Excel instance is running?? Thanks Carlo From Erwin.Craps at ithelps.be Wed Mar 8 14:07:32 2006 From: Erwin.Craps at ithelps.be (Erwin Craps - IT Helps) Date: Wed, 8 Mar 2006 21:07:32 +0100 Subject: [AccessD] Start Excel Automation Message-ID: <46B976F2B698FF46A4FE7636509B22DF3CB62C@stekelbes.ithelps.local> You probably don't set your object(s) to Nothing after executing your code. Like set objExcel = Nothing -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Carlo van der Zon (Access IT Training) Sent: Wednesday, March 08, 2006 8:21 PM To: Access Developers discussion and problem solving Subject: [AccessD] Start Excel Automation Hi I start Excel from code, fill a list, and Works fine. I recorded a macro to create a pivottable, paste it in the Access code and it Works fine. But just only the first time!! Is there any way to make sure just only 1 Excel instance is running?? Thanks Carlo -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From sgoodhall at comcast.net Wed Mar 8 14:42:23 2006 From: sgoodhall at comcast.net (sgoodhall at comcast.net) Date: Wed, 08 Mar 2006 20:42:23 +0000 Subject: [AccessD] Start Excel Automation Message-ID: <030820062042.16272.440F41AF000182F700003F90220700164104040E080B0101099C@comcast.net> I have found that the safest thing to do is at the end of the execution, quit Excel and then set it to nothing. objExcel.quit set objExcel = nothing If you crash during testing, the Excel instance may get left open. If you have not set it to be visible, it can be a mess to get rid of it. To do this: set objExcel = new Excel.Application objExcel.visible = true Somewhere I have code that will run around and find all running instances of Excel (or Word) and terminate them. If I can find it readily, I will post it. Regards, Steve Goodhall, PMP -------------- Original message -------------- From: "Erwin Craps - IT Helps" > You probably don't set your object(s) to Nothing after executing your > code. > > Like > set objExcel = Nothing > > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Carlo van der > Zon (Access IT Training) > Sent: Wednesday, March 08, 2006 8:21 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Start Excel Automation > > Hi > > I start Excel from code, fill a list, and Works fine. > I recorded a macro to create a pivottable, paste it in the Access code > and it Works fine. > > But just only the first time!! Is there any way to make sure just only 1 > Excel instance is running?? > > Thanks > Carlo > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From sgoodhall at comcast.net Wed Mar 8 14:46:17 2006 From: sgoodhall at comcast.net (sgoodhall at comcast.net) Date: Wed, 08 Mar 2006 20:46:17 +0000 Subject: [AccessD] Utility to help replace primary key Message-ID: <030820062046.6582.440F4299000331A0000019B6220076369204040E080B0101099C@comcast.net> Incidentally, you don't need to rush to replace your queries. So long as SSN remains indexed, you should be able to use it for JOINing without a performance penalty. Steve Goodhall, PMP -------------- Original message -------------- From: jeffrey.demulling at usbank.com > At least for the code part you could try using MZ-Tools. > > Jeffrey F. Demulling > Project Manager > U.S. Bank Corporate Trust Services > 60 Livingston Avenue > EP-MN-WS3C > St. Paul, MN 55107-2292 > Ph: 651-495-3925 > Fax: 651-495-8103 > Pager: 888-732-3909 > Text Messaging: 8887323909 at my2way.com > email: jeffrey.demulling at usbank.com > > > > "Susan Geller" > > edu> To > Sent by: accessD at databaseadvisors.com > accessd-bounces at d cc > atabaseadvisors.c > om Subject > [AccessD] Utility to help replace > primary key > 03/08/2006 11:36 > AM > > > Please respond to > "Access > Developers > discussion and > problem solving" > > advisors.com> > > > > > > > I am working with a customer that has a database where the main person > table uses SSN as the primary key. Yikes, yuck, ugly etc. I'm > inheriting this mess from someone else. > > I want to create a new autonumber field in that table to use as a > primary key instead, but once I do that I'm going to need to go in and > fix all the queries and reports that reference the SSN field and > especially those that link to it. > > My question is: Is there some kind of utility that could help with this > chore? Even if there was something that could find all places the SSN > field was referenced, that would be good. > > Thanks. > > --Susan > > > Susan B. Geller > Office of Information Systems > College of Continuing Education > University of Minnesota > 306 Wesbrook Hall > 77 Pleasant Street SE > Minneapolis, MN 55455 > Phone: 612-626-4785 > Fax: 612-625-2568 > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > > > > ------------------------------------------------------------------------------ > Electronic Privacy Notice. This e-mail, and any attachments, contains > information that is, or may be, covered by electronic communications privacy > laws, and is also confidential and proprietary in nature. If you are not the > intended recipient, please be advised that you are legally prohibited from > retaining, using, copying, distributing, or otherwise disclosing this > information in any manner. Instead, please reply to the sender that you have > received this communication in error, and then immediately delete it. Thank you > in advance for your cooperation. > ============================================================================== > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Thu Mar 9 11:16:42 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 9 Mar 2006 12:16:42 -0500 Subject: [AccessD] MSSQL conversion Message-ID: <01dc01c6439d$3f14ebe0$647aa8c0@ColbyM6805> Are there any list members with experience converting a FE from using an MDB BE to using a SQL Server BE, who have time available to take on a project? In need someone with significant experience in this area. The FE uses bound forms but nothing much too fancy going on. However there are references to controls on forms for filtering in the form query as well as references to custom functions, likewise for data sets for combos. My client would prefer to have a "ballpark" for the cost, IOW, given X forms, with Y lists and combos, it would cost ~Z to make this happen. He is not looking for a "written in stone" estimate. Anyone with good experience doing this who has time available please contact me offline at jwcolby at colbyconsulting.com. Thanks, John W. Colby www.ColbyConsulting.com From jwcolby at ColbyConsulting.com Thu Mar 9 12:54:30 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 9 Mar 2006 13:54:30 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets Message-ID: <000e01c643aa$e82b2200$647aa8c0@ColbyM6805> Can someone give me an overview of what this involves? Is the recordset then "disconnected"? How do you handle form/subforms? I have a specific application where the users have a bound form which pulls a set of records (people) that they will be making calls to. There is a bound subform where they enter the results of the call - about 5 or 6 fields, the user's ID, date/time, call status, note etc. They get a TON of locking issues with this. The user is almost exclusively ADDING new records into the call status table, though they do occasionally "correct" info in the person's record - address / phone etc. The issue though is that as soon as they try to create a NEW record in the call status subform, they get the infamous "another person has locked this record" which is particularly puzzling since they are not editing an existing record but rather adding a new record. I changed the note from Memo to String(255) to avoid "page locking" issues, deleted all of the indexes on the fields in the call status records etc but the issues still occur. My understanding is that Index data is also stored in pages so that there might be an issue with the page that an index is attempting to store it's data in as the record is created is locked by another user creating an index using that same page. Of course there is a relationship between the person and the call status so there is at least one index that simply cannot be even seen, never mind deleted, at least without removing the relationship. So I am trying to resolve this continuous nagging locking issue. I am even willing to go unbound, but they really want to be able to see the previous calls in the subform so that they can tell what went on in previous calls. I thought that if I could bind the main people form and the child call status forms to ADO recordsets, then the update (and subsequent locking issues) would be very momentary and the probability of a lock issue occurring would decrease dramatically. However I have never done the "ADO recordset binding" before. Does anyone have any knowledge of this? John W. Colby www.ColbyConsulting.com From Jim.Hale at FleetPride.com Thu Mar 9 13:04:13 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Thu, 9 Mar 2006 13:04:13 -0600 Subject: [AccessD] Access XP forms bound to ADO recordsets Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDA9D@corp-es01.fleetpride.com> Check out p61-68 of the ADH v2. It has a good ADO locking discussion including ADO retry code. Jim Hale -----Original Message----- From: John Colby [mailto:jwcolby at colbyconsulting.com] Sent: Thursday, March 09, 2006 12:54 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Access XP forms bound to ADO recordsets Can someone give me an overview of what this involves? Is the recordset then "disconnected"? How do you handle form/subforms? I have a specific application where the users have a bound form which pulls a set of records (people) that they will be making calls to. There is a bound subform where they enter the results of the call - about 5 or 6 fields, the user's ID, date/time, call status, note etc. They get a TON of locking issues with this. The user is almost exclusively ADDING new records into the call status table, though they do occasionally "correct" info in the person's record - address / phone etc. The issue though is that as soon as they try to create a NEW record in the call status subform, they get the infamous "another person has locked this record" which is particularly puzzling since they are not editing an existing record but rather adding a new record. I changed the note from Memo to String(255) to avoid "page locking" issues, deleted all of the indexes on the fields in the call status records etc but the issues still occur. My understanding is that Index data is also stored in pages so that there might be an issue with the page that an index is attempting to store it's data in as the record is created is locked by another user creating an index using that same page. Of course there is a relationship between the person and the call status so there is at least one index that simply cannot be even seen, never mind deleted, at least without removing the relationship. So I am trying to resolve this continuous nagging locking issue. I am even willing to go unbound, but they really want to be able to see the previous calls in the subform so that they can tell what went on in previous calls. I thought that if I could bind the main people form and the child call status forms to ADO recordsets, then the update (and subsequent locking issues) would be very momentary and the probability of a lock issue occurring would decrease dramatically. However I have never done the "ADO recordset binding" before. Does anyone have any knowledge of this? John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From cfoust at infostatsystems.com Thu Mar 9 13:12:19 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 9 Mar 2006 11:12:19 -0800 Subject: [AccessD] MSSQL conversion Message-ID: John, You might want to specify *how* you want the conversion done. Are you planning to use stored procedures or keep going with Access queries? That makes a big difference on how long this kind of thing takes and will help people decide whether they can commit to it. BTW, I'm not in the market, just thought I'd add the suggestion. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 09, 2006 9:17 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] MSSQL conversion Are there any list members with experience converting a FE from using an MDB BE to using a SQL Server BE, who have time available to take on a project? In need someone with significant experience in this area. The FE uses bound forms but nothing much too fancy going on. However there are references to controls on forms for filtering in the form query as well as references to custom functions, likewise for data sets for combos. My client would prefer to have a "ballpark" for the cost, IOW, given X forms, with Y lists and combos, it would cost ~Z to make this happen. He is not looking for a "written in stone" estimate. Anyone with good experience doing this who has time available please contact me offline at jwcolby at colbyconsulting.com. Thanks, John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jeffrey.demulling at usbank.com Thu Mar 9 13:29:03 2006 From: jeffrey.demulling at usbank.com (jeffrey.demulling at usbank.com) Date: Thu, 9 Mar 2006 13:29:03 -0600 Subject: [AccessD] Return new id number In-Reply-To: Message-ID: Basics: FE = A2K BE = SQL2K I am trying to use the code below with the accompanying stored procedure when inserting a new record into the employee table. Once the employee is entered into the table I want to know the record number for this employee. The access code for inserting the employee and returning the new id number is: Public Function lngAddEmployee(strEmployeeName As String, strEmployeeEmail As String, varEmployeePhone As Variant, lngEmployeeManager As Long) As Long Dim con As New ADODB.Connection Dim cmd As New ADODB.Command Dim rs As New ADODB.Recordset cmd.CommandText = "sproc_APPEND_New_Employee" cmd.CommandType = adCmdStoredProc con = setSQLServerConnectionApplication(2, 2) con.Open cmd.ActiveConnection = con cmd.Parameters.Refresh cmd(1) = strEmployeeName cmd(2) = strEmployeeEmail cmd(3) = varEmployeePhone cmd(4) = lngEmployeeManager Set rs = cmd.Execute lngAddEmployee = rs.Fields(0).Value con.Close Set rs = Nothing Set con = Nothing Set cmd = Nothing End Function I have been trying to test it using: Sub Test() MsgBox lngAddEmployee("Test", "TestEmail", "TestPhone", 7) MsgBox "Finished" End Sub In the function it hangs on the line lngAddEmployee = rs.Fields(0).Value The stored procedure is the following and if I use Query Analyzer it works just fine and returns the id of the new record. CREATE PROCEDURE dbo.sproc_APPEND_New_Employee ----------------------------------------------------------------------------------------- -- Procedure: APPEND_New_Employee -- Author: Jeffrey F. Demulling -- Create Date: 2006-03-09 -- Database Name: DebtMaster -- Table Names: tblEmployee -- Purpose: Upload a new Employee -- -- -- Maintenance log- Most recent changes first -- Updated By Updated Date Description of Change ------------------------------------------------------------------------------------------ -- -- ------------------------------------------------------------------------------------------ @strEmployeeName nvarchar(255), @strEmployeeEmail nvarchar(255), @strEmployeePhone nvarchar(50), @intEmployeeManager int AS INSERT INTO tblEmployee ( EmployeeName, EmployeeEmail, EmployeePhone, EmployeeManager) VALUES ( @strEmployeeName, @strEmployeeEmail, @strEmployeePhone, @intEmployeeManager) SELECT SCOPE_IDENTITY() AS 'InternalEmployeeNumber' GO Can anyone see what I am doing wrong? TIA Jeffrey F. Demulling Project Manager U.S. Bank Corporate Trust Services 60 Livingston Avenue EP-MN-WS3C St. Paul, MN 55107-2292 Ph: 651-495-3925 Fax: 651-495-8103 Pager: 888-732-3909 Text Messaging: 8887323909 at my2way.com email: jeffrey.demulling at usbank.com ------------------------------------------------------------------------------ Electronic Privacy Notice. This e-mail, and any attachments, contains information that is, or may be, covered by electronic communications privacy laws, and is also confidential and proprietary in nature. If you are not the intended recipient, please be advised that you are legally prohibited from retaining, using, copying, distributing, or otherwise disclosing this information in any manner. Instead, please reply to the sender that you have received this communication in error, and then immediately delete it. Thank you in advance for your cooperation. ============================================================================== From dwaters at usinternet.com Thu Mar 9 13:34:09 2006 From: dwaters at usinternet.com (Dan Waters) Date: Thu, 9 Mar 2006 13:34:09 -0600 Subject: [AccessD] MSSQL conversion In-Reply-To: <23291174.1141931739162.JavaMail.root@sniper21> Message-ID: <000001c643b0$708e31f0$0200a8c0@danwaters> The next conversion: John Colby Consulting ---> Colby Systems, Inc. ;-) Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Thursday, March 09, 2006 1:12 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] MSSQL conversion John, You might want to specify *how* you want the conversion done. Are you planning to use stored procedures or keep going with Access queries? That makes a big difference on how long this kind of thing takes and will help people decide whether they can commit to it. BTW, I'm not in the market, just thought I'd add the suggestion. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Thursday, March 09, 2006 9:17 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] MSSQL conversion Are there any list members with experience converting a FE from using an MDB BE to using a SQL Server BE, who have time available to take on a project? In need someone with significant experience in this area. The FE uses bound forms but nothing much too fancy going on. However there are references to controls on forms for filtering in the form query as well as references to custom functions, likewise for data sets for combos. My client would prefer to have a "ballpark" for the cost, IOW, given X forms, with Y lists and combos, it would cost ~Z to make this happen. He is not looking for a "written in stone" estimate. Anyone with good experience doing this who has time available please contact me offline at jwcolby at colbyconsulting.com. Thanks, John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From tewald at wowway.com Thu Mar 9 13:35:57 2006 From: tewald at wowway.com (tewald at wowway.com) Date: Thu, 9 Mar 2006 13:35:57 -0600 Subject: [AccessD] Excel to Access Help Needed In-Reply-To: References: Message-ID: <20060309193404.M50407@wowway.com> I am converting an Excel-based system to Access; in other words, flat-file to relational. The main data entry Excel worksheet has data unique to the work order on the top, followed by a list of several systems that could possibly be affected by the work order; each system is listed on the form, and the user determines which ones are needed. Each system, in turn, has several ways (all have the same ways) in which it could be affected. Think of the lower portion as like this (in this example, Name = system): Name: Mary John Alex Theresa Gender: F M M F Age: 55 35 34 26 Needed: N Y N Y And then more categories. Now, I have a main table for the information at the top of the form. I have another table that includes the individual systems (names) and all of the categories (in the example above, that would be gender, age and needed), as well as a foreign key to the main table, so I can keep track of which work order contained which information. Not the best example above, I suppose, because logically gender and age would stay the same (well, gender, anyway); in the real table, that data changes with each work order, and not all of the systems (names) will be needed each time. I would like to present the users with a form similar to the Excel spreadsheet they?re used to, so I?d like to have it look like the example above. I?m drawing a blank. I hope I?ve explained this well enough. I?d appreciate any help. I?d also appreciate your not telling my wife that I told you her age. ;-) TIA, Tom Ewald From RRANTHON at sentara.com Thu Mar 9 14:07:26 2006 From: RRANTHON at sentara.com (Randall R Anthony) Date: Thu, 09 Mar 2006 15:07:26 -0500 Subject: [AccessD] Return new id number In-Reply-To: References: Message-ID: <200603092007.k29K7iH13103@databaseadvisors.com> Jeff, Not sure on where the value would be returned in the access calling procedure, but I'm using VB with SQL2K on BE. In the SP, use the following: @RetValue Int Output --after your last declaration ----return Artificial key -- in place of your select scope_identity statement Select @RetValue = @@Identity >From my VB module, what returns the value to be used further on in my code is: cmd.Parameters("@RetValue").Value Hope this helps a little bit... >>> jeffrey.demulling at usbank.com 03/09/06 2:29 PM >>> Basics: FE = A2K BE = SQL2K I am trying to use the code below with the accompanying stored procedure when inserting a new record into the employee table. Once the employee is entered into the table I want to know the record number for this employee. The access code for inserting the employee and returning the new id number is: Public Function lngAddEmployee(strEmployeeName As String, strEmployeeEmail As String, varEmployeePhone As Variant, lngEmployeeManager As Long) As Long Dim con As New ADODB.Connection Dim cmd As New ADODB.Command Dim rs As New ADODB.Recordset cmd.CommandText = "sproc_APPEND_New_Employee" cmd.CommandType = adCmdStoredProc con = setSQLServerConnectionApplication(2, 2) con.Open cmd.ActiveConnection = con cmd.Parameters.Refresh cmd(1) = strEmployeeName cmd(2) = strEmployeeEmail cmd(3) = varEmployeePhone cmd(4) = lngEmployeeManager Set rs = cmd.Execute lngAddEmployee = rs.Fields(0).Value con.Close Set rs = Nothing Set con = Nothing Set cmd = Nothing End Function I have been trying to test it using: Sub Test() MsgBox lngAddEmployee("Test", "TestEmail", "TestPhone", 7) MsgBox "Finished" End Sub In the function it hangs on the line lngAddEmployee = rs.Fields(0).Value The stored procedure is the following and if I use Query Analyzer it works just fine and returns the id of the new record. CREATE PROCEDURE dbo.sproc_APPEND_New_Employee ----------------------------------------------------------------------------------------- -- Procedure: APPEND_New_Employee -- Author: Jeffrey F. Demulling -- Create Date: 2006-03-09 -- Database Name: DebtMaster -- Table Names: tblEmployee -- Purpose: Upload a new Employee -- -- -- Maintenance log- Most recent changes first -- Updated By Updated Date Description of Change ------------------------------------------------------------------------------------------ -- -- ------------------------------------------------------------------------------------------ @strEmployeeName nvarchar(255), @strEmployeeEmail nvarchar(255), @strEmployeePhone nvarchar(50), @intEmployeeManager int AS INSERT INTO tblEmployee ( EmployeeName, EmployeeEmail, EmployeePhone, EmployeeManager) VALUES ( @strEmployeeName, @strEmployeeEmail, @strEmployeePhone, @intEmployeeManager) SELECT SCOPE_IDENTITY() AS 'InternalEmployeeNumber' GO Can anyone see what I am doing wrong? TIA Jeffrey F. Demulling Project Manager U.S. Bank Corporate Trust Services 60 Livingston Avenue EP-MN-WS3C St. Paul, MN 55107-2292 Ph: 651-495-3925 Fax: 651-495-8103 Pager: 888-732-3909 Text Messaging: 8887323909 at my2way.com email: jeffrey.demulling at usbank.com ------------------------------------------------------------------------------ Electronic Privacy Notice. This e-mail, and any attachments, contains information that is, or may be, covered by electronic communications privacy laws, and is also confidential and proprietary in nature. If you are not the intended recipient, please be advised that you are legally prohibited from retaining, using, copying, distributing, or otherwise disclosing this information in any manner. Instead, please reply to the sender that you have received this communication in error, and then immediately delete it. Thank you in advance for your cooperation. ============================================================================== -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Patricia.O'Connor at otda.state.ny.us Thu Mar 9 14:21:28 2006 From: Patricia.O'Connor at otda.state.ny.us (O'Connor, Patricia (OTDA)) Date: Thu, 9 Mar 2006 15:21:28 -0500 Subject: [AccessD] Access 2K to Excel changes field format Message-ID: <01DBAB52E30A9A4AB3D94EF8029EDBE8016B245E@EXCNYSM0A1AI.nysemail.nyenet> Hi all I have an ID field which is TEXT 14 characters In the Access report it is being displayed correctly 66007573735D01 When this report is put to EXCEL through the "Analyze it through EXCEL" it is dropping the D so the ID changes to 6.60076E+11 I have changed the excel format to TEXT. If I then go to that cell highlight and leave it will look like this 660075737350 I have the field formatted in the query and access report as text @@@@@@@@@@@@@@. Is there something in excel or access that I have to change in the options. This does not make sense and it is causing problems sending the results to others. Thanks ************************************************** * Patricia O'Connor * Associate Computer Programmer Analyst * OTDA - BDMA * (W) mailto:Patricia.O'Connor at otda.state.ny.us * (w) mailto:aa1160 at otda.state.ny.us ************************************************** -------------------------------------------------------- This e-mail, including any attachments, may be confidential, privileged or otherwise legally protected. It is intended only for the addressee. If you received this e-mail in error or from someone who was not authorized to send it to you, do not disseminate, copy or otherwise use this e-mail or its attachments. Please notify the sender immediately by reply e-mail and delete the e-mail from your system. From cfoust at infostatsystems.com Thu Mar 9 14:47:26 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 9 Mar 2006 12:47:26 -0800 Subject: [AccessD] Access 2K to Excel changes field format Message-ID: In the query, concatenate a single quote to the front of the value. Excel will see that as text and leave it alone. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of O'Connor, Patricia (OTDA) Sent: Thursday, March 09, 2006 12:21 PM To: Access Developers discussion and problem solving Subject: [AccessD] Access 2K to Excel changes field format Hi all I have an ID field which is TEXT 14 characters In the Access report it is being displayed correctly 66007573735D01 When this report is put to EXCEL through the "Analyze it through EXCEL" it is dropping the D so the ID changes to 6.60076E+11 I have changed the excel format to TEXT. If I then go to that cell highlight and leave it will look like this 660075737350 I have the field formatted in the query and access report as text @@@@@@@@@@@@@@. Is there something in excel or access that I have to change in the options. This does not make sense and it is causing problems sending the results to others. Thanks ************************************************** * Patricia O'Connor * Associate Computer Programmer Analyst * OTDA - BDMA * (W) mailto:Patricia.O'Connor at otda.state.ny.us * (w) mailto:aa1160 at otda.state.ny.us ************************************************** -------------------------------------------------------- This e-mail, including any attachments, may be confidential, privileged or otherwise legally protected. It is intended only for the addressee. If you received this e-mail in error or from someone who was not authorized to send it to you, do not disseminate, copy or otherwise use this e-mail or its attachments. Please notify the sender immediately by reply e-mail and delete the e-mail from your system. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jim.Hale at FleetPride.com Thu Mar 9 15:36:16 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Thu, 9 Mar 2006 15:36:16 -0600 Subject: [AccessD] Quotient join Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDA9E@corp-es01.fleetpride.com> Access Database Design and Programming discusses a quotient join in an appendix but fails to show the SQL. It looks useful. Does anyone know the syntax? Something like "SELECT Supplier.Sname FROM Supplier QUOTIENT JOIN Type ON Supplier.Type / Type.ID;"? Jim Hale *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From cfoust at infostatsystems.com Thu Mar 9 16:17:55 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 9 Mar 2006 14:17:55 -0800 Subject: [AccessD] Quotient join Message-ID: Look in Appendix B - The Quotient: An Additional Operation of the Relational Algebra. Then you can explain it to me! LOL Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Thursday, March 09, 2006 1:36 PM To: 'Accessd (E-mail) Subject: [AccessD] Quotient join Access Database Design and Programming discusses a quotient join in an appendix but fails to show the SQL. It looks useful. Does anyone know the syntax? Something like "SELECT Supplier.Sname FROM Supplier QUOTIENT JOIN Type ON Supplier.Type / Type.ID;"? Jim Hale *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Patricia.O'Connor at otda.state.ny.us Thu Mar 9 16:35:34 2006 From: Patricia.O'Connor at otda.state.ny.us (O'Connor, Patricia (OTDA)) Date: Thu, 9 Mar 2006 17:35:34 -0500 Subject: [AccessD] Access 2K to Excel changes field format Message-ID: <01DBAB52E30A9A4AB3D94EF8029EDBE8016B2460@EXCNYSM0A1AI.nysemail.nyenet> The query is used to put data into an Access report. The single quote shows up both in the Access report and the excel cell. That does not look good nor does it make sense to user seeing this. If I try to get rid of the single quote in the Access report then it gets reformatted in excel when using the Analyze in Excel. The field is specified and stored as text in both access and oracle and specified text in Excel. Here are some examples. When I use the original query in Access that creates the report directly in excel it did not mess up the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 66007974120D01 66001215257F01 If while looking at the access report and I click Analyze with Excel it does change the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 6.6008E+11 66001215257F01 Why would it mess up only certain id's and why when creating from Access report? Is there a way to tell if whether the wrong version of the analyze option is being used. I do have Access 97 and 2K on this machine. Thanks ************************************************** * Patricia O'Connor * Associate Computer Programmer Analyst * OTDA - BDMA * (W) mailto:Patricia.O'Connor at otda.state.ny.us * (w) mailto:aa1160 at otda.state.ny.us ************************************************** > -------------------------------------------------------- This e-mail, including any attachments, may be confidential, privileged or otherwise legally protected. It is intended only for the addressee. If you received this e-mail in error or from someone who was not authorized to send it to you, do not disseminate, copy or otherwise use this e-mail or its attachments. Please notify the sender immediately by reply e-mail and delete the e-mail from your system. -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of > Charlotte Foust > Sent: Thursday, March 09, 2006 03:47 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access 2K to Excel changes field format > > In the query, concatenate a single quote to the front of the value. > Excel will see that as text and leave it alone. > > Charlotte Foust > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of > O'Connor, Patricia (OTDA) > Sent: Thursday, March 09, 2006 12:21 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Access 2K to Excel changes field format > > > Hi all > > I have an ID field which is TEXT 14 characters > > In the Access report it is being displayed correctly 66007573735D01 > > When this report is put to EXCEL through the "Analyze it > through EXCEL" > it is dropping the D so the ID changes to 6.60076E+11 I have > changed the excel format to TEXT. If I then go to that cell > highlight and leave it will look like this 660075737350 > > I have the field formatted in the query and access report as > text @@@@@@@@@@@@@@. Is there something in excel or access > that I have to change in the options. This does not make > sense and it is causing problems sending the results to others. > > Thanks > > ************************************************** > * Patricia O'Connor > * Associate Computer Programmer Analyst > * OTDA - BDMA > * (W) mailto:Patricia.O'Connor at otda.state.ny.us > * (w) mailto:aa1160 at otda.state.ny.us > ************************************************** > -------------------------------------------------------- From rusty.hammond at cpiqpc.com Thu Mar 9 16:42:29 2006 From: rusty.hammond at cpiqpc.com (rusty.hammond at cpiqpc.com) Date: Thu, 9 Mar 2006 16:42:29 -0600 Subject: [AccessD] Access 2K to Excel changes field format Message-ID: <8301C8A868251E4C8ECD3D4FFEA40F8A154F856C@cpixchng-1.cpiqpc.net> I've discovered once the query is exported to Excel with the single quotes, if I do a find and replace and enter the single quote in both the find and replace fields, the single quote disappears from the excel cells. -----Original Message----- From: O'Connor, Patricia (OTDA) [mailto:Patricia.O'Connor at otda.state.ny.us] Sent: Thursday, March 09, 2006 4:36 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access 2K to Excel changes field format The query is used to put data into an Access report. The single quote shows up both in the Access report and the excel cell. That does not look good nor does it make sense to user seeing this. If I try to get rid of the single quote in the Access report then it gets reformatted in excel when using the Analyze in Excel. The field is specified and stored as text in both access and oracle and specified text in Excel. Here are some examples. When I use the original query in Access that creates the report directly in excel it did not mess up the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 66007974120D01 66001215257F01 If while looking at the access report and I click Analyze with Excel it does change the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 6.6008E+11 66001215257F01 Why would it mess up only certain id's and why when creating from Access report? Is there a way to tell if whether the wrong version of the analyze option is being used. I do have Access 97 and 2K on this machine. Thanks ************************************************** * Patricia O'Connor * Associate Computer Programmer Analyst * OTDA - BDMA * (W) mailto:Patricia.O'Connor at otda.state.ny.us * (w) mailto:aa1160 at otda.state.ny.us ************************************************** > -------------------------------------------------------- This e-mail, including any attachments, may be confidential, privileged or otherwise legally protected. It is intended only for the addressee. If you received this e-mail in error or from someone who was not authorized to send it to you, do not disseminate, copy or otherwise use this e-mail or its attachments. Please notify the sender immediately by reply e-mail and delete the e-mail from your system. -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of > Charlotte Foust > Sent: Thursday, March 09, 2006 03:47 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access 2K to Excel changes field format > > In the query, concatenate a single quote to the front of the value. > Excel will see that as text and leave it alone. > > Charlotte Foust > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of > O'Connor, Patricia (OTDA) > Sent: Thursday, March 09, 2006 12:21 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Access 2K to Excel changes field format > > > Hi all > > I have an ID field which is TEXT 14 characters > > In the Access report it is being displayed correctly 66007573735D01 > > When this report is put to EXCEL through the "Analyze it > through EXCEL" > it is dropping the D so the ID changes to 6.60076E+11 I have > changed the excel format to TEXT. If I then go to that cell > highlight and leave it will look like this 660075737350 > > I have the field formatted in the query and access report as > text @@@@@@@@@@@@@@. Is there something in excel or access > that I have to change in the options. This does not make > sense and it is causing problems sending the results to others. > > Thanks > > ************************************************** > * Patricia O'Connor > * Associate Computer Programmer Analyst > * OTDA - BDMA > * (W) mailto:Patricia.O'Connor at otda.state.ny.us > * (w) mailto:aa1160 at otda.state.ny.us > ************************************************** > -------------------------------------------------------- -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com ********************************************************************** WARNING: All e-mail sent to and from this address will be received, scanned or otherwise recorded by the CPI Qualified Plan Consultants, Inc. corporate e-mail system and is subject to archival, monitoring or review by, and/or disclosure to, someone other than the recipient. ********************************************************************** From Jim.Hale at FleetPride.com Thu Mar 9 16:44:09 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Thu, 9 Mar 2006 16:44:09 -0600 Subject: [AccessD] Quotient join Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDA9F@corp-es01.fleetpride.com> That's where I found the definition but not the SQL (Edition 1- maybe it is described in a later edition?). It says this table (SUPPLIER): Sname Jones Wood Supply Orange Coast Jones Wood Supply Austin Hardwoods Orange Coast West Lumber Jones Wood Supply Orange Coast West Lumber Jones Wood Supply Austin Hardwoods Orange Coast Fred's Woods divided by this table (TYPE) Type Mahogany Red Oak Poplar Walnut equals Jones Wood Supply Orange Coast ie all suppliers who supply all types. Kinda neat IMHO Jim Hale -----Original Message----- From: Charlotte Foust [mailto:cfoust at infostatsystems.com] Sent: Thursday, March 09, 2006 4:18 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Quotient join Look in Appendix B - The Quotient: An Additional Operation of the Relational Algebra. Then you can explain it to me! LOL Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Thursday, March 09, 2006 1:36 PM To: 'Accessd (E-mail) Subject: [AccessD] Quotient join Access Database Design and Programming discusses a quotient join in an appendix but fails to show the SQL. It looks useful. Does anyone know the syntax? Something like "SELECT Supplier.Sname FROM Supplier QUOTIENT JOIN Type ON Supplier.Type / Type.ID;"? Jim Hale *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From Jim.Hale at FleetPride.com Thu Mar 9 16:57:42 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Thu, 9 Mar 2006 16:57:42 -0600 Subject: [AccessD] Access 2K to Excel changes field format Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDAA0@corp-es01.fleetpride.com> I'm going to guess that D0 makes Excel think it is "0 decimals" . Try adding a space in front of the string- that may help although it is not very elegant Jim Hale. -----Original Message----- From: O'Connor, Patricia (OTDA) [mailto:Patricia.O'Connor at otda.state.ny.us] Sent: Thursday, March 09, 2006 4:36 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access 2K to Excel changes field format The query is used to put data into an Access report. The single quote shows up both in the Access report and the excel cell. That does not look good nor does it make sense to user seeing this. If I try to get rid of the single quote in the Access report then it gets reformatted in excel when using the Analyze in Excel. The field is specified and stored as text in both access and oracle and specified text in Excel. Here are some examples. When I use the original query in Access that creates the report directly in excel it did not mess up the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 66007974120D01 66001215257F01 If while looking at the access report and I click Analyze with Excel it does change the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 6.6008E+11 66001215257F01 Why would it mess up only certain id's and why when creating from Access report? Is there a way to tell if whether the wrong version of the analyze option is being used. I do have Access 97 and 2K on this machine. Thanks ************************************************** * Patricia O'Connor * Associate Computer Programmer Analyst * OTDA - BDMA * (W) mailto:Patricia.O'Connor at otda.state.ny.us * (w) mailto:aa1160 at otda.state.ny.us ************************************************** > -------------------------------------------------------- This e-mail, including any attachments, may be confidential, privileged or otherwise legally protected. It is intended only for the addressee. If you received this e-mail in error or from someone who was not authorized to send it to you, do not disseminate, copy or otherwise use this e-mail or its attachments. Please notify the sender immediately by reply e-mail and delete the e-mail from your system. -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of > Charlotte Foust > Sent: Thursday, March 09, 2006 03:47 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access 2K to Excel changes field format > > In the query, concatenate a single quote to the front of the value. > Excel will see that as text and leave it alone. > > Charlotte Foust > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of > O'Connor, Patricia (OTDA) > Sent: Thursday, March 09, 2006 12:21 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Access 2K to Excel changes field format > > > Hi all > > I have an ID field which is TEXT 14 characters > > In the Access report it is being displayed correctly 66007573735D01 > > When this report is put to EXCEL through the "Analyze it > through EXCEL" > it is dropping the D so the ID changes to 6.60076E+11 I have > changed the excel format to TEXT. If I then go to that cell > highlight and leave it will look like this 660075737350 > > I have the field formatted in the query and access report as > text @@@@@@@@@@@@@@. Is there something in excel or access > that I have to change in the options. This does not make > sense and it is causing problems sending the results to others. > > Thanks > > ************************************************** > * Patricia O'Connor > * Associate Computer Programmer Analyst > * OTDA - BDMA > * (W) mailto:Patricia.O'Connor at otda.state.ny.us > * (w) mailto:aa1160 at otda.state.ny.us > ************************************************** > -------------------------------------------------------- -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From Jim.Hale at FleetPride.com Thu Mar 9 17:11:54 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Thu, 9 Mar 2006 17:11:54 -0600 Subject: [AccessD] Access 2K to Excel changes field format Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDAA2@corp-es01.fleetpride.com> If you export the query directly (not the report) it does it properly. Why? The Microsoft giveth and the Microsoft taketh away. Blessed be the Microsoft. ;-( Jim Hale -----Original Message----- From: Hale, Jim [mailto:Jim.Hale at fleetpride.com] Sent: Thursday, March 09, 2006 4:58 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access 2K to Excel changes field format I'm going to guess that D0 makes Excel think it is "0 decimals" . Try adding a space in front of the string- that may help although it is not very elegant Jim Hale. -----Original Message----- From: O'Connor, Patricia (OTDA) [mailto:Patricia.O'Connor at otda.state.ny.us] Sent: Thursday, March 09, 2006 4:36 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access 2K to Excel changes field format The query is used to put data into an Access report. The single quote shows up both in the Access report and the excel cell. That does not look good nor does it make sense to user seeing this. If I try to get rid of the single quote in the Access report then it gets reformatted in excel when using the Analyze in Excel. The field is specified and stored as text in both access and oracle and specified text in Excel. Here are some examples. When I use the original query in Access that creates the report directly in excel it did not mess up the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 66007974120D01 66001215257F01 If while looking at the access report and I click Analyze with Excel it does change the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 6.6008E+11 66001215257F01 Why would it mess up only certain id's and why when creating from Access report? Is there a way to tell if whether the wrong version of the analyze option is being used. I do have Access 97 and 2K on this machine. Thanks *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From erbachs at gmail.com Thu Mar 9 17:24:45 2006 From: erbachs at gmail.com (Steve Erbach) Date: Thu, 9 Mar 2006 17:24:45 -0600 Subject: [AccessD] Quotient join In-Reply-To: <6A6AA9DF57E4F046BDA1E273BDDB67727DDA9F@corp-es01.fleetpride.com> References: <6A6AA9DF57E4F046BDA1E273BDDB67727DDA9F@corp-es01.fleetpride.com> Message-ID: <39cb22f30603091524r4bec9d1at50174f0d494c9f67@mail.gmail.com> Jim, Sounds like the same kind of question Jurgen had in early February. Relational Division is the beast. Look for the thread "Basic Query Design: Results" and the "Basic Query Design" threads between Feb. 5th and 10th in the archives. Steve Erbach http://TheTownCrank.blogspot.com On 3/9/06, Hale, Jim wrote: > That's where I found the definition but not the SQL (Edition 1- maybe it is > described in a later edition?). > It says this table (SUPPLIER): > Sname > Jones Wood Supply > Orange Coast > Jones Wood Supply > Austin Hardwoods > Orange Coast > West Lumber > Jones Wood Supply > Orange Coast > West Lumber > Jones Wood Supply > Austin Hardwoods > Orange Coast > Fred's Woods > > divided by this table (TYPE) > Type > Mahogany > Red Oak > Poplar > Walnut > > equals > Jones Wood Supply > Orange Coast > > ie all suppliers who supply all types. Kinda neat IMHO > Jim Hale From adtp at airtelbroadband.in Thu Mar 9 23:43:02 2006 From: adtp at airtelbroadband.in (A.D.TEJPAL) Date: Fri, 10 Mar 2006 11:13:02 +0530 Subject: [AccessD] Access 2K to Excel changes field format References: <01DBAB52E30A9A4AB3D94EF8029EDBE8016B2460@EXCNYSM0A1AI.nysemail. nyenet> Message-ID: <00c501c64405$92ea4630$850b65cb@pcadt> Patricia, It is observed that if all characters preceding the letter D in a text string are numeric digits, Excel interprets D as a mathematical qualifier, leading to the problem faced by you. Placing a space as first character in this string does not work. On the other hand, single quote at start of the string does reproduce the contents faithfully, but the single quote remains visible in Access report as well as in Excel, a situation you find not quite ideal. It is found that if the stream of numeric digits preceding D is interrupted by placing a space, hyphen or underscore just before D, the string gets reproduced faithfully in Excel. Typical samples: (a) 66007974120 D01 (b) 66007974120-D01 (c) 66007974120_D01 If your situation permits adoption of any of the revised patterns (a to c) above, it would give you proper match between the Access report and Excel output. Best wishes, A.D.Tejpal --------------- ----- Original Message ----- From: O'Connor, Patricia (OTDA) To: Access Developers discussion and problem solving Sent: Friday, March 10, 2006 04:05 Subject: Re: [AccessD] Access 2K to Excel changes field format The query is used to put data into an Access report. The single quote shows up both in the Access report and the excel cell. That does not look good nor does it make sense to user seeing this. If I try to get rid of the single quote in the Access report then it gets reformatted in excel when using the Analyze in Excel. The field is specified and stored as text in both access and oracle and specified text in Excel. Here are some examples. When I use the original query in Access that creates the report directly in excel it did not mess up the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 66007974120D01 66001215257F01 If while looking at the access report and I click Analyze with Excel it does change the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 6.6008E+11 66001215257F01 Why would it mess up only certain id's and why when creating from Access report? Is there a way to tell if whether the wrong version of the analyze option is being used. I do have Access 97 and 2K on this machine. Thanks ************************************************** * Patricia O'Connor * Associate Computer Programmer Analyst * OTDA - BDMA * (W) mailto:Patricia.O'Connor at otda.state.ny.us * (w) mailto:aa1160 at otda.state.ny.us ************************************************** -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of > Charlotte Foust > Sent: Thursday, March 09, 2006 03:47 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access 2K to Excel changes field format > > In the query, concatenate a single quote to the front of the value. > Excel will see that as text and leave it alone. > > Charlotte Foust > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of > O'Connor, Patricia (OTDA) > Sent: Thursday, March 09, 2006 12:21 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Access 2K to Excel changes field format > > Hi all > > I have an ID field which is TEXT 14 characters > > In the Access report it is being displayed correctly 66007573735D01 > > When this report is put to EXCEL through the "Analyze it > through EXCEL" it is dropping the D so the ID changes to 6.60076E+11 I have changed the excel format to TEXT. If I then go to that cell highlight and leave it will look like this 660075737350 > > I have the field formatted in the query and access report as > text @@@@@@@@@@@@@@. Is there something in excel or access that I have to change in the options. This does not make > sense and it is causing problems sending the results to others. > > Thanks > > ************************************************** > * Patricia O'Connor > * Associate Computer Programmer Analyst > * OTDA - BDMA > * (W) mailto:Patricia.O'Connor at otda.state.ny.us > * (w) mailto:aa1160 at otda.state.ny.us > ************************************************** From oost at e-business2start.com Fri Mar 10 02:23:32 2006 From: oost at e-business2start.com (E-business2start.com - Marcel Vreuls) Date: Fri, 10 Mar 2006 00:23:32 -0800 Subject: [AccessD] Performance Listview Message-ID: Hi, In order to make my A2k more attractive and user friendly i have replaced the standard Listview with the comm.contr. Listview from MS. I populate the listview by selecting a DAO.recordset and than use the? .ADD listitems functions to add the records to the listview. After that i call a function which colors the rows accordnig to a certain value in the subitems. It works fine but I notice that this goes very slow particularly the coloring of the rows. When i fill the listview with 500 records the filling takes about 5 seconds but the coloring 30 seconds. Any tips, ideas how ik can make it faster. I have a database with about 20.000 orders in it. Customers would like to have a listview which shows ALL orders so they can sort, filter etc. This i can not support performance wise with this solution. The standard listview of access is much and much faster. Thanx, marcel From Gustav at cactus.dk Fri Mar 10 05:06:31 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 10 Mar 2006 12:06:31 +0100 Subject: [AccessD] Access 2K to Excel changes field format Message-ID: Hi Patricia It's not Excel, it's much more Basic(!) than that, and Access will behave similarly. D in a number (string) is equivalent to E as used for scientific notation: ? 456E123 4.56E+125 ? 456D123 4.56E+125 This may present a well known trap if you don't know what you are doing when using IsNumeric() for testing for numerics only: ? IsNumeric("456E123") True ? IsNumeric("456D123") True ? IsNumeric("456H123") False You could try importing them to Excel this way: Left("66005769905A01", 11) & Right("66005769905A01", 3) That should cause Excel to interpret this as a compound string. /gustav >>> Patricia.O'Connor at otda.state.ny.us 09-03-2006 23:35 >>> The query is used to put data into an Access report. The single quote shows up both in the Access report and the excel cell. That does not look good nor does it make sense to user seeing this. If I try to get rid of the single quote in the Access report then it gets reformatted in excel when using the Analyze in Excel. The field is specified and stored as text in both access and oracle and specified text in Excel. Here are some examples. When I use the original query in Access that creates the report directly in excel it did not mess up the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 66007974120D01 66001215257F01 If while looking at the access report and I click Analyze with Excel it does change the ID. 66005769905A01 66002730270C01 66006665460J01 66001747189H01 6.6008E+11 66001215257F01 Why would it mess up only certain id's and why when creating from Access report? Is there a way to tell if whether the wrong version of the analyze option is being used. I do have Access 97 and 2K on this machine. From Gustav at cactus.dk Fri Mar 10 05:45:00 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 10 Mar 2006 12:45:00 +0100 Subject: [AccessD] Access XP forms bound to ADO recordsets Message-ID: Hi John Isn't this (request) exactly what Shamil (and Charlotte?) is working on? http://www.smsconsulting.spb.ru/shamil_s/articles/ddo.htm Thread from August 2005: Disconnected MS Access cient applications.. /gustav >>> jwcolby at ColbyConsulting.com 09-03-2006 19:54 >>> Can someone give me an overview of what this involves? Is the recordset then "disconnected"? How do you handle form/subforms? I have a specific application where the users have a bound form which pulls a set of records (people) that they will be making calls to. There is a bound subform where they enter the results of the call - about 5 or 6 fields, the user's ID, date/time, call status, note etc. They get a TON of locking issues with this. The user is almost exclusively ADDING new records into the call status table, though they do occasionally "correct" info in the person's record - address / phone etc. The issue though is that as soon as they try to create a NEW record in the call status subform, they get the infamous "another person has locked this record" which is particularly puzzling since they are not editing an existing record but rather adding a new record. I changed the note from Memo to String(255) to avoid "page locking" issues, deleted all of the indexes on the fields in the call status records etc but the issues still occur. My understanding is that Index data is also stored in pages so that there might be an issue with the page that an index is attempting to store it's data in as the record is created is locked by another user creating an index using that same page. Of course there is a relationship between the person and the call status so there is at least one index that simply cannot be even seen, never mind deleted, at least without removing the relationship. So I am trying to resolve this continuous nagging locking issue. I am even willing to go unbound, but they really want to be able to see the previous calls in the subform so that they can tell what went on in previous calls. I thought that if I could bind the main people form and the child call status forms to ADO recordsets, then the update (and subsequent locking issues) would be very momentary and the probability of a lock issue occurring would decrease dramatically. However I have never done the "ADO recordset binding" before. Does anyone have any knowledge of this? John W. Colby www.ColbyConsulting.com From Gustav at cactus.dk Fri Mar 10 06:20:15 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 10 Mar 2006 13:20:15 +0100 Subject: [AccessD] PDF printer driver and SDK Message-ID: Hi William and John et all Just noted, that Leban's PDF printing tool has had a major upgrade: http://www.lebans.com/reporttopdf.htm Looks very interesting. Uses no printer driver but a dll ...! /gustav From Gustav at cactus.dk Fri Mar 10 07:09:23 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 10 Mar 2006 14:09:23 +0100 Subject: [AccessD] PDF printer driver and SDK Message-ID: - but a Snapshot driver must be installed. Leban's routine converts a Snapshot file to pdf. /gustav >>> Gustav at cactus.dk 10-03-2006 13:20 >>> Hi William and John et all Just noted, that Leban's PDF printing tool has had a major upgrade: http://www.lebans.com/reporttopdf.htm Looks very interesting. Uses no printer driver but a dll ...! /gustav From bchacc at san.rr.com Fri Mar 10 08:24:20 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Fri, 10 Mar 2006 06:24:20 -0800 Subject: [AccessD] PDF printer driver and SDK In-Reply-To: References: Message-ID: <44118C14.2000206@san.rr.com> Gustav: Is it transparent to the user? IOW, I could put a 'Send PDF' button on the form and have the report end up as an attachment to an email? (Have a client with this very problem at the moment.) TIA Rocky Gustav Brock wrote: > - but a Snapshot driver must be installed. > > Leban's routine converts a Snapshot file to pdf. > > /gustav > > >>>> Gustav at cactus.dk 10-03-2006 13:20 >>> >>>> > Hi William and John et all > > Just noted, that Leban's PDF printing tool has had a major upgrade: > > http://www.lebans.com/reporttopdf.htm > > Looks very interesting. Uses no printer driver but a dll ...! > > /gustav > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From bgoss711 at ameritech.net Fri Mar 10 08:58:29 2006 From: bgoss711 at ameritech.net (Bud Goss) Date: Fri, 10 Mar 2006 06:58:29 -0800 (PST) Subject: [AccessD] ADO recordsets and connection objects Message-ID: <20060310145829.60837.qmail@web81304.mail.mud.yahoo.com> I am trying to learn the basics of ADO recordsets and connections. So far, I have been unable to get to first base. The two methods listed below give me the following error: Run-time error'-2147467259(80004005) [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified First attempt with udl file: Public Sub MyADOTest01() Dim rec As ADODB.Recordset Set rec = New ADODB.Recordset rec.Open "Select * from [Orders] ", "File Name = C:\B\A\x.udl" rec.CursorLocation = adUseClient rec.LockType = adlockBatchOptimistic MsgBox "OPEN HAS OCCURED " & rec!Customer End Sub Second attempt without udl file? Public Sub MyADOTest02() Dim rec As ADODB.Recordset Set rec = New ADODB.Recordset rec.Open "Select * from [Orders]", "File Name = C:\B\A\Northwind.mdb" rec.CursorLocation = adUseClient rec.LockType = adlockBatchOptimistic MsgBox "OPEN HAS OCCURED " & rec!Customer rec.activeconnection.Close End Sub C:\B\A\ . Contains x.udl and Northwind.mdb x.udl points to C:\B\A\Northwind.mdb and has MicrosoftJet 4.0 OLE Provider specified Subs are contained in another Access 2003 database that is located in C:\B\A_Access_Tr This database does have the reference Microsoft ActiveX data Objects 2.1 Llibrary Any help would be appreciated. From markamatte at hotmail.com Fri Mar 10 10:00:20 2006 From: markamatte at hotmail.com (Mark A Matte) Date: Fri, 10 Mar 2006 16:00:20 +0000 Subject: [AccessD] OT Kinda...Send email In-Reply-To: <20060310145829.60837.qmail@web81304.mail.mud.yahoo.com> Message-ID: Hello All, A friend recently moved his website to a new service and his old host is not being very cooperative...the last page of his site generated an email...in looking at the html...it used Form Method="Post" to get the info input...then Action=""...this is the piece missing...I think this was a script or .asp Any ideas/directions? A plug in or script to buy/use? Thanks, Mark A. Matte P.S... Happy Friday!!! From mikedorism at verizon.net Fri Mar 10 10:22:56 2006 From: mikedorism at verizon.net (Mike & Doris Manning) Date: Fri, 10 Mar 2006 11:22:56 -0500 Subject: [AccessD] ADO recordsets and connection objects In-Reply-To: <20060310145829.60837.qmail@web81304.mail.mud.yahoo.com> Message-ID: <000201c6445e$e5abe460$2f01a8c0@dorismanning> Here are my favorite website for sharing with ADO newbies... http://authors.aspalliance.com/aspxtreme/ado/index.aspx http://www.connectionstrings.com Doris Manning mikedorism at verizon.net -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bud Goss Sent: Friday, March 10, 2006 9:58 AM To: Access Group Subject: [AccessD] ADO recordsets and connection objects I am trying to learn the basics of ADO recordsets and connections. So far, I have been unable to get to first base. The two methods listed below give me the following error: Run-time error'-2147467259(80004005) [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified First attempt with udl file: Public Sub MyADOTest01() Dim rec As ADODB.Recordset Set rec = New ADODB.Recordset rec.Open "Select * from [Orders] ", "File Name = C:\B\A\x.udl" rec.CursorLocation = adUseClient rec.LockType = adlockBatchOptimistic MsgBox "OPEN HAS OCCURED " & rec!Customer End Sub Second attempt without udl file" Public Sub MyADOTest02() Dim rec As ADODB.Recordset Set rec = New ADODB.Recordset rec.Open "Select * from [Orders]", "File Name = C:\B\A\Northwind.mdb" rec.CursorLocation = adUseClient rec.LockType = adlockBatchOptimistic MsgBox "OPEN HAS OCCURED " & rec!Customer rec.activeconnection.Close End Sub C:\B\A\ .. Contains x.udl and Northwind.mdb x.udl points to C:\B\A\Northwind.mdb and has MicrosoftJet 4.0 OLE Provider specified Subs are contained in another Access 2003 database that is located in C:\B\A_Access_Tr This database does have the reference Microsoft ActiveX data Objects 2.1 Llibrary Any help would be appreciated. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Fri Mar 10 10:25:29 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 10 Mar 2006 08:25:29 -0800 Subject: [AccessD] ADO recordsets and connection objects Message-ID: You aren't creating a connection object or specifying a provider, so you aren't going to get to first base the way you're going. That's why you're getting the error message, you haven't told ADO what provider/driver to use so it can look at the data source. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bud Goss Sent: Friday, March 10, 2006 6:58 AM To: Access Group Subject: [AccessD] ADO recordsets and connection objects I am trying to learn the basics of ADO recordsets and connections. So far, I have been unable to get to first base. The two methods listed below give me the following error: Run-time error'-2147467259(80004005) [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified First attempt with udl file: Public Sub MyADOTest01() Dim rec As ADODB.Recordset Set rec = New ADODB.Recordset rec.Open "Select * from [Orders] ", "File Name = C:\B\A\x.udl" rec.CursorLocation = adUseClient rec.LockType = adlockBatchOptimistic MsgBox "OPEN HAS OCCURED " & rec!Customer End Sub Second attempt without udl file" Public Sub MyADOTest02() Dim rec As ADODB.Recordset Set rec = New ADODB.Recordset rec.Open "Select * from [Orders]", "File Name = C:\B\A\Northwind.mdb" rec.CursorLocation = adUseClient rec.LockType = adlockBatchOptimistic MsgBox "OPEN HAS OCCURED " & rec!Customer rec.activeconnection.Close End Sub C:\B\A\ .... Contains x.udl and Northwind.mdb x.udl points to C:\B\A\Northwind.mdb and has MicrosoftJet 4.0 OLE Provider specified Subs are contained in another Access 2003 database that is located in C:\B\A_Access_Tr This database does have the reference Microsoft ActiveX data Objects 2.1 Llibrary Any help would be appreciated. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jdemarco at hudsonhealthplan.org Fri Mar 10 10:28:44 2006 From: Jdemarco at hudsonhealthplan.org (Jim DeMarco) Date: Fri, 10 Mar 2006 11:28:44 -0500 Subject: [AccessD] ADO recordsets and connection objects Message-ID: <08F823FD83787D4BA0B99CA580AD3C74030C5F50@TTNEXCHCL2.hshhp.com> Bud, Here's a couple of things to try. Your reference to the File Name argument might need to be typed in like this: rec.Open "Select * from [Orders] ", "File Name = 'C:\B\A\x.udl';" Or you can explictly create your connection like this: Dim oCnn As ADODB.Connection Dim sFileNamePath As String Dim rs As ADODB.Recordset sFileNamePath = "C:\B\A\x.udl" strProvider = "Microsoft.Jet.OLEDB.4.0;Data Source=" & sFileNamePath _ & ";Persist Security Info=False" oCnn.Provider = strProvider oCnn.Open rs.Open "Select * from [Orders] ", oCnn HTH, Jim DeMarco -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bud Goss Sent: Friday, March 10, 2006 9:58 AM To: Access Group Subject: [AccessD] ADO recordsets and connection objects I am trying to learn the basics of ADO recordsets and connections. So far, I have been unable to get to first base. The two methods listed below give me the following error: Run-time error'-2147467259(80004005) [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified First attempt with udl file: Public Sub MyADOTest01() Dim rec As ADODB.Recordset Set rec = New ADODB.Recordset rec.Open "Select * from [Orders] ", "File Name = C:\B\A\x.udl" rec.CursorLocation = adUseClient rec.LockType = adlockBatchOptimistic MsgBox "OPEN HAS OCCURED " & rec!Customer End Sub Second attempt without udl file" Public Sub MyADOTest02() Dim rec As ADODB.Recordset Set rec = New ADODB.Recordset rec.Open "Select * from [Orders]", "File Name = C:\B\A\Northwind.mdb" rec.CursorLocation = adUseClient rec.LockType = adlockBatchOptimistic MsgBox "OPEN HAS OCCURED " & rec!Customer rec.activeconnection.Close End Sub C:\B\A\ .... Contains x.udl and Northwind.mdb x.udl points to C:\B\A\Northwind.mdb and has MicrosoftJet 4.0 OLE Provider specified Subs are contained in another Access 2003 database that is located in C:\B\A_Access_Tr This database does have the reference Microsoft ActiveX data Objects 2.1 Llibrary Any help would be appreciated. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************************** "This electronic message is intended to be for the use only of the named recipient, and may contain information from Hudson Health Plan (HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". *********************************************************************************** From bill_Patten at earthlink.net Fri Mar 10 11:04:12 2006 From: bill_Patten at earthlink.net (Bill Patten) Date: Fri, 10 Mar 2006 09:04:12 -0800 Subject: [AccessD] PDF printer driver and SDK References: <44118C14.2000206@san.rr.com> Message-ID: <001601c64464$a888bdf0$6501a8c0@BPCS> Rocky, I'm not Gustav, but do use the Lebans PDF routine to send emails. It is great in that it will take the name of the report and rename it in one move (To make emailing and storage easier.). There is a small screen that pops up counting the pages, but you only see it for a short while, unless it is a 25 or more page document. It kind of works like a progress bar so my clients don't mind. Also I couldn't figure out how to pass the parameters through it, so have the report call a function that has the correct parameters. Since my clients, pick Preview, Printer or PDF options buttons, I wanted to be consistent so just send the strCriteria to the function instead of to the report. Works great and my clients love it. Bill ----- Original Message ----- From: "Rocky Smolin - Beach Access Software" To: "Access Developers discussion and problem solving" Sent: Friday, March 10, 2006 6:24 AM Subject: Re: [AccessD] PDF printer driver and SDK Gustav: Is it transparent to the user? IOW, I could put a 'Send PDF' button on the form and have the report end up as an attachment to an email? (Have a client with this very problem at the moment.) TIA Rocky Gustav Brock wrote: > - but a Snapshot driver must be installed. > > Leban's routine converts a Snapshot file to pdf. > > /gustav > > >>>> Gustav at cactus.dk 10-03-2006 13:20 >>> >>>> > Hi William and John et all > > Just noted, that Leban's PDF printing tool has had a major upgrade: > > http://www.lebans.com/reporttopdf.htm > > Looks very interesting. Uses no printer driver but a dll ...! > > /gustav > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bchacc at san.rr.com Fri Mar 10 11:22:59 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Fri, 10 Mar 2006 09:22:59 -0800 Subject: [AccessD] PDF printer driver and SDK In-Reply-To: <001601c64464$a888bdf0$6501a8c0@BPCS> References: <44118C14.2000206@san.rr.com> <001601c64464$a888bdf0$6501a8c0@BPCS> Message-ID: <4411B5F3.6070509@san.rr.com> Bill: Thanks. That might work out real well for this client. Rocky Bill Patten wrote: > Rocky, > > I'm not Gustav, but do use the Lebans PDF routine to send emails. It is > great in that it will take the name of the report and rename it in one move > (To make emailing and storage easier.). There is a small screen that pops up > counting the pages, but you only see it for a short while, unless it is a 25 > or more page document. It kind of works like a progress bar so my clients > don't mind. Also I couldn't figure out how to pass the parameters through > it, so have the report call a function that has the correct parameters. > Since my clients, pick Preview, Printer or PDF options buttons, I wanted to > be consistent so just send the strCriteria to the function instead of to the > report. Works great and my clients love it. > > Bill > > > ----- Original Message ----- > From: "Rocky Smolin - Beach Access Software" > To: "Access Developers discussion and problem solving" > > Sent: Friday, March 10, 2006 6:24 AM > Subject: Re: [AccessD] PDF printer driver and SDK > > > Gustav: > > Is it transparent to the user? IOW, I could put a 'Send PDF' button on > the form and have the report end up as an attachment to an email? (Have > a client with this very problem at the moment.) > > TIA > > Rocky > > > Gustav Brock wrote: > >> - but a Snapshot driver must be installed. >> >> Leban's routine converts a Snapshot file to pdf. >> >> /gustav >> >> >> >>>>> Gustav at cactus.dk 10-03-2006 13:20 >>> >>>>> >>>>> >> Hi William and John et all >> >> Just noted, that Leban's PDF printing tool has had a major upgrade: >> >> http://www.lebans.com/reporttopdf.htm >> >> Looks very interesting. Uses no printer driver but a dll ...! >> >> /gustav >> >> >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From Patricia.O'Connor at otda.state.ny.us Fri Mar 10 11:54:43 2006 From: Patricia.O'Connor at otda.state.ny.us (O'Connor, Patricia (OTDA)) Date: Fri, 10 Mar 2006 12:54:43 -0500 Subject: [AccessD] Access 2K to Excel changes field format Message-ID: <01DBAB52E30A9A4AB3D94EF8029EDBE8016B2466@EXCNYSM0A1AI.nysemail.nyenet> HAHA and MS makea u crazy Thanks Patti ************************************************** * Patricia O'Connor * Associate Computer Programmer Analyst * OTDA - BDMA * (W) mailto:Patricia.O'Connor at otda.state.ny.us * (w) mailto:aa1160 at otda.state.ny.us ************************************************** > -------------------------------------------------------- This e-mail, including any attachments, may be confidential, privileged or otherwise legally protected. It is intended only for the addressee. If you received this e-mail in error or from someone who was not authorized to send it to you, do not disseminate, copy or otherwise use this e-mail or its attachments. Please notify the sender immediately by reply e-mail and delete the e-mail from your system. -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim > Sent: Thursday, March 09, 2006 06:12 PM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Access 2K to Excel changes field format > > If you export the query directly (not the report) it does it > properly. Why? > The Microsoft giveth and the Microsoft taketh away. Blessed > be the Microsoft. ;-( Jim Hale > From martyconnelly at shaw.ca Fri Mar 10 12:07:37 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Fri, 10 Mar 2006 10:07:37 -0800 Subject: [AccessD] ADO recordsets and connection objects References: <20060310145829.60837.qmail@web81304.mail.mud.yahoo.com> Message-ID: <4411C069.4080709@shaw.ca> What you want to do is download the MDAC SDK to learn ado http://msdn.microsoft.com/data/mdac/downloads/default.aspx Microsoft Data Access Components (MDAC) 2.8 Software Development Kit (15 Meg) In there, it will install a help file ADO260.CHM in C:\Program Files\Microsoft Data Access SDK\Docs\ Look through help file index for open ADO recordset parameters There are lots of sample VB code examples in the help file. I don't use udl's that much, this may work Dim con As ADODB.Connection Dim rs As ADODB.Recordset Dim sSQL As String sSQL = "SELECT * FROM Products" ' May need to Set a reference to "Microsoft OLE DB Service Component 1.0 Type Library Set con = New ADODB.Connection con.connectstring = "c:\path to \your file.udl" con.open Set rs = New ADODB.Recordset rs.Open sSQL, con If Not rs.EOF Then MsgBox rs(0) rs.MoveNext End If This should work with SQL and northwind mdb haven't tested in awhile Sub adotest() Dim sSQL As String Dim iNumRecords As Integer Dim oConnection As ADODB.Connection Dim oRecordset As ADODB.Recordset Dim rstSchema As ADODB.Recordset Dim sConnStr As String 'sConnStr = "Provider=SQLOLEDB;Data Source=MySrvr;" & _ "Initial Catalog=Northwind;User Id=MyId;Password=123aBc;" ' Connection "Provider=Microsoft.Jet.OLEDB.3.51;Data Source=D:\DataBases\Northwind.mdb" 'Access 97 version Jet 3.51 ' sConnStr = "Provider=Microsoft.Jet.OLEDB.3.51;" & _ "Data Source=C:\Program Files\Microsoft Office\Office\Samples\Northwind.mdb;" & _ "User Id=admin;" & "Password=" 'Access XP Jet 4 sConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=C:\Program Files\Microsoft Office\Office\Samples\Northwind.mdb;" & _ "User Id=admin;" & "Password=" On Error GoTo GetDataError ' Create and Open the Connection object. Set oConnection = New ADODB.Connection oConnection.CursorLocation = adUseClient oConnection.Open sConnStr sSQL = "SELECT ProductID, ProductName, CategoryID, UnitPrice " & _ "FROM Products" ' Create and Open the Recordset object. Set oRecordset = New ADODB.Recordset oRecordset.Open sSQL, oConnection, adOpenStatic, _ adLockBatchOptimistic, adCmdText blah blah with recordset ' Disconnect the Recordset. Set oRecordset.ActiveConnection = Nothing oConnection.Close Set oConnection = Nothing Exit Sub GetDataError: If oConnection Is Nothing Then HandleErrs "GetData", oRecordset.ActiveConnection Else HandleErrs "GetData", oConnection End If Exit Sub End Sub Sub HandleErrs(sSource As String, ByRef oConnection1 As ADODB.Connection) Dim sDisplayMsg As String sDisplayMsg = sDisplayMsg & "ADO (OLE) ERROR IN " & sSource sDisplayMsg = sDisplayMsg & vbCrLf & "Error: " & Err.Number sDisplayMsg = sDisplayMsg & vbCrLf & "Description: " & Err.Description sDisplayMsg = sDisplayMsg & vbCrLf & "Source: " & Err.Source If Not oConnection1 Is Nothing Then If oConnection1.Errors.Count <> 0 Then sDisplayMsg = sDisplayMsg & vbCrLf & "PROVIDER ERROR" Dim oError1 As ADODB.Error For Each oError1 In oConnection1.Errors sDisplayMsg = sDisplayMsg & vbCrLf & "Error: " & oError1.Number sDisplayMsg = sDisplayMsg & vbCrLf & "Description: " & oError1.Description sDisplayMsg = sDisplayMsg & vbCrLf & "Source: " & oError1.Source sDisplayMsg = sDisplayMsg & vbCrLf & "Native Error:" & oError1.NativeError sDisplayMsg = sDisplayMsg & vbCrLf & "SQL State: " & oError1.SQLState Next oError1 oConnection1.Errors.Clear Set oError1 = Nothing End If End If MsgBox "Error(s) occurred. See sDisplayMsg for specific information.", , _ "Hello Data" MsgBox sDisplayMsg Err.Clear End Sub Bud Goss wrote: >I am trying to learn the basics of ADO recordsets and connections. > So far, I have been unable to get to first base. The two methods listed below give me the following error: > > > Run-time error'-2147467259(80004005) > [Microsoft][ODBC Driver Manager] Data source name not found and no > default driver specified > > First attempt with udl file: > > Public Sub MyADOTest01() > Dim rec As ADODB.Recordset > Set rec = New ADODB.Recordset > rec.Open "Select * from [Orders] ", "File Name = C:\B\A\x.udl" > rec.CursorLocation = adUseClient > rec.LockType = adlockBatchOptimistic > MsgBox "OPEN HAS OCCURED " & rec!Customer > End Sub > > Second attempt without udl file > > Public Sub MyADOTest02() > Dim rec As ADODB.Recordset > Set rec = New ADODB.Recordset > rec.Open "Select * from [Orders]", "File Name = C:\B\A\Northwind.mdb" > rec.CursorLocation = adUseClient > rec.LockType = adlockBatchOptimistic > MsgBox "OPEN HAS OCCURED " & rec!Customer > rec.activeconnection.Close > End Sub > > C:\B\A\ &. Contains x.udl and Northwind.mdb > x.udl points to C:\B\A\Northwind.mdb and has MicrosoftJet 4.0 OLE Provider specified > > Subs are contained in another Access 2003 database that is located in C:\B\A_Access_Tr > > This database does have the reference > Microsoft ActiveX data Objects 2.1 Llibrary > > > Any help would be appreciated. > > -- Marty Connelly Victoria, B.C. Canada From dw-murphy at cox.net Fri Mar 10 12:22:29 2006 From: dw-murphy at cox.net (Doug Murphy) Date: Fri, 10 Mar 2006 10:22:29 -0800 Subject: [AccessD] PDF printer driver and SDK In-Reply-To: <4411B5F3.6070509@san.rr.com> Message-ID: <000801c6446f$9719d8f0$0200a8c0@murphyf3vdfepi> If you are going to distribute your application you should look at the licensing restrictions for the dll used on Lebans. I seem to recollect that he could only use it for demonstration purposes. Doug -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Friday, March 10, 2006 9:23 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] PDF printer driver and SDK Bill: Thanks. That might work out real well for this client. Rocky Bill Patten wrote: > Rocky, > > I'm not Gustav, but do use the Lebans PDF routine to send emails. It > is > great in that it will take the name of the report and rename it in one move > (To make emailing and storage easier.). There is a small screen that pops up > counting the pages, but you only see it for a short while, unless it is a 25 > or more page document. It kind of works like a progress bar so my clients > don't mind. Also I couldn't figure out how to pass the parameters through > it, so have the report call a function that has the correct parameters. > Since my clients, pick Preview, Printer or PDF options buttons, I wanted to > be consistent so just send the strCriteria to the function instead of to the > report. Works great and my clients love it. > > Bill > > > ----- Original Message ----- > From: "Rocky Smolin - Beach Access Software" > To: "Access Developers discussion and problem solving" > > Sent: Friday, March 10, 2006 6:24 AM > Subject: Re: [AccessD] PDF printer driver and SDK > > > Gustav: > > Is it transparent to the user? IOW, I could put a 'Send PDF' button > on the form and have the report end up as an attachment to an email? > (Have a client with this very problem at the moment.) > > TIA > > Rocky > > > Gustav Brock wrote: > >> - but a Snapshot driver must be installed. >> >> Leban's routine converts a Snapshot file to pdf. >> >> /gustav >> >> >> >>>>> Gustav at cactus.dk 10-03-2006 13:20 >>> >>>>> >>>>> >> Hi William and John et all >> >> Just noted, that Leban's PDF printing tool has had a major upgrade: >> >> http://www.lebans.com/reporttopdf.htm >> >> Looks very interesting. Uses no printer driver but a dll ...! >> >> /gustav >> >> >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From dw-murphy at cox.net Fri Mar 10 12:39:17 2006 From: dw-murphy at cox.net (Doug Murphy) Date: Fri, 10 Mar 2006 10:39:17 -0800 Subject: [AccessD] PDF printer driver and SDK In-Reply-To: <000801c6446f$9719d8f0$0200a8c0@murphyf3vdfepi> Message-ID: <000001c64471$efe34500$0200a8c0@murphyf3vdfepi> I am replying to my last post. Just looked at the copyright and licensing for the new version. Apparently they got the distribution rights to the dynapdf dll. Looks like we can use it in our apps. Cool! Doug -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Doug Murphy Sent: Friday, March 10, 2006 10:22 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] PDF printer driver and SDK If you are going to distribute your application you should look at the licensing restrictions for the dll used on Lebans. I seem to recollect that he could only use it for demonstration purposes. Doug -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Friday, March 10, 2006 9:23 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] PDF printer driver and SDK Bill: Thanks. That might work out real well for this client. Rocky Bill Patten wrote: > Rocky, > > I'm not Gustav, but do use the Lebans PDF routine to send emails. It > is > great in that it will take the name of the report and rename it in one move > (To make emailing and storage easier.). There is a small screen that > pops up > counting the pages, but you only see it for a short while, unless it > is a 25 > or more page document. It kind of works like a progress bar so my > clients > don't mind. Also I couldn't figure out how to pass the parameters through > it, so have the report call a function that has the correct parameters. > Since my clients, pick Preview, Printer or PDF options buttons, I wanted to > be consistent so just send the strCriteria to the function instead of > to the > report. Works great and my clients love it. > > Bill > > > ----- Original Message ----- > From: "Rocky Smolin - Beach Access Software" > To: "Access Developers discussion and problem solving" > > Sent: Friday, March 10, 2006 6:24 AM > Subject: Re: [AccessD] PDF printer driver and SDK > > > Gustav: > > Is it transparent to the user? IOW, I could put a 'Send PDF' button > on the form and have the report end up as an attachment to an email? > (Have a client with this very problem at the moment.) > > TIA > > Rocky > > > Gustav Brock wrote: > >> - but a Snapshot driver must be installed. >> >> Leban's routine converts a Snapshot file to pdf. >> >> /gustav >> >> >> >>>>> Gustav at cactus.dk 10-03-2006 13:20 >>> >>>>> >>>>> >> Hi William and John et all >> >> Just noted, that Leban's PDF printing tool has had a major upgrade: >> >> http://www.lebans.com/reporttopdf.htm >> >> Looks very interesting. Uses no printer driver but a dll ...! >> >> /gustav >> >> >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Fri Mar 10 13:32:59 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Fri, 10 Mar 2006 22:32:59 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: Message-ID: <002001c64479$75e41010$6501a8c0@Nant> Hi Gustav, This work is frozen - no time - all time is "leaking" for everyday routine work for money for living... It would be interesting to make it but the chances are considered here very low now... Shamil ----- Original Message ----- From: "Gustav Brock" To: Sent: Friday, March 10, 2006 2:45 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi John > > Isn't this (request) exactly what Shamil (and Charlotte?) is working on? > > http://www.smsconsulting.spb.ru/shamil_s/articles/ddo.htm > > Thread from August 2005: > > Disconnected MS Access cient applications.. > > /gustav > >>>> jwcolby at ColbyConsulting.com 09-03-2006 19:54 >>> > Can someone give me an overview of what this involves? Is the recordset > then "disconnected"? How do you handle form/subforms? > > I have a specific application where the users have a bound form which > pulls > a set of records (people) that they will be making calls to. There is a > bound subform where they enter the results of the call - about 5 or 6 > fields, the user's ID, date/time, call status, note etc. They get a TON > of > locking issues with this. The user is almost exclusively ADDING new > records > into the call status table, though they do occasionally "correct" info in > the person's record - address / phone etc. > > The issue though is that as soon as they try to create a NEW record in the > call status subform, they get the infamous "another person has locked this > record" which is particularly puzzling since they are not editing an > existing record but rather adding a new record. I changed the note from > Memo to String(255) to avoid "page locking" issues, deleted all of the > indexes on the fields in the call status records etc but the issues still > occur. > > My understanding is that Index data is also stored in pages so that there > might be an issue with the page that an index is attempting to store it's > data in as the record is created is locked by another user creating an > index > using that same page. Of course there is a relationship between the > person > and the call status so there is at least one index that simply cannot be > even seen, never mind deleted, at least without removing the relationship. > > So I am trying to resolve this continuous nagging locking issue. I am > even > willing to go unbound, but they really want to be able to see the previous > calls in the subform so that they can tell what went on in previous calls. > I thought that if I could bind the main people form and the child call > status forms to ADO recordsets, then the update (and subsequent locking > issues) would be very momentary and the probability of a lock issue > occurring would decrease dramatically. However I have never done the "ADO > recordset binding" before. > > Does anyone have any knowledge of this? > > John W. Colby > www.ColbyConsulting.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From bill_Patten at earthlink.net Fri Mar 10 13:28:56 2006 From: bill_Patten at earthlink.net (Bill Patten) Date: Fri, 10 Mar 2006 11:28:56 -0800 Subject: [AccessD] PDF printer driver and SDK References: <000001c64471$efe34500$0200a8c0@murphyf3vdfepi> Message-ID: <003401c64478$e0457350$6501a8c0@BPCS> Doug, That's the way I read it. Sure hope it's true, cause I already shipped it. Bill ----- Original Message ----- From: "Doug Murphy" To: "'Access Developers discussion and problem solving'" Sent: Friday, March 10, 2006 10:39 AM Subject: Re: [AccessD] PDF printer driver and SDK I am replying to my last post. Just looked at the copyright and licensing for the new version. Apparently they got the distribution rights to the dynapdf dll. Looks like we can use it in our apps. Cool! Doug -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Doug Murphy Sent: Friday, March 10, 2006 10:22 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] PDF printer driver and SDK If you are going to distribute your application you should look at the licensing restrictions for the dll used on Lebans. I seem to recollect that he could only use it for demonstration purposes. Doug -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Friday, March 10, 2006 9:23 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] PDF printer driver and SDK Bill: Thanks. That might work out real well for this client. Rocky Bill Patten wrote: > Rocky, > > I'm not Gustav, but do use the Lebans PDF routine to send emails. It > is > great in that it will take the name of the report and rename it in one move > (To make emailing and storage easier.). There is a small screen that > pops up > counting the pages, but you only see it for a short while, unless it > is a 25 > or more page document. It kind of works like a progress bar so my > clients > don't mind. Also I couldn't figure out how to pass the parameters through > it, so have the report call a function that has the correct parameters. > Since my clients, pick Preview, Printer or PDF options buttons, I wanted to > be consistent so just send the strCriteria to the function instead of > to the > report. Works great and my clients love it. > > Bill > > > ----- Original Message ----- > From: "Rocky Smolin - Beach Access Software" > To: "Access Developers discussion and problem solving" > > Sent: Friday, March 10, 2006 6:24 AM > Subject: Re: [AccessD] PDF printer driver and SDK > > > Gustav: > > Is it transparent to the user? IOW, I could put a 'Send PDF' button > on the form and have the report end up as an attachment to an email? > (Have a client with this very problem at the moment.) > > TIA > > Rocky > > > Gustav Brock wrote: > >> - but a Snapshot driver must be installed. >> >> Leban's routine converts a Snapshot file to pdf. >> >> /gustav >> >> >> >>>>> Gustav at cactus.dk 10-03-2006 13:20 >>> >>>>> >>>>> >> Hi William and John et all >> >> Just noted, that Leban's PDF printing tool has had a major upgrade: >> >> http://www.lebans.com/reporttopdf.htm >> >> Looks very interesting. Uses no printer driver but a dll ...! >> >> /gustav >> >> >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Fri Mar 10 13:40:46 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 10 Mar 2006 20:40:46 +0100 Subject: [AccessD] Access XP forms bound to ADO recordsets Message-ID: Hi Shamil OK, I guess that's good news, after all ... /gustav >>> shamil at users.mns.ru 10-03-2006 20:32:59 >>> Hi Gustav, This work is frozen - no time - all time is "leaking" for everyday routine work for money for living... From bgoss711 at ameritech.net Fri Mar 10 17:22:19 2006 From: bgoss711 at ameritech.net (Bud Goss) Date: Fri, 10 Mar 2006 15:22:19 -0800 (PST) Subject: [AccessD] ADO recordsets and connection objects - solution Message-ID: <20060310232219.55786.qmail@web81304.mail.mud.yahoo.com> Thanks to all who replied to my post. Using the information you provided and hacking around a bit I finally was able to limp into first base on this effort. Next week I will have to try to continue and try to steal ADO second base. The code that actually worked using the udl file is: ( found that I do not have to reference ?Microsoft PLE DB Service Component 1.0) Public Sub MyADOTestAA() Dim oCnn As ADODB.Connection Dim sFileNamePath As String Dim rs As ADODB.Recordset Dim strProvider As String Set rs = New ADODB.Recordset Set oCnn = New ADODB.Connection sFileNamePath = "File Name=c:\B\A\X.udl" oCnn.ConnectionString = "Provider = 'Microsoft.Jet.OLEDB.4.0';" & " Persist Security Info= 'False';" oCnn.Open sFileNamePath rs.Open "Select * from [Products] ", oCnn rs.MoveFirst MsgBox "=> " & rs(0) & " - " & rs(1) & " - " & rs(2) rs.Close Set rs = Nothing Set oCnn = Nothing End Sub *** Original Post *** I am trying to learn the basics of ADO recordsets and connections. So far, I have been unable to get to first base. The two methods listed below give me the following error: Run-time error'-2147467259(80004005) [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified First attempt with udl file: Public Sub MyADOTest01() Dim rec As ADODB.Recordset Set rec = New ADODB.Recordset rec.Open "Select * from [Orders] ", "File Name = C:\B\A\x.udl" rec.CursorLocation = adUseClient rec.LockType = adlockBatchOptimistic MsgBox "OPEN HAS OCCURED " & rec!Customer End Sub Second attempt without udl file? Public Sub MyADOTest02() Dim rec As ADODB.Recordset Set rec = New ADODB.Recordset rec.Open "Select * from [Orders]", "File Name = C:\B\A\Northwind.mdb" rec.CursorLocation = adUseClient rec.LockType = adlockBatchOptimistic MsgBox "OPEN HAS OCCURED " & rec!Customer rec.activeconnection.Close End Sub C:\B\A\ . Contains x.udl and Northwind.mdb x.udl points to C:\B\A\Northwind.mdb and has MicrosoftJet 4.0 OLE Provider specified Subs are contained in another Access 2003 database that is located in C:\B\A_Access_Tr This database does have the reference Microsoft ActiveX data Objects 2.1 Llibrary Any help would be appreciated. From shamil at users.mns.ru Fri Mar 10 18:36:15 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Sat, 11 Mar 2006 03:36:15 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <000e01c643aa$e82b2200$647aa8c0@ColbyM6805> Message-ID: <05f501c644a3$d1643080$6501a8c0@Nant> John, I did try ADODB disconnected recordsets with MS Access XP/2003 MDBs and they seems to be working rather well. That is a surprise here because the book "Microsoft Access Developer's Guide to SQL Server", which I read before states this can't be done. But the book I have is for MS Access 2000/MS SQL 2000 - and for MS Access 2000 this feature doesn't work. I don't have a new edition of the book - if it exists the authors may have written about this new useful feature.... I hope I'm not mistaken - I did recheck many times - yes, it seems to work! Please verify.... In P.S. of this message there is a sample code, which basicaly works OK but which needs more investigations - it doesn't yet process all the use cases. This code is for [authors] table from [pubs] sample database. It can work with both MS SQL and MS Access BEs use: - BindFormToSQLADORecordset - to connect to MS SQL BE and - BindFormToJetADORecordset to connect to MS Access BE. I did check with MS SQL profiler - communication with MS SQL BE is minimal and connection is used only when database operation is in progress - i.e. on short period of time for properly organized communication with BE database. If additional investigations/testing will show that this simple method works for all the required use cases then that's "what doctor ordered." - I mean you can relax and happily continue staying in your comfortable "bounders camp" for quite some time... (Although I'd recommend to use GUIDs for PKs) It would be also very useful to make it working in disconnected optimistic batch update mode but I doubt it's possible - I'd be happy somebody will present here a sample how similar simple method can be used in disconnected optimistic batch mode. Shamil P.S. 1. create new mdb 2. connect to [authors] table from [pubs] MS SQL sample database 3. use make table query to clone [dbo_authors] to local MS Access table [authors] 4. close sample database 5. open sample database in shared mode 6. create form for [authors] table 7. removed form's recordsource 8. put the following code into form's module (edit connection strings if needed) 9. open form in normal view (to switch MS SQL/Jet backend comment/uncommented the code lines in Form_Load sub) 10. Enjoy! Private mrst As ADODB.Recordset Private mcnn As ADODB.Connection Private mcolDeletedRowsIds As New Collection Private Sub Form_Load() 'BindFormToSQLADORecordset BindFormToJetADORecordset End Sub Private Sub Form_BeforeUpdate(Cancel As Integer) UpdateBE End Sub Private Sub Form_BeforeInsert(Cancel As Integer) mrst.AddNew End Sub Private Sub Form_Delete(Cancel As Integer) If mcolDeletedRowsIds.Count = 0 Then mcolDeletedRowsIds.Add mrst!au_id.Value Else mcolDeletedRowsIds.Add mrst!au_id.Value, , 1 End If End Sub Private Sub Form_Current() Dim strSql As String Dim i As Integer If mcolDeletedRowsIds.Count > 0 Then For i = mcolDeletedRowsIds.Count To 1 Step -1 strSql = "delete from [authors] where au_id = '" & _ mcolDeletedRowsIds.Item(i) & "'" mcnn.Execute strSql mcolDeletedRowsIds.Remove i Next i End If End Sub Private Sub Form_Unload(Cancel As Integer) On Error Resume Next mrst.Close mcnn.Close End Sub Private Sub BindFormToSQLADORecordset() Dim strSql As String Dim strCnn As String Set mcnn = New ADODB.Connection strCnn = "Provider=SQLOLEDB.1;" & _ "Server=(local);" & _ "Database=Pubs;" & _ "Integrated Security = SSPI" mcnn.Open strCnn strSql = "select * from [authors]" Set mrst = New ADODB.Recordset mrst.CursorLocation = adUseClient mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic mrst.ActiveConnection = Nothing Set Me.Recordset = mrst End Sub Private Sub UpdateBE() Set mrst.ActiveConnection = mcnn mrst.UpdateBatch adAffectCurrent Set mrst.ActiveConnection = Nothing End Sub Private Sub BindFormToJetADORecordset() Dim strSql As String Dim strCnn As String Set mcnn = New ADODB.Connection strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=" & CurrentDb.Name & _ ";User Id=admin;Password=;" mcnn.Open strCnn strSql = "select * from [authors]" Set mrst = New ADODB.Recordset mrst.CursorLocation = adUseClient mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic Set mrst.ActiveConnection = Nothing Set Me.Recordset = mrst End Sub ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Thursday, March 09, 2006 9:54 PM Subject: [AccessD] Access XP forms bound to ADO recordsets > Can someone give me an overview of what this involves? Is the recordset > then "disconnected"? How do you handle form/subforms? > > I have a specific application where the users have a bound form which > pulls > a set of records (people) that they will be making calls to. There is a > bound subform where they enter the results of the call - about 5 or 6 > fields, the user's ID, date/time, call status, note etc. They get a TON > of > locking issues with this. The user is almost exclusively ADDING new > records > into the call status table, though they do occasionally "correct" info in > the person's record - address / phone etc. > > The issue though is that as soon as they try to create a NEW record in the > call status subform, they get the infamous "another person has locked this > record" which is particularly puzzling since they are not editing an > existing record but rather adding a new record. I changed the note from > Memo to String(255) to avoid "page locking" issues, deleted all of the > indexes on the fields in the call status records etc but the issues still > occur. > > My understanding is that Index data is also stored in pages so that there > might be an issue with the page that an index is attempting to store it's > data in as the record is created is locked by another user creating an > index > using that same page. Of course there is a relationship between the > person > and the call status so there is at least one index that simply cannot be > even seen, never mind deleted, at least without removing the relationship. > > So I am trying to resolve this continuous nagging locking issue. I am > even > willing to go unbound, but they really want to be able to see the previous > calls in the subform so that they can tell what went on in previous calls. > I thought that if I could bind the main people form and the child call > status forms to ADO recordsets, then the update (and subsequent locking > issues) would be very momentary and the probability of a lock issue > occurring would decrease dramatically. However I have never done the "ADO > recordset binding" before. > > Does anyone have any knowledge of this? > > John W. Colby > www.ColbyConsulting.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From shamil at users.mns.ru Sat Mar 11 17:03:57 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Sun, 12 Mar 2006 02:03:57 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <000e01c643aa$e82b2200$647aa8c0@ColbyM6805> <05f501c644a3$d1643080$6501a8c0@Nant> Message-ID: <001e01c64560$4fbcd470$6501a8c0@Nant> John at all, I did make some more experimenting and it happens that MS Access 2003 (and probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with disconnected updatable ADODB recordsets with both MS Access and MS SQL backends. I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access backend and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. Some more testing/experimenting is needed but I did do quite some tests and they worked OK. As I wrote already this feature is new for me and a (big) surprise - this is a functionality I have been waiting for 8+ years since 1997 when we made here a custom framework to work with MS Access and MS SQL in disconnected mode, but it was rather heavyweight and because of the bugs in MS Access I decided to not make it broadly available.... Basically this means that MS Access forms can be used in bound mode with very low performance hit to the MS Access and MS SQL backends - the same way ADODB disconnected recordsets are used in n-tier applications. The programming of form's events processing is relatively simple and it should be possible to generalize it to make a simple lightweight framework in case back-end database(s) follow systematic naming conventions and database models design principles. The "trick" is to open two ADODB recordsets: - one with batch update enabled - second without batch update and make them disconnected. Then bind MS Access form to the second recordset (without batch update enabled). (I did experiemnet with recordsets having several source rows as a generic case to see are there any chances to use MS Access subforms in bound editable mode with disconnected ADODB recordsets) When MS Access form fires insert, update, delete events all the changes can be easily translated from the second recordset (where these changes are made "automagically" because MS Access form is bound to it) to the first recordset. On form close(or using special button) first recordset can be reconnected to the backend and batch update applied. (Of course in the case of special button to apply batch changes the two disconnected recordsets have to be resynchronized after updates). etc. Here is how "automagically" generated by ADODB batch update looks in the case of MS SQL backend (Info obtained from MS SQL profiler, line breaks are inserted manually to make it readable): exec sp_executesql N'UPDATE "Northwind".."Categories" SET "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE "CategoryID"=@P4 AND "CategoryName"=@P5; DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND "CategoryName"=@P7; UPDATE "Northwind".."Categories" SET "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE "CategoryID"=@P11 AND "CategoryName"=@P12; INSERT INTO "Northwind".."Categories" ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', 99, N'CatName', N'Updated category description', 99, N'CatName', 66, N'DelCatName', 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', 662, N'newCatName', N'new Cat description' Live connection to the back-end is needed only on opening of the source recordsets and on applying batch changes. Therefore connections can be pooled/should be possible to pool (I didn't experiment here) and to share them between several (many) front-end applications/clients if these connections are opened using ActiveX DCOM servers running on server PCs/.NET Remoting(?) objects. As well as actual disconnected recordset creation and reconnection and backend update can be executed on (Web) server side - depending on whatever is used on backend.... Yes, I know dynamic SPs accessing database tables directly do not look nice but there could be many ways to make it working differently using predefined stored procedures (e.g. by serializing ADODB recordset into XML file(s) where all the updates (inserts, deletes, updates) are coded special easily parsed way and then reformat these XML files into the calls to the predefined stored procedures etc.etc. Here is how it looks this saved XML(no direct correspondence with presented above batch T-SQL update) : - - - - - - - - - - - - - I do not post code here now because I wanted to experiment more and because it would be useful if somebody else tries to repeat the "trick" described above - if it will work for them then a whole set of new opportunities to use MS Access as a real development tool will be opened.... I will post code after additional tests within one-two weeks when it will become clear that it works. Please post any links here if you think that my posted information looks like "wheel reinvention" or you think it doesn't have practical application because of this or that several limitations etc.etc. Thank you. Shamil P.S. I have installed on my PC: - MS Windows 2003 Server SP1 - MS Office 2003/MS Access 2003 SP1 - MS SQL 2000 SP3a - MDAC 2.8 - NET Framework 1.1 and 2.0 - Visual Studio 2003 and 2005 - I have also MS SQL Server 2005 Express edition but I didn't experiment with it P. P.S. Yes, I didn't talk about identity(autonumber) fields - I generally use GUIDs for PKs. To properly manage numeric identity values some more tricks are needed - I'd be grateful if somebody post information on this subject (updategram/diffgram XML is a direct solution here probably - and serialized/saved ADODB batch update can be converted into diffgrams by using XSLT or VB(A) or VB.NET/C#/C++ code etc.) ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Saturday, March 11, 2006 3:36 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > John, > > I did try ADODB disconnected recordsets with MS Access XP/2003 MDBs and > they > seems to be working rather well. > > That is a surprise here because the book "Microsoft Access Developer's > Guide > to SQL Server", which I read before states this can't be done. But the > book > I have is for MS Access 2000/MS SQL 2000 - and for MS Access 2000 this > feature doesn't work. I don't have a new edition of the book - if it > exists > the authors may have written about this new useful feature.... > > I hope I'm not mistaken - I did recheck many times - yes, it seems to > work! > Please verify.... > > In P.S. of this message there is a sample code, which basicaly works OK > but > which needs more investigations - it doesn't yet process all the use > cases. > This code is for [authors] table from [pubs] sample database. It can work > with both MS SQL and MS Access BEs use: > > - BindFormToSQLADORecordset - to connect to MS SQL BE and > > - BindFormToJetADORecordset to connect to MS Access BE. > > I did check with MS SQL profiler - communication with MS SQL BE is minimal > and connection is used only when database operation is in progress - i.e. > on > short period of time for properly organized communication with BE > database. > > If additional investigations/testing will show that this simple method > works > for all the required use cases then that's "what doctor ordered." - I mean > you can relax and happily continue staying in your comfortable "bounders > camp" for quite some time... (Although I'd recommend to use GUIDs for PKs) > > It would be also very useful to make it working in disconnected optimistic > batch update mode but I doubt it's possible - I'd be happy somebody will > present here a sample how similar simple method can be used in > disconnected > optimistic batch mode. > > Shamil > <<< tail skipped >>> From dwaters at usinternet.com Sat Mar 11 17:27:23 2006 From: dwaters at usinternet.com (Dan Waters) Date: Sat, 11 Mar 2006 17:27:23 -0600 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <13294217.1142118393373.JavaMail.root@sniper38> Message-ID: <000001c64563$5a5952c0$0200a8c0@danwaters> Shamil, I've been reading you post with interest. Have you looked at MS KB 281998? This gives a method for an Access form to connect to SQL Server, Jet, and Oracle BE's and be updateable. They identify a specific provider to do this that can be used to set up bound forms. The provider is: "Microsoft.Access.OLEDB.10.0" I have not tried this, but thought you might be interested. Dan Waters -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Saturday, March 11, 2006 5:04 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets John at all, I did make some more experimenting and it happens that MS Access 2003 (and probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with disconnected updatable ADODB recordsets with both MS Access and MS SQL backends. I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access backend and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. Some more testing/experimenting is needed but I did do quite some tests and they worked OK. As I wrote already this feature is new for me and a (big) surprise - this is a functionality I have been waiting for 8+ years since 1997 when we made here a custom framework to work with MS Access and MS SQL in disconnected mode, but it was rather heavyweight and because of the bugs in MS Access I decided to not make it broadly available.... Basically this means that MS Access forms can be used in bound mode with very low performance hit to the MS Access and MS SQL backends - the same way ADODB disconnected recordsets are used in n-tier applications. The programming of form's events processing is relatively simple and it should be possible to generalize it to make a simple lightweight framework in case back-end database(s) follow systematic naming conventions and database models design principles. The "trick" is to open two ADODB recordsets: - one with batch update enabled - second without batch update and make them disconnected. Then bind MS Access form to the second recordset (without batch update enabled). (I did experiemnet with recordsets having several source rows as a generic case to see are there any chances to use MS Access subforms in bound editable mode with disconnected ADODB recordsets) When MS Access form fires insert, update, delete events all the changes can be easily translated from the second recordset (where these changes are made "automagically" because MS Access form is bound to it) to the first recordset. On form close(or using special button) first recordset can be reconnected to the backend and batch update applied. (Of course in the case of special button to apply batch changes the two disconnected recordsets have to be resynchronized after updates). etc. Here is how "automagically" generated by ADODB batch update looks in the case of MS SQL backend (Info obtained from MS SQL profiler, line breaks are inserted manually to make it readable): exec sp_executesql N'UPDATE "Northwind".."Categories" SET "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE "CategoryID"=@P4 AND "CategoryName"=@P5; DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND "CategoryName"=@P7; UPDATE "Northwind".."Categories" SET "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE "CategoryID"=@P11 AND "CategoryName"=@P12; INSERT INTO "Northwind".."Categories" ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', 99, N'CatName', N'Updated category description', 99, N'CatName', 66, N'DelCatName', 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', 662, N'newCatName', N'new Cat description' Live connection to the back-end is needed only on opening of the source recordsets and on applying batch changes. Therefore connections can be pooled/should be possible to pool (I didn't experiment here) and to share them between several (many) front-end applications/clients if these connections are opened using ActiveX DCOM servers running on server PCs/.NET Remoting(?) objects. As well as actual disconnected recordset creation and reconnection and backend update can be executed on (Web) server side - depending on whatever is used on backend.... Yes, I know dynamic SPs accessing database tables directly do not look nice but there could be many ways to make it working differently using predefined stored procedures (e.g. by serializing ADODB recordset into XML file(s) where all the updates (inserts, deletes, updates) are coded special easily parsed way and then reformat these XML files into the calls to the predefined stored procedures etc.etc. Here is how it looks this saved XML(no direct correspondence with presented above batch T-SQL update) : - - - - - - - - - - - - - I do not post code here now because I wanted to experiment more and because it would be useful if somebody else tries to repeat the "trick" described above - if it will work for them then a whole set of new opportunities to use MS Access as a real development tool will be opened.... I will post code after additional tests within one-two weeks when it will become clear that it works. Please post any links here if you think that my posted information looks like "wheel reinvention" or you think it doesn't have practical application because of this or that several limitations etc.etc. Thank you. Shamil P.S. I have installed on my PC: - MS Windows 2003 Server SP1 - MS Office 2003/MS Access 2003 SP1 - MS SQL 2000 SP3a - MDAC 2.8 - NET Framework 1.1 and 2.0 - Visual Studio 2003 and 2005 - I have also MS SQL Server 2005 Express edition but I didn't experiment with it P. P.S. Yes, I didn't talk about identity(autonumber) fields - I generally use GUIDs for PKs. To properly manage numeric identity values some more tricks are needed - I'd be grateful if somebody post information on this subject (updategram/diffgram XML is a direct solution here probably - and serialized/saved ADODB batch update can be converted into diffgrams by using XSLT or VB(A) or VB.NET/C#/C++ code etc.) ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Saturday, March 11, 2006 3:36 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > John, > > I did try ADODB disconnected recordsets with MS Access XP/2003 MDBs and > they > seems to be working rather well. > > That is a surprise here because the book "Microsoft Access Developer's > Guide > to SQL Server", which I read before states this can't be done. But the > book > I have is for MS Access 2000/MS SQL 2000 - and for MS Access 2000 this > feature doesn't work. I don't have a new edition of the book - if it > exists > the authors may have written about this new useful feature.... > > I hope I'm not mistaken - I did recheck many times - yes, it seems to > work! > Please verify.... > > In P.S. of this message there is a sample code, which basicaly works OK > but > which needs more investigations - it doesn't yet process all the use > cases. > This code is for [authors] table from [pubs] sample database. It can work > with both MS SQL and MS Access BEs use: > > - BindFormToSQLADORecordset - to connect to MS SQL BE and > > - BindFormToJetADORecordset to connect to MS Access BE. > > I did check with MS SQL profiler - communication with MS SQL BE is minimal > and connection is used only when database operation is in progress - i.e. > on > short period of time for properly organized communication with BE > database. > > If additional investigations/testing will show that this simple method > works > for all the required use cases then that's "what doctor ordered." - I mean > you can relax and happily continue staying in your comfortable "bounders > camp" for quite some time... (Although I'd recommend to use GUIDs for PKs) > > It would be also very useful to make it working in disconnected optimistic > batch update mode but I doubt it's possible - I'd be happy somebody will > present here a sample how similar simple method can be used in > disconnected > optimistic batch mode. > > Shamil > <<< tail skipped >>> -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Sat Mar 11 18:12:09 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Sun, 12 Mar 2006 03:12:09 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <000001c64563$5a5952c0$0200a8c0@danwaters> Message-ID: <001601c64569$9e29cce0$6501a8c0@Nant> Dan, Yes, I have seen that - in fact I did do google before I started my experimenting. In KB281998 "How to bind Microsoft Access forms to ADO recordsets" http://support.microsoft.com/kb/281998 they talk AFAIS about binding to connected ADODB recordsets. The original question (as I got it) was hwo to bind to disconnected ADODB recordsets and then implied question is: is there a simple and generic way to translate/transfer changes from disconnected recordset to the backend... As it happens there is a trick to do that described in my previous posting. I did do google now additionally and I did find that the similar trick is described already several years ago. They do it a little bit differently but the principle is the same - they write: <<< Now, the clever tricks: 1. Open a static, optimistic batch recordset, disconnect it, save it to a simple in-memory stream object, set the stream position to zero so it can be read from the beginning, and open a new copy of the recordset from the stream. Now, bind one copy to the form, and start working. When you're ready to do a batch update, first compare the 2 recordsets for changes, and apply any adds, changes, and deletes to the unbound recordset, then run BatchUpdate from the unbound recordset. Note that Access sets values of IDENTITY columns to zero, so that's an easy way to filter for added records. ... >>> This excerpt is from this posting (watch line wraps!): <<< ADP: A2K vs 2002? From: Steve Jorgensen Date: Sun, Jul 21 2002 7:29 pm http://groups.google.com/group/comp.databases.ms-access/browse_frm/thread/1753dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/groups%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3Dimages%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3Den#f20d79536029060e >>> And here is another related information: <<< From: Steve Jorgensen Date: Thurs, Nov 28 2002 11:45 pm http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071f8c9?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=2 >>> So they approve that my trick is legal and is a kind of "wheel reinwention" - the difference of my "wheel" is that I do trasnslate changes to the second disconected recordset when form events fire - the disadvantage of my method is that it needs more tricky coding, which still needs to be well tested, the advantage - is that as soons as the changes on the current row are done I can serialize second disconnected recordset to xml file and in the case of client app's failure batch changes will not be lost etc. Strange that such a valuable information first time published in summer 2002 about using ADODB disconnected recordsets is so rarely discussed on Internet - everybody in this World is abandoning "MS Access toy" and switiching to .NET development? But this feature properly applied makes MS Access FEs good candidates to be used as true FEs - without any significant performance/locking hits on BEs I mean.... Shamil ----- Original Message ----- From: "Dan Waters" To: "'Access Developers discussion and problem solving'" Sent: Sunday, March 12, 2006 2:27 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > I've been reading you post with interest. Have you looked at MS KB > 281998? > This gives a method for an Access form to connect to SQL Server, Jet, and > Oracle BE's and be updateable. They identify a specific provider to do > this > that can be used to set up bound forms. > > The provider is: "Microsoft.Access.OLEDB.10.0" > > I have not tried this, but thought you might be interested. > > Dan Waters > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 5:04 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > John at all, > > I did make some more experimenting and it happens that MS Access 2003 (and > probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with > disconnected updatable ADODB recordsets with both MS Access and MS SQL > backends. > > I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access backend > and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. > > Some more testing/experimenting is needed but I did do quite some tests > and > they worked OK. > > As I wrote already this feature is new for me and a (big) surprise - this > is > a functionality I have been waiting for 8+ years since 1997 when we made > here a custom framework to work with MS Access and MS SQL in disconnected > mode, but it was rather heavyweight and because of the bugs in MS Access I > decided to not make it broadly available.... > > Basically this means that MS Access forms can be used in bound mode with > very low performance hit to the MS Access and MS SQL backends - the same > way > ADODB disconnected recordsets are used in n-tier applications. > > The programming of form's events processing is relatively simple and it > should be possible to generalize it to make a simple lightweight framework > in case back-end database(s) follow systematic naming conventions and > database models design principles. > > The "trick" is to open two ADODB recordsets: > > - one with batch update enabled > - second without batch update > > and make them disconnected. > > Then bind MS Access form to the second recordset (without batch update > enabled). > > (I did experiemnet with recordsets having several source rows as a generic > case to see are there any chances to use MS Access subforms in bound > editable mode with disconnected ADODB recordsets) > > When MS Access form fires insert, update, delete events all the changes > can > be easily translated from the second recordset (where these changes are > made > "automagically" because MS Access form is bound to it) to the first > recordset. > > On form close(or using special button) first recordset can be reconnected > to > the backend and batch update applied. (Of course in the case of special > button to apply batch changes the two disconnected recordsets have to be > resynchronized after updates). > > etc. > > Here is how "automagically" generated by ADODB batch update looks in the > case of MS SQL backend (Info obtained from MS SQL profiler, line breaks > are > inserted manually to make it readable): > > exec sp_executesql > > N'UPDATE "Northwind".."Categories" SET > "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE > "CategoryID"=@P4 > AND "CategoryName"=@P5; > > DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND > "CategoryName"=@P7; > > UPDATE "Northwind".."Categories" SET > "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE > "CategoryID"=@P11 AND "CategoryName"=@P12; > > INSERT INTO "Northwind".."Categories" > ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', > > N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 > nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 > nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', > > 99, N'CatName', N'Updated category description', > 99, N'CatName', > 66, N'DelCatName', > 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', > 662, N'newCatName', N'new Cat description' > > Live connection to the back-end is needed only on opening of the source > recordsets and on applying batch changes. Therefore connections can be > pooled/should be possible to pool (I didn't experiment here) and to share > them between several (many) front-end applications/clients if these > connections are opened using ActiveX DCOM servers running on server > PCs/.NET > Remoting(?) objects. As well as actual disconnected recordset creation and > reconnection and backend update can be executed on (Web) server side - > depending on whatever is used on backend.... > > Yes, I know dynamic SPs accessing database tables directly do not look > nice > but there could be many ways to make it working differently using > predefined > stored procedures (e.g. by serializing ADODB recordset into XML file(s) > where all the updates (inserts, deletes, updates) are coded special easily > parsed way and then reformat these XML files into the calls to the > predefined stored procedures etc.etc. > > Here is how it looks this saved XML(no direct correspondence with > presented > above batch T-SQL update) : > > - xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" > xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> > - > - > - rs:basecatalog="Northwind" rs:basetable="Categories1" > rs:basecolumn="CategoryID"> > rs:fixedlength="true" rs:maybenull="false" /> > > - rs:writeunknown="true" > rs:basecatalog="Northwind" rs:basetable="Categories1" > rs:basecolumn="CategoryName"> > > > - rs:writeunknown="true" rs:basecatalog="Northwind" > rs:basetable="Categories1" > rs:basecolumn="Description"> > > > > > > - > > > > /> > > > > > - > - > > > > > - > - > > > > > /> > - > /> > > - > > > > > > I do not post code here now because I wanted to experiment more and > because > it would be useful if somebody else tries to repeat the "trick" described > above - if it will work for them then a whole set of new opportunities to > use MS Access as a real development tool will be opened.... > > I will post code after additional tests within one-two weeks when it will > become clear that it works. > > Please post any links here if you think that my posted information looks > like "wheel reinvention" or you think it doesn't have practical > application > because of this or that several limitations etc.etc. > > Thank you. > > Shamil > > P.S. I have installed on my PC: > > - MS Windows 2003 Server SP1 > - MS Office 2003/MS Access 2003 SP1 > - MS SQL 2000 SP3a > - MDAC 2.8 > - NET Framework 1.1 and 2.0 > - Visual Studio 2003 and 2005 > - I have also MS SQL Server 2005 Express edition but I didn't experiment > with it > > P. P.S. Yes, I didn't talk about identity(autonumber) fields - I generally > use GUIDs for PKs. > To properly manage numeric identity values some more tricks are needed - > I'd > be grateful if somebody post information on this subject > (updategram/diffgram XML is a direct solution here probably - and > serialized/saved ADODB batch update can be converted into diffgrams by > using > XSLT or VB(A) or VB.NET/C#/C++ code etc.) > <<< tail skipped >>> From dwaters at usinternet.com Sun Mar 12 11:22:33 2006 From: dwaters at usinternet.com (Dan Waters) Date: Sun, 12 Mar 2006 11:22:33 -0600 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <25333.1142122276334.JavaMail.root@sniper16> Message-ID: <000301c645f9$8cd4fe20$0200a8c0@danwaters> Hi Shamil, Thank you for this additional information. I've learned to read your information as though I was a student in your class! I'll keep this and study it. The fact that people are moving away from Access as a development platform is interesting. My experience is that people in IT departments have had bad experiences with Access. They've repeatedly seen where someone in their company learns how to use Access to some extent to do something that many people like. But because that person doesn't have the ability or time to become a real developer, the application has trouble. Then the IT department gets told by a VP that this is a 'must have' application that the IT department must fix Now! So, the IT department has to fix it with unbudgeted time and unbudgeted funds. After a few experiences like this, IT people tend to get leery of Access. However, with VB or VB.net, a person without actual training in database development and connection between a FE and BE, can't even get started. (I have to admit that when I began developing in Access, I didn't understand the concept of FE and BE either.) This makes (today) the choice of developing significant applications using VB.net the 'safe' choice for larger companies. Having said all that, when I go to companies and tell them that I develop in Access, have been doing so for eight years, and show them how my system works, the concern over Access drops off. They can see for themselves that I can produce. I typically market to small to medium sized companies, so that may factor in also. I am looking forward to what Access 12 will have in it. I've seen some of the descriptive material published by MS, and so far it looks great! Dan Waters -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Saturday, March 11, 2006 6:12 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Dan, Yes, I have seen that - in fact I did do google before I started my experimenting. In KB281998 "How to bind Microsoft Access forms to ADO recordsets" http://support.microsoft.com/kb/281998 they talk AFAIS about binding to connected ADODB recordsets. The original question (as I got it) was hwo to bind to disconnected ADODB recordsets and then implied question is: is there a simple and generic way to translate/transfer changes from disconnected recordset to the backend... As it happens there is a trick to do that described in my previous posting. I did do google now additionally and I did find that the similar trick is described already several years ago. They do it a little bit differently but the principle is the same - they write: <<< Now, the clever tricks: 1. Open a static, optimistic batch recordset, disconnect it, save it to a simple in-memory stream object, set the stream position to zero so it can be read from the beginning, and open a new copy of the recordset from the stream. Now, bind one copy to the form, and start working. When you're ready to do a batch update, first compare the 2 recordsets for changes, and apply any adds, changes, and deletes to the unbound recordset, then run BatchUpdate from the unbound recordset. Note that Access sets values of IDENTITY columns to zero, so that's an easy way to filter for added records. ... >>> This excerpt is from this posting (watch line wraps!): <<< ADP: A2K vs 2002? From: Steve Jorgensen Date: Sun, Jul 21 2002 7:29 pm http://groups.google.com/group/comp.databases.ms-access/browse_frm/thread/17 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/grou ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3Dima ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3Den#f2 0d79536029060e >>> And here is another related information: <<< From: Steve Jorgensen Date: Thurs, Nov 28 2002 11:45 pm http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071f8c9 ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UTF-8& oe=UTF-8&rnum=2 >>> So they approve that my trick is legal and is a kind of "wheel reinwention" - the difference of my "wheel" is that I do trasnslate changes to the second disconected recordset when form events fire - the disadvantage of my method is that it needs more tricky coding, which still needs to be well tested, the advantage - is that as soons as the changes on the current row are done I can serialize second disconnected recordset to xml file and in the case of client app's failure batch changes will not be lost etc. Strange that such a valuable information first time published in summer 2002 about using ADODB disconnected recordsets is so rarely discussed on Internet - everybody in this World is abandoning "MS Access toy" and switiching to .NET development? But this feature properly applied makes MS Access FEs good candidates to be used as true FEs - without any significant performance/locking hits on BEs I mean.... Shamil ----- Original Message ----- From: "Dan Waters" To: "'Access Developers discussion and problem solving'" Sent: Sunday, March 12, 2006 2:27 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > I've been reading you post with interest. Have you looked at MS KB > 281998? > This gives a method for an Access form to connect to SQL Server, Jet, and > Oracle BE's and be updateable. They identify a specific provider to do > this > that can be used to set up bound forms. > > The provider is: "Microsoft.Access.OLEDB.10.0" > > I have not tried this, but thought you might be interested. > > Dan Waters > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 5:04 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > John at all, > > I did make some more experimenting and it happens that MS Access 2003 (and > probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with > disconnected updatable ADODB recordsets with both MS Access and MS SQL > backends. > > I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access backend > and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. > > Some more testing/experimenting is needed but I did do quite some tests > and > they worked OK. > > As I wrote already this feature is new for me and a (big) surprise - this > is > a functionality I have been waiting for 8+ years since 1997 when we made > here a custom framework to work with MS Access and MS SQL in disconnected > mode, but it was rather heavyweight and because of the bugs in MS Access I > decided to not make it broadly available.... > > Basically this means that MS Access forms can be used in bound mode with > very low performance hit to the MS Access and MS SQL backends - the same > way > ADODB disconnected recordsets are used in n-tier applications. > > The programming of form's events processing is relatively simple and it > should be possible to generalize it to make a simple lightweight framework > in case back-end database(s) follow systematic naming conventions and > database models design principles. > > The "trick" is to open two ADODB recordsets: > > - one with batch update enabled > - second without batch update > > and make them disconnected. > > Then bind MS Access form to the second recordset (without batch update > enabled). > > (I did experiemnet with recordsets having several source rows as a generic > case to see are there any chances to use MS Access subforms in bound > editable mode with disconnected ADODB recordsets) > > When MS Access form fires insert, update, delete events all the changes > can > be easily translated from the second recordset (where these changes are > made > "automagically" because MS Access form is bound to it) to the first > recordset. > > On form close(or using special button) first recordset can be reconnected > to > the backend and batch update applied. (Of course in the case of special > button to apply batch changes the two disconnected recordsets have to be > resynchronized after updates). > > etc. > > Here is how "automagically" generated by ADODB batch update looks in the > case of MS SQL backend (Info obtained from MS SQL profiler, line breaks > are > inserted manually to make it readable): > > exec sp_executesql > > N'UPDATE "Northwind".."Categories" SET > "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE > "CategoryID"=@P4 > AND "CategoryName"=@P5; > > DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND > "CategoryName"=@P7; > > UPDATE "Northwind".."Categories" SET > "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE > "CategoryID"=@P11 AND "CategoryName"=@P12; > > INSERT INTO "Northwind".."Categories" > ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', > > N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 > nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 > nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', > > 99, N'CatName', N'Updated category description', > 99, N'CatName', > 66, N'DelCatName', > 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', > 662, N'newCatName', N'new Cat description' > > Live connection to the back-end is needed only on opening of the source > recordsets and on applying batch changes. Therefore connections can be > pooled/should be possible to pool (I didn't experiment here) and to share > them between several (many) front-end applications/clients if these > connections are opened using ActiveX DCOM servers running on server > PCs/.NET > Remoting(?) objects. As well as actual disconnected recordset creation and > reconnection and backend update can be executed on (Web) server side - > depending on whatever is used on backend.... > > Yes, I know dynamic SPs accessing database tables directly do not look > nice > but there could be many ways to make it working differently using > predefined > stored procedures (e.g. by serializing ADODB recordset into XML file(s) > where all the updates (inserts, deletes, updates) are coded special easily > parsed way and then reformat these XML files into the calls to the > predefined stored procedures etc.etc. > > Here is how it looks this saved XML(no direct correspondence with > presented > above batch T-SQL update) : > > - xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" > xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> > - > - > - rs:basecatalog="Northwind" rs:basetable="Categories1" > rs:basecolumn="CategoryID"> > rs:fixedlength="true" rs:maybenull="false" /> > > - rs:writeunknown="true" > rs:basecatalog="Northwind" rs:basetable="Categories1" > rs:basecolumn="CategoryName"> > > > - rs:writeunknown="true" rs:basecatalog="Northwind" > rs:basetable="Categories1" > rs:basecolumn="Description"> > > > > > > - > > > > /> > > > > > - > - > > > > > - > - > > > > > /> > - > /> > > - > > > > > > I do not post code here now because I wanted to experiment more and > because > it would be useful if somebody else tries to repeat the "trick" described > above - if it will work for them then a whole set of new opportunities to > use MS Access as a real development tool will be opened.... > > I will post code after additional tests within one-two weeks when it will > become clear that it works. > > Please post any links here if you think that my posted information looks > like "wheel reinvention" or you think it doesn't have practical > application > because of this or that several limitations etc.etc. > > Thank you. > > Shamil > > P.S. I have installed on my PC: > > - MS Windows 2003 Server SP1 > - MS Office 2003/MS Access 2003 SP1 > - MS SQL 2000 SP3a > - MDAC 2.8 > - NET Framework 1.1 and 2.0 > - Visual Studio 2003 and 2005 > - I have also MS SQL Server 2005 Express edition but I didn't experiment > with it > > P. P.S. Yes, I didn't talk about identity(autonumber) fields - I generally > use GUIDs for PKs. > To properly manage numeric identity values some more tricks are needed - > I'd > be grateful if somebody post information on this subject > (updategram/diffgram XML is a direct solution here probably - and > serialized/saved ADODB batch update can be converted into diffgrams by > using > XSLT or VB(A) or VB.NET/C#/C++ code etc.) > <<< tail skipped >>> -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Sun Mar 12 18:12:49 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Sun, 12 Mar 2006 19:12:49 -0500 Subject: [AccessD] Discovering Access version at runtime - was Access XP forms bound to ADO recordsets In-Reply-To: <05f501c644a3$d1643080$6501a8c0@Nant> Message-ID: <004401c64632$de22f5a0$647aa8c0@ColbyM6805> >and for MS Access 2000 this feature doesn't work. And this brings up to an important question, can a framework dynamically configure to use code based on the version? I use the same framework for A2K and above. The reason I cut off at A2K that raisevents do not work in A97 and I make some use of RaiseEvents in the framework. Now we have code which works in AXP but not A2K and below. So I would like to carve this stuff out and only load it if the version being run under is AXP or above. A quick Google search does not come up with anything. If this can be done, XP also supports form event sinks in two different class modules without the page faults that A2K would trigger if you tried that, so it might work well to place these event sinks out in a completely separate class and instantiate that class only if the version was XP or above. Thoughts about this? John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Friday, March 10, 2006 7:36 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets John, I did try ADODB disconnected recordsets with MS Access XP/2003 MDBs and they seems to be working rather well. That is a surprise here because the book "Microsoft Access Developer's Guide to SQL Server", which I read before states this can't be done. But the book I have is for MS Access 2000/MS SQL 2000 - and for MS Access 2000 this feature doesn't work. I don't have a new edition of the book - if it exists the authors may have written about this new useful feature.... I hope I'm not mistaken - I did recheck many times - yes, it seems to work! Please verify.... In P.S. of this message there is a sample code, which basicaly works OK but which needs more investigations - it doesn't yet process all the use cases. This code is for [authors] table from [pubs] sample database. It can work with both MS SQL and MS Access BEs use: - BindFormToSQLADORecordset - to connect to MS SQL BE and - BindFormToJetADORecordset to connect to MS Access BE. I did check with MS SQL profiler - communication with MS SQL BE is minimal and connection is used only when database operation is in progress - i.e. on short period of time for properly organized communication with BE database. If additional investigations/testing will show that this simple method works for all the required use cases then that's "what doctor ordered." - I mean you can relax and happily continue staying in your comfortable "bounders camp" for quite some time... (Although I'd recommend to use GUIDs for PKs) It would be also very useful to make it working in disconnected optimistic batch update mode but I doubt it's possible - I'd be happy somebody will present here a sample how similar simple method can be used in disconnected optimistic batch mode. Shamil P.S. 1. create new mdb 2. connect to [authors] table from [pubs] MS SQL sample database 3. use make table query to clone [dbo_authors] to local MS Access table [authors] 4. close sample database 5. open sample database in shared mode 6. create form for [authors] table 7. removed form's recordsource 8. put the following code into form's module (edit connection strings if needed) 9. open form in normal view (to switch MS SQL/Jet backend comment/uncommented the code lines in Form_Load sub) 10. Enjoy! Private mrst As ADODB.Recordset Private mcnn As ADODB.Connection Private mcolDeletedRowsIds As New Collection Private Sub Form_Load() 'BindFormToSQLADORecordset BindFormToJetADORecordset End Sub Private Sub Form_BeforeUpdate(Cancel As Integer) UpdateBE End Sub Private Sub Form_BeforeInsert(Cancel As Integer) mrst.AddNew End Sub Private Sub Form_Delete(Cancel As Integer) If mcolDeletedRowsIds.Count = 0 Then mcolDeletedRowsIds.Add mrst!au_id.Value Else mcolDeletedRowsIds.Add mrst!au_id.Value, , 1 End If End Sub Private Sub Form_Current() Dim strSql As String Dim i As Integer If mcolDeletedRowsIds.Count > 0 Then For i = mcolDeletedRowsIds.Count To 1 Step -1 strSql = "delete from [authors] where au_id = '" & _ mcolDeletedRowsIds.Item(i) & "'" mcnn.Execute strSql mcolDeletedRowsIds.Remove i Next i End If End Sub Private Sub Form_Unload(Cancel As Integer) On Error Resume Next mrst.Close mcnn.Close End Sub Private Sub BindFormToSQLADORecordset() Dim strSql As String Dim strCnn As String Set mcnn = New ADODB.Connection strCnn = "Provider=SQLOLEDB.1;" & _ "Server=(local);" & _ "Database=Pubs;" & _ "Integrated Security = SSPI" mcnn.Open strCnn strSql = "select * from [authors]" Set mrst = New ADODB.Recordset mrst.CursorLocation = adUseClient mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic mrst.ActiveConnection = Nothing Set Me.Recordset = mrst End Sub Private Sub UpdateBE() Set mrst.ActiveConnection = mcnn mrst.UpdateBatch adAffectCurrent Set mrst.ActiveConnection = Nothing End Sub Private Sub BindFormToJetADORecordset() Dim strSql As String Dim strCnn As String Set mcnn = New ADODB.Connection strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=" & CurrentDb.Name & _ ";User Id=admin;Password=;" mcnn.Open strCnn strSql = "select * from [authors]" Set mrst = New ADODB.Recordset mrst.CursorLocation = adUseClient mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic Set mrst.ActiveConnection = Nothing Set Me.Recordset = mrst End Sub From harkinsss at bellsouth.net Sun Mar 12 18:32:40 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Sun, 12 Mar 2006 19:32:40 -0500 Subject: [AccessD] Discovering Access version at runtime - was Access XPforms bound to ADO recordsets In-Reply-To: <004401c64632$de22f5a0$647aa8c0@ColbyM6805> Message-ID: <000101c64635$a3d76090$c2b3d6d1@SUSANONE> John, you want to check the version and then load code based on the version? Susan H. of RaiseEvents in the framework. Now we have code which works in AXP but not A2K and below. So I would like to carve this stuff out and only load it if the version being run under is AXP or above. A quick Google search does not come up with anything. From harkinsss at bellsouth.net Sun Mar 12 19:26:37 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Sun, 12 Mar 2006 20:26:37 -0500 Subject: [AccessD] OpenSchema syntax Message-ID: <000301c6463d$2d373520$c2b3d6d1@SUSANONE> Set rst = CurrentProject.Connection.OpenSchema(adSchemaColumns, Array(Empty, Empty, Empty, "Shippers")) I can't remember the exact syntax for filtering a schema recordset to a specific table -- anyone remember which array element I'm supposed to use. I've moved the table name around, but I either get an error or an empty recordset. Susan H. From darrend at nimble.com.au Sun Mar 12 20:03:57 2006 From: darrend at nimble.com.au (Darren DICK) Date: Mon, 13 Mar 2006 13:03:57 +1100 Subject: [AccessD] A2003: Running SQL SPROCS from Access Message-ID: <20060313020401.LAHV3168.omta02ps.mx.bigpond.com@DENZILLAP> Cross posted to dba-SQL Server list Hi All Once I have made a connection to an SQL dB Is there a way to execute SPROCS in that dB Special code or special syntax etc? Indeed - is there even a special connection routine needed - given the latest threads on connecting with updatable connections (ADOB) Many thanks in advance DD From wdhindman at bellsouth.net Sun Mar 12 21:09:25 2006 From: wdhindman at bellsouth.net (William Hindman) Date: Sun, 12 Mar 2006 22:09:25 -0500 Subject: [AccessD] Discovering Access version at runtime - was Access XPforms bound to ADO recordsets References: <004401c64632$de22f5a0$647aa8c0@ColbyM6805> Message-ID: <000701c6464b$8914efa0$6101a8c0@50NM721> ...not sure what you're asking here JC but you can certainly get the Access versions ...acSysCmdAccessVer will get the loaded version and acSysCmdRuntime will tell you whether its a full install or just a runtime install ...I've not based code loads on the Access version but I do based on whether or not its a runtime install ...hth. William ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Sunday, March 12, 2006 7:12 PM Subject: [AccessD] Discovering Access version at runtime - was Access XPforms bound to ADO recordsets > >and for MS Access 2000 this feature doesn't work. > > And this brings up to an important question, can a framework dynamically > configure to use code based on the version? > > I use the same framework for A2K and above. The reason I cut off at A2K > that raisevents do not work in A97 and I make some use of RaiseEvents in > the > framework. Now we have code which works in AXP but not A2K and below. So > I > would like to carve this stuff out and only load it if the version being > run > under is AXP or above. A quick Google search does not come up with > anything. > > If this can be done, XP also supports form event sinks in two different > class modules without the page faults that A2K would trigger if you tried > that, so it might work well to place these event sinks out in a completely > separate class and instantiate that class only if the version was XP or > above. > > Thoughts about this? > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Friday, March 10, 2006 7:36 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > John, > > I did try ADODB disconnected recordsets with MS Access XP/2003 MDBs and > they > seems to be working rather well. > > That is a surprise here because the book "Microsoft Access Developer's > Guide > to SQL Server", which I read before states this can't be done. But the > book > I have is for MS Access 2000/MS SQL 2000 - and for MS Access 2000 this > feature doesn't work. I don't have a new edition of the book - if it > exists > the authors may have written about this new useful feature.... > > I hope I'm not mistaken - I did recheck many times - yes, it seems to > work! > Please verify.... > > In P.S. of this message there is a sample code, which basicaly works OK > but > which needs more investigations - it doesn't yet process all the use > cases. > This code is for [authors] table from [pubs] sample database. It can work > with both MS SQL and MS Access BEs use: > > - BindFormToSQLADORecordset - to connect to MS SQL BE and > > - BindFormToJetADORecordset to connect to MS Access BE. > > I did check with MS SQL profiler - communication with MS SQL BE is minimal > and connection is used only when database operation is in progress - i.e. > on > short period of time for properly organized communication with BE > database. > > If additional investigations/testing will show that this simple method > works > for all the required use cases then that's "what doctor ordered." - I mean > you can relax and happily continue staying in your comfortable "bounders > camp" for quite some time... (Although I'd recommend to use GUIDs for PKs) > > It would be also very useful to make it working in disconnected optimistic > batch update mode but I doubt it's possible - I'd be happy somebody will > present here a sample how similar simple method can be used in > disconnected > optimistic batch mode. > > Shamil > > P.S. > > 1. create new mdb > 2. connect to [authors] table from [pubs] MS SQL sample database 3. use > make > table query to clone [dbo_authors] to local MS Access table [authors] 4. > close sample database 5. open sample database in shared mode 6. create > form > for [authors] table 7. removed form's recordsource 8. put the following > code > into form's module (edit connection strings if > needed) > 9. open form in normal view (to switch MS SQL/Jet backend > comment/uncommented the code lines in Form_Load sub) 10. Enjoy! > > Private mrst As ADODB.Recordset > Private mcnn As ADODB.Connection > > Private mcolDeletedRowsIds As New Collection > > Private Sub Form_Load() > 'BindFormToSQLADORecordset > BindFormToJetADORecordset > End Sub > > Private Sub Form_BeforeUpdate(Cancel As Integer) > UpdateBE > End Sub > > Private Sub Form_BeforeInsert(Cancel As Integer) > mrst.AddNew > End Sub > > Private Sub Form_Delete(Cancel As Integer) > If mcolDeletedRowsIds.Count = 0 Then > mcolDeletedRowsIds.Add mrst!au_id.Value > Else > mcolDeletedRowsIds.Add mrst!au_id.Value, , 1 > End If > End Sub > > Private Sub Form_Current() > Dim strSql As String > Dim i As Integer > If mcolDeletedRowsIds.Count > 0 Then > For i = mcolDeletedRowsIds.Count To 1 Step -1 > strSql = "delete from [authors] where au_id = '" & _ > mcolDeletedRowsIds.Item(i) & "'" > mcnn.Execute strSql > mcolDeletedRowsIds.Remove i > Next i > End If > End Sub > > Private Sub Form_Unload(Cancel As Integer) On Error Resume Next > mrst.Close > mcnn.Close > End Sub > > Private Sub BindFormToSQLADORecordset() > Dim strSql As String > Dim strCnn As String > Set mcnn = New ADODB.Connection > strCnn = "Provider=SQLOLEDB.1;" & _ > "Server=(local);" & _ > "Database=Pubs;" & _ > "Integrated Security = SSPI" > mcnn.Open strCnn > > strSql = "select * from [authors]" > Set mrst = New ADODB.Recordset > mrst.CursorLocation = adUseClient > > mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic > > mrst.ActiveConnection = Nothing > > Set Me.Recordset = mrst > End Sub > > Private Sub UpdateBE() > Set mrst.ActiveConnection = mcnn > mrst.UpdateBatch adAffectCurrent > Set mrst.ActiveConnection = Nothing > End Sub > > Private Sub BindFormToJetADORecordset() > Dim strSql As String > Dim strCnn As String > Set mcnn = New ADODB.Connection > strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ > "Data Source=" & CurrentDb.Name & _ > ";User Id=admin;Password=;" > mcnn.Open strCnn > > strSql = "select * from [authors]" > Set mrst = New ADODB.Recordset > mrst.CursorLocation = adUseClient > > mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic > > Set mrst.ActiveConnection = Nothing > > Set Me.Recordset = mrst > End Sub > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Sun Mar 12 21:18:35 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Sun, 12 Mar 2006 22:18:35 -0500 Subject: [AccessD] Discovering Access version at runtime - was AccessXPforms bound to ADO recordsets In-Reply-To: <000101c64635$a3d76090$c2b3d6d1@SUSANONE> Message-ID: <004501c6464c$d0f19570$647aa8c0@ColbyM6805> >John, you want to check the version and then load code based on the version? Yes, the ACCESS version. I have found stuff about checking the registry, but this really only addresses what is INSTALLED, not what is currently running. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Sunday, March 12, 2006 7:33 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Discovering Access version at runtime - was AccessXPforms bound to ADO recordsets John, you want to check the version and then load code based on the version? Susan H. of RaiseEvents in the framework. Now we have code which works in AXP but not A2K and below. So I would like to carve this stuff out and only load it if the version being run under is AXP or above. A quick Google search does not come up with anything. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From stuart at lexacorp.com.pg Sun Mar 12 21:51:39 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Mon, 13 Mar 2006 13:51:39 +1000 Subject: [AccessD] Discovering Access version at runtime - was AccessXPforms bound to ADO recordsets In-Reply-To: <004501c6464c$d0f19570$647aa8c0@ColbyM6805> References: <000101c64635$a3d76090$c2b3d6d1@SUSANONE> Message-ID: <441578EB.12411.1122A47@stuart.lexacorp.com.pg> On 12 Mar 2006 at 22:18, John Colby wrote: > >John, you want to check the version and then load code based on the > version? > > Yes, the ACCESS version. I have found stuff about checking the registry, > but this really only addresses what is INSTALLED, not what is currently > running. > RTFM? :-) Version Returns a String indicating the version number of the currently installed copy of Microsoft Access. Read-only. expression.Version expression Required. An expression that returns one of the objects in the Applies To list. Example The following example displays the version and build number of the currently-installed copy of Microsoft Access. MsgBox "You are currently running Microsoft Access, " _ & " version " & Application.Version & ", build " _ & Application.Build & "." -- Stuart From mmattys at rochester.rr.com Sun Mar 12 22:12:52 2006 From: mmattys at rochester.rr.com (Michael R Mattys) Date: Sun, 12 Mar 2006 23:12:52 -0500 Subject: [AccessD] Discovering Access version at runtime - was Access XP forms bound to ADO recordsets References: <004401c64632$de22f5a0$647aa8c0@ColbyM6805> Message-ID: <0c3a01c64654$672baab0$6401a8c0@default> Conditional compilation doesn't quite seem to meet the task, but I noticed this enigmatic statement in help: "Public compiler constants can only be created in the user interface." I wonder what that means? So then, the only other alternative that comes to mind is to use mde libraries for each version and invoke one or the other based upon the value of acSysCmdAccessVer. Michael R. Mattys MapPoint Developer www.mattysconsulting.com ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Sunday, March 12, 2006 7:12 PM Subject: [AccessD] Discovering Access version at runtime - was Access XP forms bound to ADO recordsets > >and for MS Access 2000 this feature doesn't work. > > And this brings up to an important question, can a framework dynamically > configure to use code based on the version? > > I use the same framework for A2K and above. The reason I cut off at A2K > that raisevents do not work in A97 and I make some use of RaiseEvents in > the > framework. Now we have code which works in AXP but not A2K and below. So > I > would like to carve this stuff out and only load it if the version being > run > under is AXP or above. A quick Google search does not come up with > anything. > > If this can be done, XP also supports form event sinks in two different > class modules without the page faults that A2K would trigger if you tried > that, so it might work well to place these event sinks out in a completely > separate class and instantiate that class only if the version was XP or > above. > > Thoughts about this? > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Friday, March 10, 2006 7:36 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > John, > > I did try ADODB disconnected recordsets with MS Access XP/2003 MDBs and > they > seems to be working rather well. > > That is a surprise here because the book "Microsoft Access Developer's > Guide > to SQL Server", which I read before states this can't be done. But the > book > I have is for MS Access 2000/MS SQL 2000 - and for MS Access 2000 this > feature doesn't work. I don't have a new edition of the book - if it > exists > the authors may have written about this new useful feature.... > > I hope I'm not mistaken - I did recheck many times - yes, it seems to > work! > Please verify.... > > In P.S. of this message there is a sample code, which basicaly works OK > but > which needs more investigations - it doesn't yet process all the use > cases. > This code is for [authors] table from [pubs] sample database. It can work > with both MS SQL and MS Access BEs use: > > - BindFormToSQLADORecordset - to connect to MS SQL BE and > > - BindFormToJetADORecordset to connect to MS Access BE. > > I did check with MS SQL profiler - communication with MS SQL BE is minimal > and connection is used only when database operation is in progress - i.e. > on > short period of time for properly organized communication with BE > database. > > If additional investigations/testing will show that this simple method > works > for all the required use cases then that's "what doctor ordered." - I mean > you can relax and happily continue staying in your comfortable "bounders > camp" for quite some time... (Although I'd recommend to use GUIDs for PKs) > > It would be also very useful to make it working in disconnected optimistic > batch update mode but I doubt it's possible - I'd be happy somebody will > present here a sample how similar simple method can be used in > disconnected > optimistic batch mode. > > Shamil > > P.S. > > 1. create new mdb > 2. connect to [authors] table from [pubs] MS SQL sample database 3. use > make > table query to clone [dbo_authors] to local MS Access table [authors] 4. > close sample database 5. open sample database in shared mode 6. create > form > for [authors] table 7. removed form's recordsource 8. put the following > code > into form's module (edit connection strings if > needed) > 9. open form in normal view (to switch MS SQL/Jet backend > comment/uncommented the code lines in Form_Load sub) 10. Enjoy! > > Private mrst As ADODB.Recordset > Private mcnn As ADODB.Connection > > Private mcolDeletedRowsIds As New Collection > > Private Sub Form_Load() > 'BindFormToSQLADORecordset > BindFormToJetADORecordset > End Sub > > Private Sub Form_BeforeUpdate(Cancel As Integer) > UpdateBE > End Sub > > Private Sub Form_BeforeInsert(Cancel As Integer) > mrst.AddNew > End Sub > > Private Sub Form_Delete(Cancel As Integer) > If mcolDeletedRowsIds.Count = 0 Then > mcolDeletedRowsIds.Add mrst!au_id.Value > Else > mcolDeletedRowsIds.Add mrst!au_id.Value, , 1 > End If > End Sub > > Private Sub Form_Current() > Dim strSql As String > Dim i As Integer > If mcolDeletedRowsIds.Count > 0 Then > For i = mcolDeletedRowsIds.Count To 1 Step -1 > strSql = "delete from [authors] where au_id = '" & _ > mcolDeletedRowsIds.Item(i) & "'" > mcnn.Execute strSql > mcolDeletedRowsIds.Remove i > Next i > End If > End Sub > > Private Sub Form_Unload(Cancel As Integer) On Error Resume Next > mrst.Close > mcnn.Close > End Sub > > Private Sub BindFormToSQLADORecordset() > Dim strSql As String > Dim strCnn As String > Set mcnn = New ADODB.Connection > strCnn = "Provider=SQLOLEDB.1;" & _ > "Server=(local);" & _ > "Database=Pubs;" & _ > "Integrated Security = SSPI" > mcnn.Open strCnn > > strSql = "select * from [authors]" > Set mrst = New ADODB.Recordset > mrst.CursorLocation = adUseClient > > mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic > > mrst.ActiveConnection = Nothing > > Set Me.Recordset = mrst > End Sub > > Private Sub UpdateBE() > Set mrst.ActiveConnection = mcnn > mrst.UpdateBatch adAffectCurrent > Set mrst.ActiveConnection = Nothing > End Sub > > Private Sub BindFormToJetADORecordset() > Dim strSql As String > Dim strCnn As String > Set mcnn = New ADODB.Connection > strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ > "Data Source=" & CurrentDb.Name & _ > ";User Id=admin;Password=;" > mcnn.Open strCnn > > strSql = "select * from [authors]" > Set mrst = New ADODB.Recordset > mrst.CursorLocation = adUseClient > > mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic > > Set mrst.ActiveConnection = Nothing > > Set Me.Recordset = mrst > End Sub > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Sun Mar 12 22:24:34 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Sun, 12 Mar 2006 23:24:34 -0500 Subject: [AccessD] Discovering Access version at runtime - was AccessXPforms bound to ADO recordsets In-Reply-To: <000701c6464b$8914efa0$6101a8c0@50NM721> Message-ID: <004901c64656$09021120$647aa8c0@ColbyM6805> That would be what I am after. Thanks, John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of William Hindman Sent: Sunday, March 12, 2006 10:09 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Discovering Access version at runtime - was AccessXPforms bound to ADO recordsets ...not sure what you're asking here JC but you can certainly get the Access versions ...acSysCmdAccessVer will get the loaded version and acSysCmdRuntime will tell you whether its a full install or just a runtime install ...I've not based code loads on the Access version but I do based on whether or not its a runtime install ...hth. William ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Sunday, March 12, 2006 7:12 PM Subject: [AccessD] Discovering Access version at runtime - was Access XPforms bound to ADO recordsets > >and for MS Access 2000 this feature doesn't work. > > And this brings up to an important question, can a framework > dynamically configure to use code based on the version? > > I use the same framework for A2K and above. The reason I cut off at > A2K that raisevents do not work in A97 and I make some use of > RaiseEvents in the framework. Now we have code which works in AXP but > not A2K and below. So I would like to carve this stuff out and only > load it if the version being run under is AXP or above. A quick > Google search does not come up with anything. > > If this can be done, XP also supports form event sinks in two > different class modules without the page faults that A2K would trigger > if you tried that, so it might work well to place these event sinks > out in a completely separate class and instantiate that class only if > the version was XP or above. > > Thoughts about this? > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Friday, March 10, 2006 7:36 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > John, > > I did try ADODB disconnected recordsets with MS Access XP/2003 MDBs > and they seems to be working rather well. > > That is a surprise here because the book "Microsoft Access Developer's > Guide to SQL Server", which I read before states this can't be done. > But the book I have is for MS Access 2000/MS SQL 2000 - and for MS > Access 2000 this feature doesn't work. I don't have a new edition of > the book - if it exists the authors may have written about this new > useful feature.... > > I hope I'm not mistaken - I did recheck many times - yes, it seems to > work! > Please verify.... > > In P.S. of this message there is a sample code, which basicaly works > OK but which needs more investigations - it doesn't yet process all > the use cases. > This code is for [authors] table from [pubs] sample database. It can > work with both MS SQL and MS Access BEs use: > > - BindFormToSQLADORecordset - to connect to MS SQL BE and > > - BindFormToJetADORecordset to connect to MS Access BE. > > I did check with MS SQL profiler - communication with MS SQL BE is > minimal and connection is used only when database operation is in progress - i.e. > on > short period of time for properly organized communication with BE > database. > > If additional investigations/testing will show that this simple method > works for all the required use cases then that's "what doctor > ordered." - I mean you can relax and happily continue staying in your > comfortable "bounders camp" for quite some time... (Although I'd > recommend to use GUIDs for PKs) > > It would be also very useful to make it working in disconnected > optimistic batch update mode but I doubt it's possible - I'd be happy > somebody will present here a sample how similar simple method can be > used in disconnected optimistic batch mode. > > Shamil > > P.S. > > 1. create new mdb > 2. connect to [authors] table from [pubs] MS SQL sample database 3. > use make table query to clone [dbo_authors] to local MS Access table > [authors] 4. > close sample database 5. open sample database in shared mode 6. create > form for [authors] table 7. removed form's recordsource 8. put the > following code into form's module (edit connection strings if > needed) > 9. open form in normal view (to switch MS SQL/Jet backend > comment/uncommented the code lines in Form_Load sub) 10. Enjoy! > > Private mrst As ADODB.Recordset > Private mcnn As ADODB.Connection > > Private mcolDeletedRowsIds As New Collection > > Private Sub Form_Load() > 'BindFormToSQLADORecordset > BindFormToJetADORecordset > End Sub > > Private Sub Form_BeforeUpdate(Cancel As Integer) > UpdateBE > End Sub > > Private Sub Form_BeforeInsert(Cancel As Integer) > mrst.AddNew > End Sub > > Private Sub Form_Delete(Cancel As Integer) > If mcolDeletedRowsIds.Count = 0 Then > mcolDeletedRowsIds.Add mrst!au_id.Value > Else > mcolDeletedRowsIds.Add mrst!au_id.Value, , 1 > End If > End Sub > > Private Sub Form_Current() > Dim strSql As String > Dim i As Integer > If mcolDeletedRowsIds.Count > 0 Then > For i = mcolDeletedRowsIds.Count To 1 Step -1 > strSql = "delete from [authors] where au_id = '" & _ > mcolDeletedRowsIds.Item(i) & "'" > mcnn.Execute strSql > mcolDeletedRowsIds.Remove i > Next i > End If > End Sub > > Private Sub Form_Unload(Cancel As Integer) On Error Resume Next > mrst.Close > mcnn.Close > End Sub > > Private Sub BindFormToSQLADORecordset() Dim strSql As String Dim > strCnn As String > Set mcnn = New ADODB.Connection > strCnn = "Provider=SQLOLEDB.1;" & _ > "Server=(local);" & _ > "Database=Pubs;" & _ > "Integrated Security = SSPI" > mcnn.Open strCnn > > strSql = "select * from [authors]" > Set mrst = New ADODB.Recordset > mrst.CursorLocation = adUseClient > > mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic > > mrst.ActiveConnection = Nothing > > Set Me.Recordset = mrst > End Sub > > Private Sub UpdateBE() > Set mrst.ActiveConnection = mcnn > mrst.UpdateBatch adAffectCurrent > Set mrst.ActiveConnection = Nothing End Sub > > Private Sub BindFormToJetADORecordset() Dim strSql As String Dim > strCnn As String > Set mcnn = New ADODB.Connection > strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ > "Data Source=" & CurrentDb.Name & _ > ";User Id=admin;Password=;" > mcnn.Open strCnn > > strSql = "select * from [authors]" > Set mrst = New ADODB.Recordset > mrst.CursorLocation = adUseClient > > mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic > > Set mrst.ActiveConnection = Nothing > > Set Me.Recordset = mrst > End Sub > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Sun Mar 12 22:47:43 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Sun, 12 Mar 2006 23:47:43 -0500 Subject: [AccessD] Discovering Access version at runtime - wasAccessXPforms bound to ADO recordsets In-Reply-To: <441578EB.12411.1122A47@stuart.lexacorp.com.pg> Message-ID: <004a01c64659$44e12fc0$647aa8c0@ColbyM6805> LOL, Thanks Stuart. Now if I could only find the FM. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stuart McLachlan Sent: Sunday, March 12, 2006 10:52 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Discovering Access version at runtime - wasAccessXPforms bound to ADO recordsets On 12 Mar 2006 at 22:18, John Colby wrote: > >John, you want to check the version and then load code based on the > version? > > Yes, the ACCESS version. I have found stuff about checking the > registry, but this really only addresses what is INSTALLED, not what > is currently running. > RTFM? :-) Version Returns a String indicating the version number of the currently installed copy of Microsoft Access. Read-only. expression.Version expression Required. An expression that returns one of the objects in the Applies To list. Example The following example displays the version and build number of the currently-installed copy of Microsoft Access. MsgBox "You are currently running Microsoft Access, " _ & " version " & Application.Version & ", build " _ & Application.Build & "." -- Stuart -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Sun Mar 12 22:48:53 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Sun, 12 Mar 2006 23:48:53 -0500 Subject: [AccessD] Discovering Access version at runtime - was AccessXP forms bound to ADO recordsets In-Reply-To: <0c3a01c64654$672baab0$6401a8c0@default> Message-ID: <004b01c64659$6e9a56c0$647aa8c0@ColbyM6805> >Conditional compilation doesn't quite seem to meet the task Boy if ONLY!!! There should be something that can be used with conditional compilation. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Michael R Mattys Sent: Sunday, March 12, 2006 11:13 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Discovering Access version at runtime - was AccessXP forms bound to ADO recordsets Conditional compilation doesn't quite seem to meet the task, but I noticed this enigmatic statement in help: "Public compiler constants can only be created in the user interface." I wonder what that means? So then, the only other alternative that comes to mind is to use mde libraries for each version and invoke one or the other based upon the value of acSysCmdAccessVer. Michael R. Mattys MapPoint Developer www.mattysconsulting.com ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Sunday, March 12, 2006 7:12 PM Subject: [AccessD] Discovering Access version at runtime - was Access XP forms bound to ADO recordsets > >and for MS Access 2000 this feature doesn't work. > > And this brings up to an important question, can a framework > dynamically configure to use code based on the version? > > I use the same framework for A2K and above. The reason I cut off at > A2K that raisevents do not work in A97 and I make some use of > RaiseEvents in the framework. Now we have code which works in AXP but > not A2K and below. So I would like to carve this stuff out and only > load it if the version being run under is AXP or above. A quick > Google search does not come up with anything. > > If this can be done, XP also supports form event sinks in two > different class modules without the page faults that A2K would trigger > if you tried that, so it might work well to place these event sinks > out in a completely separate class and instantiate that class only if > the version was XP or above. > > Thoughts about this? > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Friday, March 10, 2006 7:36 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > John, > > I did try ADODB disconnected recordsets with MS Access XP/2003 MDBs > and they seems to be working rather well. > > That is a surprise here because the book "Microsoft Access Developer's > Guide to SQL Server", which I read before states this can't be done. > But the book I have is for MS Access 2000/MS SQL 2000 - and for MS > Access 2000 this feature doesn't work. I don't have a new edition of > the book - if it exists the authors may have written about this new > useful feature.... > > I hope I'm not mistaken - I did recheck many times - yes, it seems to > work! > Please verify.... > > In P.S. of this message there is a sample code, which basicaly works > OK but which needs more investigations - it doesn't yet process all > the use cases. > This code is for [authors] table from [pubs] sample database. It can > work with both MS SQL and MS Access BEs use: > > - BindFormToSQLADORecordset - to connect to MS SQL BE and > > - BindFormToJetADORecordset to connect to MS Access BE. > > I did check with MS SQL profiler - communication with MS SQL BE is > minimal and connection is used only when database operation is in progress - i.e. > on > short period of time for properly organized communication with BE > database. > > If additional investigations/testing will show that this simple method > works for all the required use cases then that's "what doctor > ordered." - I mean you can relax and happily continue staying in your > comfortable "bounders camp" for quite some time... (Although I'd > recommend to use GUIDs for PKs) > > It would be also very useful to make it working in disconnected > optimistic batch update mode but I doubt it's possible - I'd be happy > somebody will present here a sample how similar simple method can be > used in disconnected optimistic batch mode. > > Shamil > > P.S. > > 1. create new mdb > 2. connect to [authors] table from [pubs] MS SQL sample database 3. > use make table query to clone [dbo_authors] to local MS Access table > [authors] 4. > close sample database 5. open sample database in shared mode 6. create > form for [authors] table 7. removed form's recordsource 8. put the > following code into form's module (edit connection strings if > needed) > 9. open form in normal view (to switch MS SQL/Jet backend > comment/uncommented the code lines in Form_Load sub) 10. Enjoy! > > Private mrst As ADODB.Recordset > Private mcnn As ADODB.Connection > > Private mcolDeletedRowsIds As New Collection > > Private Sub Form_Load() > 'BindFormToSQLADORecordset > BindFormToJetADORecordset > End Sub > > Private Sub Form_BeforeUpdate(Cancel As Integer) > UpdateBE > End Sub > > Private Sub Form_BeforeInsert(Cancel As Integer) > mrst.AddNew > End Sub > > Private Sub Form_Delete(Cancel As Integer) > If mcolDeletedRowsIds.Count = 0 Then > mcolDeletedRowsIds.Add mrst!au_id.Value > Else > mcolDeletedRowsIds.Add mrst!au_id.Value, , 1 > End If > End Sub > > Private Sub Form_Current() > Dim strSql As String > Dim i As Integer > If mcolDeletedRowsIds.Count > 0 Then > For i = mcolDeletedRowsIds.Count To 1 Step -1 > strSql = "delete from [authors] where au_id = '" & _ > mcolDeletedRowsIds.Item(i) & "'" > mcnn.Execute strSql > mcolDeletedRowsIds.Remove i > Next i > End If > End Sub > > Private Sub Form_Unload(Cancel As Integer) On Error Resume Next > mrst.Close > mcnn.Close > End Sub > > Private Sub BindFormToSQLADORecordset() Dim strSql As String Dim > strCnn As String > Set mcnn = New ADODB.Connection > strCnn = "Provider=SQLOLEDB.1;" & _ > "Server=(local);" & _ > "Database=Pubs;" & _ > "Integrated Security = SSPI" > mcnn.Open strCnn > > strSql = "select * from [authors]" > Set mrst = New ADODB.Recordset > mrst.CursorLocation = adUseClient > > mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic > > mrst.ActiveConnection = Nothing > > Set Me.Recordset = mrst > End Sub > > Private Sub UpdateBE() > Set mrst.ActiveConnection = mcnn > mrst.UpdateBatch adAffectCurrent > Set mrst.ActiveConnection = Nothing End Sub > > Private Sub BindFormToJetADORecordset() Dim strSql As String Dim > strCnn As String > Set mcnn = New ADODB.Connection > strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ > "Data Source=" & CurrentDb.Name & _ > ";User Id=admin;Password=;" > mcnn.Open strCnn > > strSql = "select * from [authors]" > Set mrst = New ADODB.Recordset > mrst.CursorLocation = adUseClient > > mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic > > Set mrst.ActiveConnection = Nothing > > Set Me.Recordset = mrst > End Sub > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Sun Mar 12 23:15:42 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Mon, 13 Mar 2006 00:15:42 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <001601c64569$9e29cce0$6501a8c0@Nant> Message-ID: <005201c6465d$2d5cb0f0$647aa8c0@ColbyM6805> Shamil, I am looking at this now. Do you know if binding to an ADO recordset changes the data type of the RecordsetClone. I was under the impression that RecordsetClone was always a DAO recordset. Does RecordsetClone become invalid? I use RecordsetClone to perform many different operations, including syncing the form to a combo and VV. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Saturday, March 11, 2006 7:12 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Dan, Yes, I have seen that - in fact I did do google before I started my experimenting. In KB281998 "How to bind Microsoft Access forms to ADO recordsets" http://support.microsoft.com/kb/281998 they talk AFAIS about binding to connected ADODB recordsets. The original question (as I got it) was hwo to bind to disconnected ADODB recordsets and then implied question is: is there a simple and generic way to translate/transfer changes from disconnected recordset to the backend... As it happens there is a trick to do that described in my previous posting. I did do google now additionally and I did find that the similar trick is described already several years ago. They do it a little bit differently but the principle is the same - they write: <<< Now, the clever tricks: 1. Open a static, optimistic batch recordset, disconnect it, save it to a simple in-memory stream object, set the stream position to zero so it can be read from the beginning, and open a new copy of the recordset from the stream. Now, bind one copy to the form, and start working. When you're ready to do a batch update, first compare the 2 recordsets for changes, and apply any adds, changes, and deletes to the unbound recordset, then run BatchUpdate from the unbound recordset. Note that Access sets values of IDENTITY columns to zero, so that's an easy way to filter for added records. ... >>> This excerpt is from this posting (watch line wraps!): <<< ADP: A2K vs 2002? From: Steve Jorgensen Date: Sun, Jul 21 2002 7:29 pm http://groups.google.com/group/comp.databases.ms-access/browse_frm/thread/17 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/grou ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3Dima ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3Den#f2 0d79536029060e >>> And here is another related information: <<< From: Steve Jorgensen Date: Thurs, Nov 28 2002 11:45 pm http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071f8c9 ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UTF-8& oe=UTF-8&rnum=2 >>> So they approve that my trick is legal and is a kind of "wheel reinwention" - the difference of my "wheel" is that I do trasnslate changes to the second disconected recordset when form events fire - the disadvantage of my method is that it needs more tricky coding, which still needs to be well tested, the advantage - is that as soons as the changes on the current row are done I can serialize second disconnected recordset to xml file and in the case of client app's failure batch changes will not be lost etc. Strange that such a valuable information first time published in summer 2002 about using ADODB disconnected recordsets is so rarely discussed on Internet - everybody in this World is abandoning "MS Access toy" and switiching to .NET development? But this feature properly applied makes MS Access FEs good candidates to be used as true FEs - without any significant performance/locking hits on BEs I mean.... Shamil ----- Original Message ----- From: "Dan Waters" To: "'Access Developers discussion and problem solving'" Sent: Sunday, March 12, 2006 2:27 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > I've been reading you post with interest. Have you looked at MS KB > 281998? > This gives a method for an Access form to connect to SQL Server, Jet, and > Oracle BE's and be updateable. They identify a specific provider to do > this > that can be used to set up bound forms. > > The provider is: "Microsoft.Access.OLEDB.10.0" > > I have not tried this, but thought you might be interested. > > Dan Waters > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 5:04 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > John at all, > > I did make some more experimenting and it happens that MS Access 2003 (and > probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with > disconnected updatable ADODB recordsets with both MS Access and MS SQL > backends. > > I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access backend > and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. > > Some more testing/experimenting is needed but I did do quite some tests > and > they worked OK. > > As I wrote already this feature is new for me and a (big) surprise - this > is > a functionality I have been waiting for 8+ years since 1997 when we made > here a custom framework to work with MS Access and MS SQL in disconnected > mode, but it was rather heavyweight and because of the bugs in MS Access I > decided to not make it broadly available.... > > Basically this means that MS Access forms can be used in bound mode with > very low performance hit to the MS Access and MS SQL backends - the same > way > ADODB disconnected recordsets are used in n-tier applications. > > The programming of form's events processing is relatively simple and it > should be possible to generalize it to make a simple lightweight framework > in case back-end database(s) follow systematic naming conventions and > database models design principles. > > The "trick" is to open two ADODB recordsets: > > - one with batch update enabled > - second without batch update > > and make them disconnected. > > Then bind MS Access form to the second recordset (without batch update > enabled). > > (I did experiemnet with recordsets having several source rows as a generic > case to see are there any chances to use MS Access subforms in bound > editable mode with disconnected ADODB recordsets) > > When MS Access form fires insert, update, delete events all the changes > can > be easily translated from the second recordset (where these changes are > made > "automagically" because MS Access form is bound to it) to the first > recordset. > > On form close(or using special button) first recordset can be reconnected > to > the backend and batch update applied. (Of course in the case of special > button to apply batch changes the two disconnected recordsets have to be > resynchronized after updates). > > etc. > > Here is how "automagically" generated by ADODB batch update looks in the > case of MS SQL backend (Info obtained from MS SQL profiler, line breaks > are > inserted manually to make it readable): > > exec sp_executesql > > N'UPDATE "Northwind".."Categories" SET > "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE > "CategoryID"=@P4 > AND "CategoryName"=@P5; > > DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND > "CategoryName"=@P7; > > UPDATE "Northwind".."Categories" SET > "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE > "CategoryID"=@P11 AND "CategoryName"=@P12; > > INSERT INTO "Northwind".."Categories" > ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', > > N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 > nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 > nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', > > 99, N'CatName', N'Updated category description', > 99, N'CatName', > 66, N'DelCatName', > 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', > 662, N'newCatName', N'new Cat description' > > Live connection to the back-end is needed only on opening of the source > recordsets and on applying batch changes. Therefore connections can be > pooled/should be possible to pool (I didn't experiment here) and to share > them between several (many) front-end applications/clients if these > connections are opened using ActiveX DCOM servers running on server > PCs/.NET > Remoting(?) objects. As well as actual disconnected recordset creation and > reconnection and backend update can be executed on (Web) server side - > depending on whatever is used on backend.... > > Yes, I know dynamic SPs accessing database tables directly do not look > nice > but there could be many ways to make it working differently using > predefined > stored procedures (e.g. by serializing ADODB recordset into XML file(s) > where all the updates (inserts, deletes, updates) are coded special easily > parsed way and then reformat these XML files into the calls to the > predefined stored procedures etc.etc. > > Here is how it looks this saved XML(no direct correspondence with > presented > above batch T-SQL update) : > > - xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" > xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> > - > - > - rs:basecatalog="Northwind" rs:basetable="Categories1" > rs:basecolumn="CategoryID"> > rs:fixedlength="true" rs:maybenull="false" /> > > - rs:writeunknown="true" > rs:basecatalog="Northwind" rs:basetable="Categories1" > rs:basecolumn="CategoryName"> > > > - rs:writeunknown="true" rs:basecatalog="Northwind" > rs:basetable="Categories1" > rs:basecolumn="Description"> > > > > > > - > > > > /> > > > > > - > - > > > > > - > - > > > > > /> > - > /> > > - > > > > > > I do not post code here now because I wanted to experiment more and > because > it would be useful if somebody else tries to repeat the "trick" described > above - if it will work for them then a whole set of new opportunities to > use MS Access as a real development tool will be opened.... > > I will post code after additional tests within one-two weeks when it will > become clear that it works. > > Please post any links here if you think that my posted information looks > like "wheel reinvention" or you think it doesn't have practical > application > because of this or that several limitations etc.etc. > > Thank you. > > Shamil > > P.S. I have installed on my PC: > > - MS Windows 2003 Server SP1 > - MS Office 2003/MS Access 2003 SP1 > - MS SQL 2000 SP3a > - MDAC 2.8 > - NET Framework 1.1 and 2.0 > - Visual Studio 2003 and 2005 > - I have also MS SQL Server 2005 Express edition but I didn't experiment > with it > > P. P.S. Yes, I didn't talk about identity(autonumber) fields - I generally > use GUIDs for PKs. > To properly manage numeric identity values some more tricks are needed - > I'd > be grateful if somebody post information on this subject > (updategram/diffgram XML is a direct solution here probably - and > serialized/saved ADODB batch update can be converted into diffgrams by > using > XSLT or VB(A) or VB.NET/C#/C++ code etc.) > <<< tail skipped >>> -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Mon Mar 13 02:19:36 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Mon, 13 Mar 2006 11:19:36 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <005201c6465d$2d5cb0f0$647aa8c0@ColbyM6805> Message-ID: <007001c64676$e7975e20$6501a8c0@Nant> > Does RecordsetClone become invalid? No, it doesn't, John. But it has another name. Similar method for ADODB recordsets is called Clone. > I am looking at this now. Please do not spend a lot of time on it now or at least do not plan to broadly use it in your development until it's very well tested and its limitations are clearly defined - there are rumors this feature introduce instability in MS Access work. I have doubts in that because I haven't seen any time MS Access crashes when bound to disconnected ADODB recordsets the way I described. On the other hand I did do "fight" in my work in the past with MS Access GPFs, when listboxes/comboboxes were bound to ADODB recordsets but as far as I have found this wasn't the problem with ADODB recordsets but the problem that in that case late bound DAO or ADODB recordets were used and these latter were opened in library mdb and there was a bug when DAO recordsets were used for ADP's forms and that was the cause of the floating GPF trouble or something like that. WIth this problem fixed the applications work now well for more than a year. Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 13, 2006 8:15 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > I am looking at this now. Do you know if binding to an ADO recordset > changes > the data type of the RecordsetClone. I was under the impression that > RecordsetClone was always a DAO recordset. Does RecordsetClone become > invalid? I use RecordsetClone to perform many different operations, > including syncing the form to a combo and VV. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 7:12 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > Dan, > > Yes, I have seen that - in fact I did do google before I started my > experimenting. > In KB281998 "How to bind Microsoft Access forms to ADO recordsets" > http://support.microsoft.com/kb/281998 they talk AFAIS about binding to > connected ADODB recordsets. > > The original question (as I got it) was hwo to bind to disconnected ADODB > recordsets and then implied question is: is there a simple and generic way > to translate/transfer changes from disconnected recordset to the > backend... > > As it happens there is a trick to do that described in my previous > posting. > > I did do google now additionally and I did find that the similar trick is > described already several years ago. They do it a little bit differently > but > the principle is the same - they write: > > <<< > Now, the clever tricks: > > 1. Open a static, optimistic batch recordset, disconnect it, save it to a > simple in-memory stream object, set the stream position to zero so it can > be > read from the beginning, and open a new copy of the recordset from the > stream. Now, bind one copy to the form, and start working. When you're > ready to do a batch update, first compare the 2 recordsets for changes, > and > apply any adds, changes, and deletes to the unbound recordset, then run > BatchUpdate from the unbound recordset. Note that Access sets values of > IDENTITY columns to zero, so that's an easy way to filter for added > records. > ... >>>> > > This excerpt is from this posting (watch line wraps!): > > <<< > ADP: A2K vs 2002? > From: Steve Jorgensen > Date: Sun, Jul 21 2002 7:29 pm > > http://groups.google.com/group/comp.databases.ms-access/browse_frm/thread/17 > 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/grou > ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3Dima > ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3Den#f2 > 0d79536029060e >>>> > > And here is another related information: > > <<< > From: Steve Jorgensen > Date: Thurs, Nov 28 2002 11:45 pm > > http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071f8c9 > ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UTF-8& > oe=UTF-8&rnum=2 >>>> > > So they approve that my trick is legal and is a kind of "wheel > reinwention" > - the difference of my "wheel" is that I do trasnslate changes to the > second > disconected recordset when form events fire - the disadvantage of my > method > is that it needs more tricky coding, which still needs to be well tested, > the advantage - is that as soons as the changes on the current row are > done > I can serialize second disconnected recordset to xml file and in the case > of > client app's failure batch changes will not be lost etc. > > Strange that such a valuable information first time published in summer > 2002 > about using ADODB disconnected recordsets is so rarely discussed on > Internet > - everybody in this World is abandoning "MS Access toy" and switiching to > .NET development? > > But this feature properly applied makes MS Access FEs good candidates to > be > used as true FEs - without any significant performance/locking hits on BEs > I > mean.... > > Shamil > > ----- Original Message ----- > From: "Dan Waters" > To: "'Access Developers discussion and problem solving'" > > Sent: Sunday, March 12, 2006 2:27 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> I've been reading you post with interest. Have you looked at MS KB >> 281998? >> This gives a method for an Access form to connect to SQL Server, Jet, and >> Oracle BE's and be updateable. They identify a specific provider to do >> this >> that can be used to set up bound forms. >> >> The provider is: "Microsoft.Access.OLEDB.10.0" >> >> I have not tried this, but thought you might be interested. >> >> Dan Waters >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >> Salakhetdinov >> Sent: Saturday, March 11, 2006 5:04 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> John at all, >> >> I did make some more experimenting and it happens that MS Access 2003 >> (and >> probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with >> disconnected updatable ADODB recordsets with both MS Access and MS SQL >> backends. >> >> I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access >> backend >> and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. >> >> Some more testing/experimenting is needed but I did do quite some tests >> and >> they worked OK. >> >> As I wrote already this feature is new for me and a (big) surprise - this >> is >> a functionality I have been waiting for 8+ years since 1997 when we made >> here a custom framework to work with MS Access and MS SQL in disconnected >> mode, but it was rather heavyweight and because of the bugs in MS Access >> I >> decided to not make it broadly available.... >> >> Basically this means that MS Access forms can be used in bound mode with >> very low performance hit to the MS Access and MS SQL backends - the same >> way >> ADODB disconnected recordsets are used in n-tier applications. >> >> The programming of form's events processing is relatively simple and it >> should be possible to generalize it to make a simple lightweight >> framework >> in case back-end database(s) follow systematic naming conventions and >> database models design principles. >> >> The "trick" is to open two ADODB recordsets: >> >> - one with batch update enabled >> - second without batch update >> >> and make them disconnected. >> >> Then bind MS Access form to the second recordset (without batch update >> enabled). >> >> (I did experiemnet with recordsets having several source rows as a >> generic >> case to see are there any chances to use MS Access subforms in bound >> editable mode with disconnected ADODB recordsets) >> >> When MS Access form fires insert, update, delete events all the changes >> can >> be easily translated from the second recordset (where these changes are >> made >> "automagically" because MS Access form is bound to it) to the first >> recordset. >> >> On form close(or using special button) first recordset can be reconnected >> to >> the backend and batch update applied. (Of course in the case of special >> button to apply batch changes the two disconnected recordsets have to be >> resynchronized after updates). >> >> etc. >> >> Here is how "automagically" generated by ADODB batch update looks in the >> case of MS SQL backend (Info obtained from MS SQL profiler, line breaks >> are >> inserted manually to make it readable): >> >> exec sp_executesql >> >> N'UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE >> "CategoryID"=@P4 >> AND "CategoryName"=@P5; >> >> DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND >> "CategoryName"=@P7; >> >> UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE >> "CategoryID"=@P11 AND "CategoryName"=@P12; >> >> INSERT INTO "Northwind".."Categories" >> ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', >> >> N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 >> nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 >> nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', >> >> 99, N'CatName', N'Updated category description', >> 99, N'CatName', >> 66, N'DelCatName', >> 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', >> 662, N'newCatName', N'new Cat description' >> >> Live connection to the back-end is needed only on opening of the source >> recordsets and on applying batch changes. Therefore connections can be >> pooled/should be possible to pool (I didn't experiment here) and to share >> them between several (many) front-end applications/clients if these >> connections are opened using ActiveX DCOM servers running on server >> PCs/.NET >> Remoting(?) objects. As well as actual disconnected recordset creation >> and >> reconnection and backend update can be executed on (Web) server side - >> depending on whatever is used on backend.... >> >> Yes, I know dynamic SPs accessing database tables directly do not look >> nice >> but there could be many ways to make it working differently using >> predefined >> stored procedures (e.g. by serializing ADODB recordset into XML file(s) >> where all the updates (inserts, deletes, updates) are coded special >> easily >> parsed way and then reformat these XML files into the calls to the >> predefined stored procedures etc.etc. >> >> Here is how it looks this saved XML(no direct correspondence with >> presented >> above batch T-SQL update) : >> >> - > xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" >> xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> >> - >> - >> - > rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryID"> >> > rs:fixedlength="true" rs:maybenull="false" /> >> >> - > rs:writeunknown="true" >> rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryName"> >> >> >> - > rs:writeunknown="true" rs:basecatalog="Northwind" >> rs:basetable="Categories1" >> rs:basecolumn="Description"> >> >> >> >> >> >> - >> >> >> >> > Description="Cheeses" >> /> >> >> >> >> >> - >> - >> >> >> >> >> - >> - >> >> >> >> >> > /> >> - >> > /> >> >> - >> >> >> >> >> >> I do not post code here now because I wanted to experiment more and >> because >> it would be useful if somebody else tries to repeat the "trick" described >> above - if it will work for them then a whole set of new opportunities to >> use MS Access as a real development tool will be opened.... >> >> I will post code after additional tests within one-two weeks when it will >> become clear that it works. >> >> Please post any links here if you think that my posted information looks >> like "wheel reinvention" or you think it doesn't have practical >> application >> because of this or that several limitations etc.etc. >> >> Thank you. >> >> Shamil >> >> P.S. I have installed on my PC: >> >> - MS Windows 2003 Server SP1 >> - MS Office 2003/MS Access 2003 SP1 >> - MS SQL 2000 SP3a >> - MDAC 2.8 >> - NET Framework 1.1 and 2.0 >> - Visual Studio 2003 and 2005 >> - I have also MS SQL Server 2005 Express edition but I didn't experiment >> with it >> >> P. P.S. Yes, I didn't talk about identity(autonumber) fields - I >> generally >> use GUIDs for PKs. >> To properly manage numeric identity values some more tricks are needed - >> I'd >> be grateful if somebody post information on this subject >> (updategram/diffgram XML is a direct solution here probably - and >> serialized/saved ADODB batch update can be converted into diffgrams by >> using >> XSLT or VB(A) or VB.NET/C#/C++ code etc.) >> > > <<< tail skipped >>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From shamil at users.mns.ru Mon Mar 13 03:08:49 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Mon, 13 Mar 2006 12:08:49 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <000301c645f9$8cd4fe20$0200a8c0@danwaters> Message-ID: <00aa01c6467d$c62bbf90$6501a8c0@Nant> > I'll keep this and study it. Hi Dan, Please try to stress test it "to death" first of all because as I wrote in a posting to John here there are rumors it forces MS Access to loose stability... > Having said all that, when I go to companies and tell them that I develop > in > Access, have been doing so for eight years, and show them how my system > works, the concern over Access drops off. Good news! I thought MS Access is getting "semi-dead"... > I am looking forward to what Access 12 will have in it. I've seen some of > the descriptive material published by MS, and so far it looks great! Yes, it does look quite differently and most of the changes are mainly power users oriented AFAIS - therefore MS Access developers may expect more "messy software" to fix coming in their direction! :) Shamil ----- Original Message ----- From: "Dan Waters" To: "'Access Developers discussion and problem solving'" Sent: Sunday, March 12, 2006 8:22 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi Shamil, > > Thank you for this additional information. I've learned to read your > information as though I was a student in your class! I'll keep this and > study it. > > The fact that people are moving away from Access as a development platform > is interesting. My experience is that people in IT departments have had > bad > experiences with Access. They've repeatedly seen where someone in their > company learns how to use Access to some extent to do something that many > people like. But because that person doesn't have the ability or time to > become a real developer, the application has trouble. Then the IT > department gets told by a VP that this is a 'must have' application that > the > IT department must fix Now! So, the IT department has to fix it with > unbudgeted time and unbudgeted funds. After a few experiences like this, > IT > people tend to get leery of Access. > > However, with VB or VB.net, a person without actual training in database > development and connection between a FE and BE, can't even get started. > (I > have to admit that when I began developing in Access, I didn't understand > the concept of FE and BE either.) This makes (today) the choice of > developing significant applications using VB.net the 'safe' choice for > larger companies. > > Having said all that, when I go to companies and tell them that I develop > in > Access, have been doing so for eight years, and show them how my system > works, the concern over Access drops off. They can see for themselves > that > I can produce. I typically market to small to medium sized companies, so > that may factor in also. > > I am looking forward to what Access 12 will have in it. I've seen some of > the descriptive material published by MS, and so far it looks great! > > Dan Waters > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 6:12 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > Dan, > > Yes, I have seen that - in fact I did do google before I started my > experimenting. > In KB281998 "How to bind Microsoft Access forms to ADO recordsets" > http://support.microsoft.com/kb/281998 they talk AFAIS about binding to > connected ADODB recordsets. > > The original question (as I got it) was hwo to bind to disconnected ADODB > recordsets and then implied question is: is there a simple and generic way > to translate/transfer changes from disconnected recordset to the > backend... > > As it happens there is a trick to do that described in my previous > posting. > > I did do google now additionally and I did find that the similar trick is > described already several years ago. They do it a little bit differently > but > the principle is the same - they write: > > <<< > Now, the clever tricks: > > 1. Open a static, optimistic batch recordset, disconnect it, save it > to a simple in-memory stream object, set the stream position to zero > so it can be read from the beginning, and open a new copy of the > recordset from the stream. Now, bind one copy to the form, and start > working. When you're ready to do a batch update, first compare the 2 > recordsets for changes, and apply any adds, changes, and deletes to > the unbound recordset, then run BatchUpdate from the unbound > recordset. Note that Access sets values of IDENTITY columns to zero, > so that's an easy way to filter for added records. > ... >>>> > > This excerpt is from this posting (watch line wraps!): > > <<< > ADP: A2K vs 2002? > From: Steve Jorgensen > Date: Sun, Jul 21 2002 7:29 pm > > http://groups.google.com/group/comp.databases.ms-access/browse_frm/thread/17 > 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/grou > ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3Dima > ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3Den#f2 > 0d79536029060e >>>> > > And here is another related information: > > <<< > From: Steve Jorgensen > Date: Thurs, Nov 28 2002 11:45 pm > > http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071f8c9 > ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UTF-8& > oe=UTF-8&rnum=2 >>>> > > So they approve that my trick is legal and is a kind of "wheel > reinwention" - the difference of my "wheel" is that I do trasnslate > changes > to the second disconected recordset when form events fire - the > disadvantage > of my method is that it needs more tricky coding, which still needs to be > well tested, the advantage - is that as soons as the changes on the > current > row are done I can serialize second disconnected recordset to xml file and > in the case of client app's failure batch changes will not be lost etc. > > Strange that such a valuable information first time published in summer > 2002 > about using ADODB disconnected recordsets is so rarely discussed on > Internet - everybody in this World is abandoning "MS Access toy" and > switiching to .NET development? > > But this feature properly applied makes MS Access FEs good candidates to > be > used as true FEs - without any significant performance/locking hits on BEs > I > mean.... > > Shamil > > ----- Original Message ----- > From: "Dan Waters" > To: "'Access Developers discussion and problem solving'" > > Sent: Sunday, March 12, 2006 2:27 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> I've been reading you post with interest. Have you looked at MS KB >> 281998? >> This gives a method for an Access form to connect to SQL Server, Jet, and >> Oracle BE's and be updateable. They identify a specific provider to do >> this >> that can be used to set up bound forms. >> >> The provider is: "Microsoft.Access.OLEDB.10.0" >> >> I have not tried this, but thought you might be interested. >> >> Dan Waters >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >> Salakhetdinov >> Sent: Saturday, March 11, 2006 5:04 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> John at all, >> >> I did make some more experimenting and it happens that MS Access 2003 >> (and >> probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with >> disconnected updatable ADODB recordsets with both MS Access and MS SQL >> backends. >> >> I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access >> backend >> and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. >> >> Some more testing/experimenting is needed but I did do quite some tests >> and >> they worked OK. >> >> As I wrote already this feature is new for me and a (big) surprise - this >> is >> a functionality I have been waiting for 8+ years since 1997 when we made >> here a custom framework to work with MS Access and MS SQL in disconnected >> mode, but it was rather heavyweight and because of the bugs in MS Access >> I >> decided to not make it broadly available.... >> >> Basically this means that MS Access forms can be used in bound mode with >> very low performance hit to the MS Access and MS SQL backends - the same >> way >> ADODB disconnected recordsets are used in n-tier applications. >> >> The programming of form's events processing is relatively simple and it >> should be possible to generalize it to make a simple lightweight >> framework >> in case back-end database(s) follow systematic naming conventions and >> database models design principles. >> >> The "trick" is to open two ADODB recordsets: >> >> - one with batch update enabled >> - second without batch update >> >> and make them disconnected. >> >> Then bind MS Access form to the second recordset (without batch update >> enabled). >> >> (I did experiemnet with recordsets having several source rows as a >> generic >> case to see are there any chances to use MS Access subforms in bound >> editable mode with disconnected ADODB recordsets) >> >> When MS Access form fires insert, update, delete events all the changes >> can >> be easily translated from the second recordset (where these changes are >> made >> "automagically" because MS Access form is bound to it) to the first >> recordset. >> >> On form close(or using special button) first recordset can be reconnected >> to >> the backend and batch update applied. (Of course in the case of special >> button to apply batch changes the two disconnected recordsets have to be >> resynchronized after updates). >> >> etc. >> >> Here is how "automagically" generated by ADODB batch update looks in the >> case of MS SQL backend (Info obtained from MS SQL profiler, line breaks >> are >> inserted manually to make it readable): >> >> exec sp_executesql >> >> N'UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE >> "CategoryID"=@P4 >> AND "CategoryName"=@P5; >> >> DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND >> "CategoryName"=@P7; >> >> UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE >> "CategoryID"=@P11 AND "CategoryName"=@P12; >> >> INSERT INTO "Northwind".."Categories" >> ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', >> >> N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 >> nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 >> nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', >> >> 99, N'CatName', N'Updated category description', >> 99, N'CatName', >> 66, N'DelCatName', >> 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', >> 662, N'newCatName', N'new Cat description' >> >> Live connection to the back-end is needed only on opening of the source >> recordsets and on applying batch changes. Therefore connections can be >> pooled/should be possible to pool (I didn't experiment here) and to share >> them between several (many) front-end applications/clients if these >> connections are opened using ActiveX DCOM servers running on server >> PCs/.NET >> Remoting(?) objects. As well as actual disconnected recordset creation >> and >> reconnection and backend update can be executed on (Web) server side - >> depending on whatever is used on backend.... >> >> Yes, I know dynamic SPs accessing database tables directly do not look >> nice >> but there could be many ways to make it working differently using >> predefined >> stored procedures (e.g. by serializing ADODB recordset into XML file(s) >> where all the updates (inserts, deletes, updates) are coded special >> easily >> parsed way and then reformat these XML files into the calls to the >> predefined stored procedures etc.etc. >> >> Here is how it looks this saved XML(no direct correspondence with >> presented >> above batch T-SQL update) : >> >> - > xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" >> xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> >> - >> - >> - > rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryID"> >> > rs:fixedlength="true" rs:maybenull="false" /> >> >> - > rs:writeunknown="true" >> rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryName"> >> >> >> - > rs:writeunknown="true" rs:basecatalog="Northwind" >> rs:basetable="Categories1" >> rs:basecolumn="Description"> >> >> >> >> >> >> - >> >> >> >> > Description="Cheeses" >> /> >> >> >> >> >> - >> - >> >> >> >> >> - >> - >> >> >> >> >> > /> >> - >> > /> >> >> - >> >> >> >> >> >> I do not post code here now because I wanted to experiment more and >> because >> it would be useful if somebody else tries to repeat the "trick" described >> above - if it will work for them then a whole set of new opportunities to >> use MS Access as a real development tool will be opened.... >> >> I will post code after additional tests within one-two weeks when it will >> become clear that it works. >> >> Please post any links here if you think that my posted information looks >> like "wheel reinvention" or you think it doesn't have practical >> application >> because of this or that several limitations etc.etc. >> >> Thank you. >> >> Shamil >> >> P.S. I have installed on my PC: >> >> - MS Windows 2003 Server SP1 >> - MS Office 2003/MS Access 2003 SP1 >> - MS SQL 2000 SP3a >> - MDAC 2.8 >> - NET Framework 1.1 and 2.0 >> - Visual Studio 2003 and 2005 >> - I have also MS SQL Server 2005 Express edition but I didn't experiment >> with it >> >> P. P.S. Yes, I didn't talk about identity(autonumber) fields - I >> generally >> use GUIDs for PKs. >> To properly manage numeric identity values some more tricks are needed - >> I'd >> be grateful if somebody post information on this subject >> (updategram/diffgram XML is a direct solution here probably - and >> serialized/saved ADODB batch update can be converted into diffgrams by >> using >> XSLT or VB(A) or VB.NET/C#/C++ code etc.) >> > > <<< tail skipped >>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From shamil at users.mns.ru Mon Mar 13 03:55:03 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Mon, 13 Mar 2006 12:55:03 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <000301c645f9$8cd4fe20$0200a8c0@danwaters> <00aa01c6467d$c62bbf90$6501a8c0@Nant> Message-ID: <003401c64684$54da0700$6501a8c0@Nant> Hi All, I did contact Steve Jorgensen on the subject - here are his answers reposted here with his permission: <+++++++++++++++++++++++++++++++++++++++++++++++++ > I wanted to ask you: Did you broadly use this method in real life > development since the summer 2002? Was it a success story or it > happened to > have side-effects, which can't be effectively worked around? Alas, over time I've found that using Access with disconencted recordsets is simply too unreliable to use. It can seem to work for a short time, but almost anything you try do to the recordset from code after creating it will cause Access to crash shortly after the recordset is bound to the form. Even without touching the recorodset from code, Access frequently crashes. I've given up on the technique as a practical tool. > May I post this your information in AccessD discussion list? > Do you have a sample app, which shows how MS Access crashes with forms > bound to disconnected recordsets? Yes - of course you may re-post it. As for an example app, no I don't have one at hand as all the code I wrote to do this has long since been discarded. I can tell you, however, that I had the problems with both Access 2002 and 2003, and they were serious. Access 2000 actually was more reliable, but that's becoming an antique and has other reliability issues in client/server applications. ++++++++++++++++++++++++++++++++++++++++++++++++++++> This is a serious warning to not use this technique in real life applications. But as I wrote recently I so far didn't see any MS Access crashes while using MS Access 2003 forms bound to ADODB recordsets. I will try to find time to prepare stress test and to run it for several hours... Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Monday, March 13, 2006 12:08 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> I'll keep this and study it. > Hi Dan, > > Please try to stress test it "to death" first of all because as I wrote in > a > posting to John here there are rumors it forces MS Access to loose > stability... > >> Having said all that, when I go to companies and tell them that I develop >> in >> Access, have been doing so for eight years, and show them how my system >> works, the concern over Access drops off. > Good news! I thought MS Access is getting "semi-dead"... > >> I am looking forward to what Access 12 will have in it. I've seen some >> of >> the descriptive material published by MS, and so far it looks great! > Yes, it does look quite differently and most of the changes are mainly > power > users oriented AFAIS - therefore MS Access developers may expect more > "messy > software" to fix coming in their direction! :) > > Shamil > <<< tail skipped >>> From jwcolby at ColbyConsulting.com Mon Mar 13 06:43:04 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Mon, 13 Mar 2006 07:43:04 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <007001c64676$e7975e20$6501a8c0@Nant> Message-ID: <005601c6469b$ad1ef440$647aa8c0@ColbyM6805> What I am asking though is whether RecordsetClone still exists, and is somehow populated from whatever data source the form is bound to? After binding to an ADO recordset, attempts to access RecordsetClone throw an error "Type mismatch" on the line of code Set mrst = mfrm.RecordsetClone Mrst is defined in the class header as a DAO recordset. I might be able to get away with generalizing mrst to an object. NOTE: I tried that, and while the "Set" now works, the objects have different methods so any code using the object has to have different code paths written. So apparently RecordsetClone is indeed initialized as an ADO recordset which makes all of my DAO specific code (FindFirst for example) throw a runtime error if encountered. If I am going to do this, I will need to branch my code based on the Access Version as well as whether I actually used the ADO recordset code. >Please do not spend a lot of time on it now or at least do not plan to broadly use it in your development until Luckily, in my framework, I can turn on and off capabilities by examining SysVars. It does sound like the instability objections were from an early adopter. Like most things in Software, trying to use any specific feature in Access in the early stages of its introduction can be risky. It is possible (and hopefully true) that they found and fixed the bugs causing such instability. One of the problems with influential early adopters is that people read their warnings and never use a feature because they reported it unstable. If they never go back to revisit it, then it is forever labeled unstable. Perhaps it is time for other influentials (you and I and this list) to revisit this feature and see if it can be used now? John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Monday, March 13, 2006 3:20 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Does RecordsetClone become invalid? No, it doesn't, John. But it has another name. Similar method for ADODB recordsets is called Clone. > I am looking at this now. Please do not spend a lot of time on it now or at least do not plan to broadly use it in your development until it's very well tested and its limitations are clearly defined - there are rumors this feature introduce instability in MS Access work. I have doubts in that because I haven't seen any time MS Access crashes when bound to disconnected ADODB recordsets the way I described. On the other hand I did do "fight" in my work in the past with MS Access GPFs, when listboxes/comboboxes were bound to ADODB recordsets but as far as I have found this wasn't the problem with ADODB recordsets but the problem that in that case late bound DAO or ADODB recordets were used and these latter were opened in library mdb and there was a bug when DAO recordsets were used for ADP's forms and that was the cause of the floating GPF trouble or something like that. WIth this problem fixed the applications work now well for more than a year. Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 13, 2006 8:15 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > I am looking at this now. Do you know if binding to an ADO recordset > changes > the data type of the RecordsetClone. I was under the impression that > RecordsetClone was always a DAO recordset. Does RecordsetClone become > invalid? I use RecordsetClone to perform many different operations, > including syncing the form to a combo and VV. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 7:12 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > Dan, > > Yes, I have seen that - in fact I did do google before I started my > experimenting. > In KB281998 "How to bind Microsoft Access forms to ADO recordsets" > http://support.microsoft.com/kb/281998 they talk AFAIS about binding to > connected ADODB recordsets. > > The original question (as I got it) was hwo to bind to disconnected ADODB > recordsets and then implied question is: is there a simple and generic way > to translate/transfer changes from disconnected recordset to the > backend... > > As it happens there is a trick to do that described in my previous > posting. > > I did do google now additionally and I did find that the similar trick is > described already several years ago. They do it a little bit differently > but > the principle is the same - they write: > > <<< > Now, the clever tricks: > > 1. Open a static, optimistic batch recordset, disconnect it, save it to a > simple in-memory stream object, set the stream position to zero so it can > be > read from the beginning, and open a new copy of the recordset from the > stream. Now, bind one copy to the form, and start working. When you're > ready to do a batch update, first compare the 2 recordsets for changes, > and > apply any adds, changes, and deletes to the unbound recordset, then run > BatchUpdate from the unbound recordset. Note that Access sets values of > IDENTITY columns to zero, so that's an easy way to filter for added > records. > ... >>>> > > This excerpt is from this posting (watch line wraps!): > > <<< > ADP: A2K vs 2002? > From: Steve Jorgensen > Date: Sun, Jul 21 2002 7:29 pm > > http://groups.google.com/group/comp.databases.ms-access/browse_frm/thread/17 > 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/grou > ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3Dima > ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3Den#f2 > 0d79536029060e >>>> > > And here is another related information: > > <<< > From: Steve Jorgensen > Date: Thurs, Nov 28 2002 11:45 pm > > http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071f8c9 > ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UTF-8& > oe=UTF-8&rnum=2 >>>> > > So they approve that my trick is legal and is a kind of "wheel > reinwention" > - the difference of my "wheel" is that I do trasnslate changes to the > second > disconected recordset when form events fire - the disadvantage of my > method > is that it needs more tricky coding, which still needs to be well tested, > the advantage - is that as soons as the changes on the current row are > done > I can serialize second disconnected recordset to xml file and in the case > of > client app's failure batch changes will not be lost etc. > > Strange that such a valuable information first time published in summer > 2002 > about using ADODB disconnected recordsets is so rarely discussed on > Internet > - everybody in this World is abandoning "MS Access toy" and switiching to > .NET development? > > But this feature properly applied makes MS Access FEs good candidates to > be > used as true FEs - without any significant performance/locking hits on BEs > I > mean.... > > Shamil > > ----- Original Message ----- > From: "Dan Waters" > To: "'Access Developers discussion and problem solving'" > > Sent: Sunday, March 12, 2006 2:27 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> I've been reading you post with interest. Have you looked at MS KB >> 281998? >> This gives a method for an Access form to connect to SQL Server, Jet, and >> Oracle BE's and be updateable. They identify a specific provider to do >> this >> that can be used to set up bound forms. >> >> The provider is: "Microsoft.Access.OLEDB.10.0" >> >> I have not tried this, but thought you might be interested. >> >> Dan Waters >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >> Salakhetdinov >> Sent: Saturday, March 11, 2006 5:04 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> John at all, >> >> I did make some more experimenting and it happens that MS Access 2003 >> (and >> probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with >> disconnected updatable ADODB recordsets with both MS Access and MS SQL >> backends. >> >> I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access >> backend >> and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. >> >> Some more testing/experimenting is needed but I did do quite some tests >> and >> they worked OK. >> >> As I wrote already this feature is new for me and a (big) surprise - this >> is >> a functionality I have been waiting for 8+ years since 1997 when we made >> here a custom framework to work with MS Access and MS SQL in disconnected >> mode, but it was rather heavyweight and because of the bugs in MS Access >> I >> decided to not make it broadly available.... >> >> Basically this means that MS Access forms can be used in bound mode with >> very low performance hit to the MS Access and MS SQL backends - the same >> way >> ADODB disconnected recordsets are used in n-tier applications. >> >> The programming of form's events processing is relatively simple and it >> should be possible to generalize it to make a simple lightweight >> framework >> in case back-end database(s) follow systematic naming conventions and >> database models design principles. >> >> The "trick" is to open two ADODB recordsets: >> >> - one with batch update enabled >> - second without batch update >> >> and make them disconnected. >> >> Then bind MS Access form to the second recordset (without batch update >> enabled). >> >> (I did experiemnet with recordsets having several source rows as a >> generic >> case to see are there any chances to use MS Access subforms in bound >> editable mode with disconnected ADODB recordsets) >> >> When MS Access form fires insert, update, delete events all the changes >> can >> be easily translated from the second recordset (where these changes are >> made >> "automagically" because MS Access form is bound to it) to the first >> recordset. >> >> On form close(or using special button) first recordset can be reconnected >> to >> the backend and batch update applied. (Of course in the case of special >> button to apply batch changes the two disconnected recordsets have to be >> resynchronized after updates). >> >> etc. >> >> Here is how "automagically" generated by ADODB batch update looks in the >> case of MS SQL backend (Info obtained from MS SQL profiler, line breaks >> are >> inserted manually to make it readable): >> >> exec sp_executesql >> >> N'UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE >> "CategoryID"=@P4 >> AND "CategoryName"=@P5; >> >> DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND >> "CategoryName"=@P7; >> >> UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE >> "CategoryID"=@P11 AND "CategoryName"=@P12; >> >> INSERT INTO "Northwind".."Categories" >> ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', >> >> N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 >> nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 >> nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', >> >> 99, N'CatName', N'Updated category description', >> 99, N'CatName', >> 66, N'DelCatName', >> 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', >> 662, N'newCatName', N'new Cat description' >> >> Live connection to the back-end is needed only on opening of the source >> recordsets and on applying batch changes. Therefore connections can be >> pooled/should be possible to pool (I didn't experiment here) and to share >> them between several (many) front-end applications/clients if these >> connections are opened using ActiveX DCOM servers running on server >> PCs/.NET >> Remoting(?) objects. As well as actual disconnected recordset creation >> and >> reconnection and backend update can be executed on (Web) server side - >> depending on whatever is used on backend.... >> >> Yes, I know dynamic SPs accessing database tables directly do not look >> nice >> but there could be many ways to make it working differently using >> predefined >> stored procedures (e.g. by serializing ADODB recordset into XML file(s) >> where all the updates (inserts, deletes, updates) are coded special >> easily >> parsed way and then reformat these XML files into the calls to the >> predefined stored procedures etc.etc. >> >> Here is how it looks this saved XML(no direct correspondence with >> presented >> above batch T-SQL update) : >> >> - > xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" >> xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> >> - >> - >> - > rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryID"> >> > rs:fixedlength="true" rs:maybenull="false" /> >> >> - > rs:writeunknown="true" >> rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryName"> >> >> >> - > rs:writeunknown="true" rs:basecatalog="Northwind" >> rs:basetable="Categories1" >> rs:basecolumn="Description"> >> >> >> >> >> >> - >> >> >> >> > Description="Cheeses" >> /> >> >> >> >> >> - >> - >> >> >> >> >> - >> - >> >> >> >> >> > /> >> - >> > /> >> >> - >> >> >> >> >> >> I do not post code here now because I wanted to experiment more and >> because >> it would be useful if somebody else tries to repeat the "trick" described >> above - if it will work for them then a whole set of new opportunities to >> use MS Access as a real development tool will be opened.... >> >> I will post code after additional tests within one-two weeks when it will >> become clear that it works. >> >> Please post any links here if you think that my posted information looks >> like "wheel reinvention" or you think it doesn't have practical >> application >> because of this or that several limitations etc.etc. >> >> Thank you. >> >> Shamil >> >> P.S. I have installed on my PC: >> >> - MS Windows 2003 Server SP1 >> - MS Office 2003/MS Access 2003 SP1 >> - MS SQL 2000 SP3a >> - MDAC 2.8 >> - NET Framework 1.1 and 2.0 >> - Visual Studio 2003 and 2005 >> - I have also MS SQL Server 2005 Express edition but I didn't experiment >> with it >> >> P. P.S. Yes, I didn't talk about identity(autonumber) fields - I >> generally >> use GUIDs for PKs. >> To properly manage numeric identity values some more tricks are needed - >> I'd >> be grateful if somebody post information on this subject >> (updategram/diffgram XML is a direct solution here probably - and >> serialized/saved ADODB batch update can be converted into diffgrams by >> using >> XSLT or VB(A) or VB.NET/C#/C++ code etc.) >> > > <<< tail skipped >>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Mon Mar 13 07:48:02 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Mon, 13 Mar 2006 08:48:02 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <007001c64676$e7975e20$6501a8c0@Nant> Message-ID: <005701c646a4$c0743560$647aa8c0@ColbyM6805> >Please do not spend a lot of time on it now or at least do not plan to broadly use it I have one specific place that I want to use this, the form that is causing locking issues at Invo Health Care. Given the size of the issue there, they would be a perfect test site for this. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Monday, March 13, 2006 3:20 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Does RecordsetClone become invalid? No, it doesn't, John. But it has another name. Similar method for ADODB recordsets is called Clone. > I am looking at this now. Please do not spend a lot of time on it now or at least do not plan to broadly use it in your development until it's very well tested and its limitations are clearly defined - there are rumors this feature introduce instability in MS Access work. I have doubts in that because I haven't seen any time MS Access crashes when bound to disconnected ADODB recordsets the way I described. On the other hand I did do "fight" in my work in the past with MS Access GPFs, when listboxes/comboboxes were bound to ADODB recordsets but as far as I have found this wasn't the problem with ADODB recordsets but the problem that in that case late bound DAO or ADODB recordets were used and these latter were opened in library mdb and there was a bug when DAO recordsets were used for ADP's forms and that was the cause of the floating GPF trouble or something like that. WIth this problem fixed the applications work now well for more than a year. Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 13, 2006 8:15 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > I am looking at this now. Do you know if binding to an ADO recordset > changes > the data type of the RecordsetClone. I was under the impression that > RecordsetClone was always a DAO recordset. Does RecordsetClone become > invalid? I use RecordsetClone to perform many different operations, > including syncing the form to a combo and VV. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 7:12 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > Dan, > > Yes, I have seen that - in fact I did do google before I started my > experimenting. > In KB281998 "How to bind Microsoft Access forms to ADO recordsets" > http://support.microsoft.com/kb/281998 they talk AFAIS about binding to > connected ADODB recordsets. > > The original question (as I got it) was hwo to bind to disconnected ADODB > recordsets and then implied question is: is there a simple and generic way > to translate/transfer changes from disconnected recordset to the > backend... > > As it happens there is a trick to do that described in my previous > posting. > > I did do google now additionally and I did find that the similar trick is > described already several years ago. They do it a little bit differently > but > the principle is the same - they write: > > <<< > Now, the clever tricks: > > 1. Open a static, optimistic batch recordset, disconnect it, save it to a > simple in-memory stream object, set the stream position to zero so it can > be > read from the beginning, and open a new copy of the recordset from the > stream. Now, bind one copy to the form, and start working. When you're > ready to do a batch update, first compare the 2 recordsets for changes, > and > apply any adds, changes, and deletes to the unbound recordset, then run > BatchUpdate from the unbound recordset. Note that Access sets values of > IDENTITY columns to zero, so that's an easy way to filter for added > records. > ... >>>> > > This excerpt is from this posting (watch line wraps!): > > <<< > ADP: A2K vs 2002? > From: Steve Jorgensen > Date: Sun, Jul 21 2002 7:29 pm > > http://groups.google.com/group/comp.databases.ms-access/browse_frm/thread/17 > 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/grou > ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3Dima > ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3Den#f2 > 0d79536029060e >>>> > > And here is another related information: > > <<< > From: Steve Jorgensen > Date: Thurs, Nov 28 2002 11:45 pm > > http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071f8c9 > ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UTF-8& > oe=UTF-8&rnum=2 >>>> > > So they approve that my trick is legal and is a kind of "wheel > reinwention" > - the difference of my "wheel" is that I do trasnslate changes to the > second > disconected recordset when form events fire - the disadvantage of my > method > is that it needs more tricky coding, which still needs to be well tested, > the advantage - is that as soons as the changes on the current row are > done > I can serialize second disconnected recordset to xml file and in the case > of > client app's failure batch changes will not be lost etc. > > Strange that such a valuable information first time published in summer > 2002 > about using ADODB disconnected recordsets is so rarely discussed on > Internet > - everybody in this World is abandoning "MS Access toy" and switiching to > .NET development? > > But this feature properly applied makes MS Access FEs good candidates to > be > used as true FEs - without any significant performance/locking hits on BEs > I > mean.... > > Shamil > > ----- Original Message ----- > From: "Dan Waters" > To: "'Access Developers discussion and problem solving'" > > Sent: Sunday, March 12, 2006 2:27 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> I've been reading you post with interest. Have you looked at MS KB >> 281998? >> This gives a method for an Access form to connect to SQL Server, Jet, and >> Oracle BE's and be updateable. They identify a specific provider to do >> this >> that can be used to set up bound forms. >> >> The provider is: "Microsoft.Access.OLEDB.10.0" >> >> I have not tried this, but thought you might be interested. >> >> Dan Waters >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >> Salakhetdinov >> Sent: Saturday, March 11, 2006 5:04 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> John at all, >> >> I did make some more experimenting and it happens that MS Access 2003 >> (and >> probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with >> disconnected updatable ADODB recordsets with both MS Access and MS SQL >> backends. >> >> I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access >> backend >> and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. >> >> Some more testing/experimenting is needed but I did do quite some tests >> and >> they worked OK. >> >> As I wrote already this feature is new for me and a (big) surprise - this >> is >> a functionality I have been waiting for 8+ years since 1997 when we made >> here a custom framework to work with MS Access and MS SQL in disconnected >> mode, but it was rather heavyweight and because of the bugs in MS Access >> I >> decided to not make it broadly available.... >> >> Basically this means that MS Access forms can be used in bound mode with >> very low performance hit to the MS Access and MS SQL backends - the same >> way >> ADODB disconnected recordsets are used in n-tier applications. >> >> The programming of form's events processing is relatively simple and it >> should be possible to generalize it to make a simple lightweight >> framework >> in case back-end database(s) follow systematic naming conventions and >> database models design principles. >> >> The "trick" is to open two ADODB recordsets: >> >> - one with batch update enabled >> - second without batch update >> >> and make them disconnected. >> >> Then bind MS Access form to the second recordset (without batch update >> enabled). >> >> (I did experiemnet with recordsets having several source rows as a >> generic >> case to see are there any chances to use MS Access subforms in bound >> editable mode with disconnected ADODB recordsets) >> >> When MS Access form fires insert, update, delete events all the changes >> can >> be easily translated from the second recordset (where these changes are >> made >> "automagically" because MS Access form is bound to it) to the first >> recordset. >> >> On form close(or using special button) first recordset can be reconnected >> to >> the backend and batch update applied. (Of course in the case of special >> button to apply batch changes the two disconnected recordsets have to be >> resynchronized after updates). >> >> etc. >> >> Here is how "automagically" generated by ADODB batch update looks in the >> case of MS SQL backend (Info obtained from MS SQL profiler, line breaks >> are >> inserted manually to make it readable): >> >> exec sp_executesql >> >> N'UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE >> "CategoryID"=@P4 >> AND "CategoryName"=@P5; >> >> DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND >> "CategoryName"=@P7; >> >> UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE >> "CategoryID"=@P11 AND "CategoryName"=@P12; >> >> INSERT INTO "Northwind".."Categories" >> ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', >> >> N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 >> nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 >> nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', >> >> 99, N'CatName', N'Updated category description', >> 99, N'CatName', >> 66, N'DelCatName', >> 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', >> 662, N'newCatName', N'new Cat description' >> >> Live connection to the back-end is needed only on opening of the source >> recordsets and on applying batch changes. Therefore connections can be >> pooled/should be possible to pool (I didn't experiment here) and to share >> them between several (many) front-end applications/clients if these >> connections are opened using ActiveX DCOM servers running on server >> PCs/.NET >> Remoting(?) objects. As well as actual disconnected recordset creation >> and >> reconnection and backend update can be executed on (Web) server side - >> depending on whatever is used on backend.... >> >> Yes, I know dynamic SPs accessing database tables directly do not look >> nice >> but there could be many ways to make it working differently using >> predefined >> stored procedures (e.g. by serializing ADODB recordset into XML file(s) >> where all the updates (inserts, deletes, updates) are coded special >> easily >> parsed way and then reformat these XML files into the calls to the >> predefined stored procedures etc.etc. >> >> Here is how it looks this saved XML(no direct correspondence with >> presented >> above batch T-SQL update) : >> >> - > xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" >> xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> >> - >> - >> - > rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryID"> >> > rs:fixedlength="true" rs:maybenull="false" /> >> >> - > rs:writeunknown="true" >> rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryName"> >> >> >> - > rs:writeunknown="true" rs:basecatalog="Northwind" >> rs:basetable="Categories1" >> rs:basecolumn="Description"> >> >> >> >> >> >> - >> >> >> >> > Description="Cheeses" >> /> >> >> >> >> >> - >> - >> >> >> >> >> - >> - >> >> >> >> >> > /> >> - >> > /> >> >> - >> >> >> >> >> >> I do not post code here now because I wanted to experiment more and >> because >> it would be useful if somebody else tries to repeat the "trick" described >> above - if it will work for them then a whole set of new opportunities to >> use MS Access as a real development tool will be opened.... >> >> I will post code after additional tests within one-two weeks when it will >> become clear that it works. >> >> Please post any links here if you think that my posted information looks >> like "wheel reinvention" or you think it doesn't have practical >> application >> because of this or that several limitations etc.etc. >> >> Thank you. >> >> Shamil >> >> P.S. I have installed on my PC: >> >> - MS Windows 2003 Server SP1 >> - MS Office 2003/MS Access 2003 SP1 >> - MS SQL 2000 SP3a >> - MDAC 2.8 >> - NET Framework 1.1 and 2.0 >> - Visual Studio 2003 and 2005 >> - I have also MS SQL Server 2005 Express edition but I didn't experiment >> with it >> >> P. P.S. Yes, I didn't talk about identity(autonumber) fields - I >> generally >> use GUIDs for PKs. >> To properly manage numeric identity values some more tricks are needed - >> I'd >> be grateful if somebody post information on this subject >> (updategram/diffgram XML is a direct solution here probably - and >> serialized/saved ADODB batch update can be converted into diffgrams by >> using >> XSLT or VB(A) or VB.NET/C#/C++ code etc.) >> > > <<< tail skipped >>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Mon Mar 13 08:05:33 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Mon, 13 Mar 2006 15:05:33 +0100 Subject: [AccessD] OpenSchema syntax Message-ID: Hi Susan But that _is_ for a specific table: Shippers. In general: Public Sub GetTablesFields() Dim cnn As ADODB.Connection Dim rstTbl As ADODB.Recordset Dim rstCol As ADODB.Recordset Set cnn = CurrentProject.Connection Set rstTbl = cnn.OpenSchema(adSchemaTables, Array(Empty, Empty, Empty, "Table")) ' List tables. With rstTbl Do While Not .EOF = True Debug.Print .Fields(2).Value Set rstCol = cnn.OpenSchema(adSchemaColumns, Array(Empty, Empty, CStr(.Fields(2).Value))) ' List fields of table. With rstCol Do While Not .EOF = True Debug.Print vbTab & .Fields(3).Value .MoveNext Loop .Close End With .MoveNext Loop .Close End With If rstCol.State = adStateOpen Then rstCol.Close End If If rstTbl.State = adStateOpen Then rstTbl.Close End If If cnn.State = adStateOpen Then cnn.Close End If Set rstCol = Nothing Set rstTbl = Nothing Set cnn = Nothing End Sub /gustav >>> harkinsss at bellsouth.net 13-03-2006 02:26 >>> Set rst = CurrentProject.Connection.OpenSchema(adSchemaColumns, Array(Empty, Empty, Empty, "Shippers")) I can't remember the exact syntax for filtering a schema recordset to a specific table -- anyone remember which array element I'm supposed to use. I've moved the table name around, but I either get an error or an empty recordset. Susan H. From shamil at users.mns.ru Mon Mar 13 08:59:45 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Mon, 13 Mar 2006 17:59:45 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <005701c646a4$c0743560$647aa8c0@ColbyM6805> Message-ID: <001901c646ae$ca85ad90$6501a8c0@Nant> > Given the size of the issue there, they > would be a perfect test site for this. OK, I will publish the code and the crash test tomorrow and then it can be reused I think for your real application. Best regards, Shamil -- Web: http://smsconsulting.spb.ru/shamil_s ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 13, 2006 4:48 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > >Please do not spend a lot of time on it now or at least do not plan to > broadly use it > > I have one specific place that I want to use this, the form that is > causing > locking issues at Invo Health Care. Given the size of the issue there, > they > would be a perfect test site for this. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Monday, March 13, 2006 3:20 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > >> Does RecordsetClone become invalid? > No, it doesn't, John. > But it has another name. > Similar method for ADODB recordsets is called Clone. > >> I am looking at this now. > Please do not spend a lot of time on it now or at least do not plan to > broadly use it in your development until it's very well tested and its > limitations are clearly defined - there are rumors this feature introduce > instability in MS Access work. I have doubts in that because I haven't > seen > any time MS Access crashes when bound to disconnected ADODB recordsets the > way I described. > > On the other hand I did do "fight" in my work in the past with MS Access > GPFs, when listboxes/comboboxes were bound to ADODB recordsets but as far > as > I have found this wasn't the problem with ADODB recordsets but the problem > that in that case late bound DAO or ADODB recordets were used and these > latter were opened in library mdb and there was a bug when DAO recordsets > were used for ADP's forms and that was the cause of the floating GPF > trouble > or something like that. WIth this problem fixed the applications work now > well for more than a year. > > Shamil > > ----- Original Message ----- > From: "John Colby" > To: "'Access Developers discussion and problem solving'" > > Sent: Monday, March 13, 2006 8:15 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> I am looking at this now. Do you know if binding to an ADO recordset >> changes >> the data type of the RecordsetClone. I was under the impression that >> RecordsetClone was always a DAO recordset. Does RecordsetClone become >> invalid? I use RecordsetClone to perform many different operations, >> including syncing the form to a combo and VV. >> >> >> John W. Colby >> www.ColbyConsulting.com >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >> Salakhetdinov >> Sent: Saturday, March 11, 2006 7:12 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> Dan, >> >> Yes, I have seen that - in fact I did do google before I started my >> experimenting. >> In KB281998 "How to bind Microsoft Access forms to ADO recordsets" >> http://support.microsoft.com/kb/281998 they talk AFAIS about binding to >> connected ADODB recordsets. >> >> The original question (as I got it) was hwo to bind to disconnected ADODB >> recordsets and then implied question is: is there a simple and generic >> way >> to translate/transfer changes from disconnected recordset to the >> backend... >> >> As it happens there is a trick to do that described in my previous >> posting. >> >> I did do google now additionally and I did find that the similar trick is >> described already several years ago. They do it a little bit differently >> but >> the principle is the same - they write: >> >> <<< >> Now, the clever tricks: >> >> 1. Open a static, optimistic batch recordset, disconnect it, save it to >> a >> simple in-memory stream object, set the stream position to zero so it can >> be >> read from the beginning, and open a new copy of the recordset from the >> stream. Now, bind one copy to the form, and start working. When you're >> ready to do a batch update, first compare the 2 recordsets for changes, >> and >> apply any adds, changes, and deletes to the unbound recordset, then run >> BatchUpdate from the unbound recordset. Note that Access sets values of >> IDENTITY columns to zero, so that's an easy way to filter for added >> records. >> ... >>>>> >> >> This excerpt is from this posting (watch line wraps!): >> >> <<< >> ADP: A2K vs 2002? >> From: Steve Jorgensen >> Date: Sun, Jul 21 2002 7:29 pm >> >> > http://groups.google.com/group/comp.databases.ms-access/browse_frm/thread/17 >> > 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/grou >> > ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3Dima >> > ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3Den#f2 >> 0d79536029060e >>>>> >> >> And here is another related information: >> >> <<< >> From: Steve Jorgensen >> Date: Thurs, Nov 28 2002 11:45 pm >> >> > http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071f8c9 >> > ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UTF-8& >> oe=UTF-8&rnum=2 >>>>> >> >> So they approve that my trick is legal and is a kind of "wheel >> reinwention" >> - the difference of my "wheel" is that I do trasnslate changes to the >> second >> disconected recordset when form events fire - the disadvantage of my >> method >> is that it needs more tricky coding, which still needs to be well tested, >> the advantage - is that as soons as the changes on the current row are >> done >> I can serialize second disconnected recordset to xml file and in the case >> of >> client app's failure batch changes will not be lost etc. >> >> Strange that such a valuable information first time published in summer >> 2002 >> about using ADODB disconnected recordsets is so rarely discussed on >> Internet >> - everybody in this World is abandoning "MS Access toy" and switiching to >> .NET development? >> >> But this feature properly applied makes MS Access FEs good candidates to >> be >> used as true FEs - without any significant performance/locking hits on >> BEs > >> I >> mean.... >> >> Shamil >> >> ----- Original Message ----- >> From: "Dan Waters" >> To: "'Access Developers discussion and problem solving'" >> >> Sent: Sunday, March 12, 2006 2:27 AM >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> >>> Shamil, >>> >>> I've been reading you post with interest. Have you looked at MS KB >>> 281998? >>> This gives a method for an Access form to connect to SQL Server, Jet, >>> and >>> Oracle BE's and be updateable. They identify a specific provider to do >>> this >>> that can be used to set up bound forms. >>> >>> The provider is: "Microsoft.Access.OLEDB.10.0" >>> >>> I have not tried this, but thought you might be interested. >>> >>> Dan Waters >>> >>> >>> -----Original Message----- >>> From: accessd-bounces at databaseadvisors.com >>> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >>> Salakhetdinov >>> Sent: Saturday, March 11, 2006 5:04 PM >>> To: Access Developers discussion and problem solving >>> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >>> >>> John at all, >>> >>> I did make some more experimenting and it happens that MS Access 2003 >>> (and >>> probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with >>> disconnected updatable ADODB recordsets with both MS Access and MS SQL >>> backends. >>> >>> I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access >>> backend >>> and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. >>> >>> Some more testing/experimenting is needed but I did do quite some tests >>> and >>> they worked OK. >>> >>> As I wrote already this feature is new for me and a (big) surprise - >>> this >>> is >>> a functionality I have been waiting for 8+ years since 1997 when we made >>> here a custom framework to work with MS Access and MS SQL in >>> disconnected >>> mode, but it was rather heavyweight and because of the bugs in MS Access >>> I >>> decided to not make it broadly available.... >>> >>> Basically this means that MS Access forms can be used in bound mode with >>> very low performance hit to the MS Access and MS SQL backends - the same >>> way >>> ADODB disconnected recordsets are used in n-tier applications. >>> >>> The programming of form's events processing is relatively simple and it >>> should be possible to generalize it to make a simple lightweight >>> framework >>> in case back-end database(s) follow systematic naming conventions and >>> database models design principles. >>> >>> The "trick" is to open two ADODB recordsets: >>> >>> - one with batch update enabled >>> - second without batch update >>> >>> and make them disconnected. >>> >>> Then bind MS Access form to the second recordset (without batch update >>> enabled). >>> >>> (I did experiemnet with recordsets having several source rows as a >>> generic >>> case to see are there any chances to use MS Access subforms in bound >>> editable mode with disconnected ADODB recordsets) >>> >>> When MS Access form fires insert, update, delete events all the changes >>> can >>> be easily translated from the second recordset (where these changes are >>> made >>> "automagically" because MS Access form is bound to it) to the first >>> recordset. >>> >>> On form close(or using special button) first recordset can be >>> reconnected >>> to >>> the backend and batch update applied. (Of course in the case of special >>> button to apply batch changes the two disconnected recordsets have to be >>> resynchronized after updates). >>> >>> etc. >>> >>> Here is how "automagically" generated by ADODB batch update looks in the >>> case of MS SQL backend (Info obtained from MS SQL profiler, line breaks >>> are >>> inserted manually to make it readable): >>> >>> exec sp_executesql >>> >>> N'UPDATE "Northwind".."Categories" SET >>> "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE >>> "CategoryID"=@P4 >>> AND "CategoryName"=@P5; >>> >>> DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND >>> "CategoryName"=@P7; >>> >>> UPDATE "Northwind".."Categories" SET >>> "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE >>> "CategoryID"=@P11 AND "CategoryName"=@P12; >>> >>> INSERT INTO "Northwind".."Categories" >>> ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', >>> >>> N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 >>> int, at P7 >>> nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 >>> nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', >>> >>> 99, N'CatName', N'Updated category description', >>> 99, N'CatName', >>> 66, N'DelCatName', >>> 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', >>> 662, N'newCatName', N'new Cat description' >>> >>> Live connection to the back-end is needed only on opening of the source >>> recordsets and on applying batch changes. Therefore connections can be >>> pooled/should be possible to pool (I didn't experiment here) and to >>> share >>> them between several (many) front-end applications/clients if these >>> connections are opened using ActiveX DCOM servers running on server >>> PCs/.NET >>> Remoting(?) objects. As well as actual disconnected recordset creation >>> and >>> reconnection and backend update can be executed on (Web) server side - >>> depending on whatever is used on backend.... >>> >>> Yes, I know dynamic SPs accessing database tables directly do not look >>> nice >>> but there could be many ways to make it working differently using >>> predefined >>> stored procedures (e.g. by serializing ADODB recordset into XML file(s) >>> where all the updates (inserts, deletes, updates) are coded special >>> easily >>> parsed way and then reformat these XML files into the calls to the >>> predefined stored procedures etc.etc. >>> >>> Here is how it looks this saved XML(no direct correspondence with >>> presented >>> above batch T-SQL update) : >>> >>> - >> xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" >>> xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> >>> - >>> - >>> - >> rs:writeunknown="true" >>> rs:basecatalog="Northwind" rs:basetable="Categories1" >>> rs:basecolumn="CategoryID"> >>> >> rs:fixedlength="true" rs:maybenull="false" /> >>> >>> - >> rs:writeunknown="true" >>> rs:basecatalog="Northwind" rs:basetable="Categories1" >>> rs:basecolumn="CategoryName"> >>> >>> >>> - >> rs:writeunknown="true" rs:basecatalog="Northwind" >>> rs:basetable="Categories1" >>> rs:basecolumn="Description"> >>> >> /> >>> >>> >>> >>> >>> - >>> >>> >>> >>> >> Description="Cheeses" >>> /> >>> >> Description="Breads, >>> crackers, pasta, and cereal" /> >>> >>> >>> >>> - >>> - >>> >>> >>> >>> >>> - >>> - >>> >>> >>> >>> >>> >> Description="Inserted2" >>> /> >>> - >>> >> /> >>> >>> - >>> >>> >>> >>> >>> >>> I do not post code here now because I wanted to experiment more and >>> because >>> it would be useful if somebody else tries to repeat the "trick" >>> described >>> above - if it will work for them then a whole set of new opportunities >>> to >>> use MS Access as a real development tool will be opened.... >>> >>> I will post code after additional tests within one-two weeks when it >>> will >>> become clear that it works. >>> >>> Please post any links here if you think that my posted information looks >>> like "wheel reinvention" or you think it doesn't have practical >>> application >>> because of this or that several limitations etc.etc. >>> >>> Thank you. >>> >>> Shamil >>> >>> P.S. I have installed on my PC: >>> >>> - MS Windows 2003 Server SP1 >>> - MS Office 2003/MS Access 2003 SP1 >>> - MS SQL 2000 SP3a >>> - MDAC 2.8 >>> - NET Framework 1.1 and 2.0 >>> - Visual Studio 2003 and 2005 >>> - I have also MS SQL Server 2005 Express edition but I didn't experiment >>> with it >>> >>> P. P.S. Yes, I didn't talk about identity(autonumber) fields - I >>> generally >>> use GUIDs for PKs. >>> To properly manage numeric identity values some more tricks are needed - >>> I'd >>> be grateful if somebody post information on this subject >>> (updategram/diffgram XML is a direct solution here probably - and >>> serialized/saved ADODB batch update can be converted into diffgrams by >>> using >>> XSLT or VB(A) or VB.NET/C#/C++ code etc.) >>> >> >> <<< tail skipped >>> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From harkinsss at bellsouth.net Mon Mar 13 09:02:53 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Mon, 13 Mar 2006 10:02:53 -0500 Subject: [AccessD] OpenSchema syntax In-Reply-To: <000301c6463d$2d373520$c2b3d6d1@SUSANONE> Message-ID: <000901c646af$385f2b20$c2b3d6d1@SUSANONE> Nevermind -- it never fails that I get it right the very next time after asking for help. Array(Empty, Empty, "Shippers", Empty )) Susan H. Set rst = CurrentProject.Connection.OpenSchema(adSchemaColumns, Array(Empty, Empty, Empty, "Shippers")) I can't remember the exact syntax for filtering a schema recordset to a specific table -- anyone remember which array element I'm supposed to use. I've moved the table name around, but I either get an error or an empty recordset. Susan H. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- No virus found in this incoming message. Checked by AVG Free Edition. Version: 7.1.375 / Virus Database: 268.2.1/279 - Release Date: 3/10/2006 From shamil at users.mns.ru Mon Mar 13 08:54:54 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Mon, 13 Mar 2006 17:54:54 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <005601c6469b$ad1ef440$647aa8c0@ColbyM6805> Message-ID: <001201c646ae$2d82abb0$6501a8c0@Nant> > Perhaps it is time for other influentials (you and I and this list) to > revisit this feature and see if it can be used now? Yes, John, we may try to do that together with AccessD group. But we may get stack trying to find how to use it without MS Access crashing. Please take that into account before proceeding with this risky (ad)venture - I do have a simple crash test here already based on Northwind sample and MS SQL database. And it does do crash MS Access 2003 well when working with MS SQL backends. And I do think I know why. And for this problem there seems exisiting a simple workaround. But I have to test it more. And it seems to always work well for MS Access 2003 backend. Yes, I see I use "seems" to often - I'm still unsure it will work stable. And of course some things have to be programemd differently - e.g. Pivot forms do not work at all, or using built-in delete have to be worked around differently than it's usually done with bound forms. Reports work only with ADPs - the trick is to use empty disconnected ADPs.... It does crash when MS SQL 2000 is a back-end and THIS IS IMPORTANT - when VBA code is used to assign controls' values - this is exactly what Steve experienced. But there exists a simple workaround as far as I noted above. I did try the crash test with empty ADP FE as well - the same effect: it works well with MDB backends and crashes with MS SQL 2000 backends when setting control values in code without workaround.... Today is Monday, the 13th, I don't know how there on the West but here in Russia, Monday, the 13th is considered as not good day to work - maybe Access crashes because of that :) I will publish the crash test and teh code tomorrow. I have to do some real life work today. Everybody interested to find workarounds for other problems to come are very welcome! Please make back-ups of your Northwind MS SQL 2000 sample database... Maybe we together can talk directly to MS Access Team (http://blogs.msdn.com/access/) to force them to make this feature working stable without any workarounds at least in MS Access 12? Probabilty is low but it's worth trying I think? Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 13, 2006 3:43 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > What I am asking though is whether RecordsetClone still exists, and is > somehow populated from whatever data source the form is bound to? After > binding to an ADO recordset, attempts to access RecordsetClone throw an > error "Type mismatch" on the line of code > > Set mrst = mfrm.RecordsetClone > > Mrst is defined in the class header as a DAO recordset. > > I might be able to get away with generalizing mrst to an object. > > NOTE: I tried that, and while the "Set" now works, the objects have > different methods so any code using the object has to have different code > paths written. So apparently RecordsetClone is indeed initialized as an > ADO > recordset which makes all of my DAO specific code (FindFirst for example) > throw a runtime error if encountered. If I am going to do this, I will > need > to branch my code based on the Access Version as well as whether I > actually > used the ADO recordset code. > >>Please do not spend a lot of time on it now or at least do not plan to > broadly use it in your development until > > Luckily, in my framework, I can turn on and off capabilities by examining > SysVars. It does sound like the instability objections were from an early > adopter. Like most things in Software, trying to use any specific feature > in Access in the early stages of its introduction can be risky. It is > possible (and hopefully true) that they found and fixed the bugs causing > such instability. One of the problems with influential early adopters is > that people read their warnings and never use a feature because they > reported it unstable. If they never go back to revisit it, then it is > forever labeled unstable. > > Perhaps it is time for other influentials (you and I and this list) to > revisit this feature and see if it can be used now? > > John W. Colby > www.ColbyConsulting.com > <<< tail skipped >>> From harkinsss at bellsouth.net Mon Mar 13 09:24:03 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Mon, 13 Mar 2006 10:24:03 -0500 Subject: [AccessD] Discovering Access version at runtime - wasAccessXP forms bound to ADO recordsets In-Reply-To: <004b01c64659$6e9a56c0$647aa8c0@ColbyM6805> Message-ID: <001501c646b2$2a281230$c2b3d6d1@SUSANONE> John, I don't think there's any feature that will do this automatically. I'm wondering if you couldn't use different code libraries and just install the most appropriate one for the version? Susan H. >Conditional compilation doesn't quite seem to meet the task Boy if ONLY!!! There should be something that can be used with conditional compilation. From developer at ultradnt.com Mon Mar 13 09:36:13 2006 From: developer at ultradnt.com (Steve Conklin) Date: Mon, 13 Mar 2006 10:36:13 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <001901c646ae$ca85ad90$6501a8c0@Nant> Message-ID: <200603131535.k2DFZpu46826@ultradnt.com> I have been following this thread with great interest. When faced with this issue, I have gone completely the opposite direction - that is not bleeding edge but back to Access basics. This was in an Access FE, MSSQL BE. Doing unbound in a "header" record (invoice, for instance) is pretty straightforward, especially when starting with a bound form and then deleting the record source property, so all controls have the same name as fields. The details in the subform (invoice line-items) are another matter. After several failed attempts at a disconnected ADO recordset, I thought about arrays, dictionaries, collections, converting somehow ADO to DOA at runtime, but finally came back to Access iteslf - I had the best device ever created for holding columns and rows of data: Access' own Tables! They provide nearly code-free storage, easy creation of new rows, are easily displayed in bound sub forms, etc. I appended all the tbl_invoice_details to tbl_invoice_details_local - which has the exact same structure, except that the pk-autonumber field in the local is neither. It is a long with a default of 0 (indicates new when writing back). Also added a y/n field to indicate "deleted" (sub form filters for deleted=0). This is decidedly low-tech as compared to serializing XML streams and such, and also requires home-grown locking (I added a bit field to invoice to indicate "in use"), but it does work by virtue of staying in Access sweet-spot rather than venturing in to uncharted waters. Steve -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Monday, March 13, 2006 10:00 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Given the size of the issue there, they would be a perfect test site > for this. OK, I will publish the code and the crash test tomorrow and then it can be reused I think for your real application. Best regards, Shamil -- Web: http://smsconsulting.spb.ru/shamil_s ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 13, 2006 4:48 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > >Please do not spend a lot of time on it now or at least do not plan to > broadly use it > > I have one specific place that I want to use this, the form that is > causing > locking issues at Invo Health Care. Given the size of the issue there, > they > would be a perfect test site for this. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Monday, March 13, 2006 3:20 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > >> Does RecordsetClone become invalid? > No, it doesn't, John. > But it has another name. > Similar method for ADODB recordsets is called Clone. > >> I am looking at this now. > Please do not spend a lot of time on it now or at least do not plan to > broadly use it in your development until it's very well tested and its > limitations are clearly defined - there are rumors this feature introduce > instability in MS Access work. I have doubts in that because I haven't > seen > any time MS Access crashes when bound to disconnected ADODB recordsets the > way I described. > > On the other hand I did do "fight" in my work in the past with MS Access > GPFs, when listboxes/comboboxes were bound to ADODB recordsets but as far > as > I have found this wasn't the problem with ADODB recordsets but the problem > that in that case late bound DAO or ADODB recordets were used and these > latter were opened in library mdb and there was a bug when DAO recordsets > were used for ADP's forms and that was the cause of the floating GPF > trouble > or something like that. WIth this problem fixed the applications work now > well for more than a year. > > Shamil > > ----- Original Message ----- > From: "John Colby" > To: "'Access Developers discussion and problem solving'" > > Sent: Monday, March 13, 2006 8:15 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> I am looking at this now. Do you know if binding to an ADO recordset >> changes >> the data type of the RecordsetClone. I was under the impression that >> RecordsetClone was always a DAO recordset. Does RecordsetClone become >> invalid? I use RecordsetClone to perform many different operations, >> including syncing the form to a combo and VV. >> >> >> John W. Colby >> www.ColbyConsulting.com >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >> Salakhetdinov >> Sent: Saturday, March 11, 2006 7:12 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> Dan, >> >> Yes, I have seen that - in fact I did do google before I started my >> experimenting. >> In KB281998 "How to bind Microsoft Access forms to ADO recordsets" >> http://support.microsoft.com/kb/281998 they talk AFAIS about binding to >> connected ADODB recordsets. >> >> The original question (as I got it) was hwo to bind to disconnected ADODB >> recordsets and then implied question is: is there a simple and generic >> way >> to translate/transfer changes from disconnected recordset to the >> backend... >> >> As it happens there is a trick to do that described in my previous >> posting. >> >> I did do google now additionally and I did find that the similar trick is >> described already several years ago. They do it a little bit differently >> but >> the principle is the same - they write: >> >> <<< >> Now, the clever tricks: >> >> 1. Open a static, optimistic batch recordset, disconnect it, save it to >> a >> simple in-memory stream object, set the stream position to zero so it can >> be >> read from the beginning, and open a new copy of the recordset from the >> stream. Now, bind one copy to the form, and start working. When you're >> ready to do a batch update, first compare the 2 recordsets for changes, >> and >> apply any adds, changes, and deletes to the unbound recordset, then run >> BatchUpdate from the unbound recordset. Note that Access sets values of >> IDENTITY columns to zero, so that's an easy way to filter for added >> records. >> ... >>>>> >> >> This excerpt is from this posting (watch line wraps!): >> >> <<< >> ADP: A2K vs 2002? >> From: Steve Jorgensen >> Date: Sun, Jul 21 2002 7:29 pm >> >> > http://groups.google.com/group/comp.databases.ms-access/browse_frm/thread/17 >> > 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/grou >> > ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3Dima >> > ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3Den#f2 >> 0d79536029060e >>>>> >> >> And here is another related information: >> >> <<< >> From: Steve Jorgensen >> Date: Thurs, Nov 28 2002 11:45 pm >> >> > http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071f8c9 >> > ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UTF-8& >> oe=UTF-8&rnum=2 >>>>> >> >> So they approve that my trick is legal and is a kind of "wheel >> reinwention" >> - the difference of my "wheel" is that I do trasnslate changes to the >> second >> disconected recordset when form events fire - the disadvantage of my >> method >> is that it needs more tricky coding, which still needs to be well tested, >> the advantage - is that as soons as the changes on the current row are >> done >> I can serialize second disconnected recordset to xml file and in the case >> of >> client app's failure batch changes will not be lost etc. >> >> Strange that such a valuable information first time published in summer >> 2002 >> about using ADODB disconnected recordsets is so rarely discussed on >> Internet >> - everybody in this World is abandoning "MS Access toy" and switiching to >> .NET development? >> >> But this feature properly applied makes MS Access FEs good candidates to >> be >> used as true FEs - without any significant performance/locking hits on >> BEs > >> I >> mean.... >> >> Shamil >> >> ----- Original Message ----- >> From: "Dan Waters" >> To: "'Access Developers discussion and problem solving'" >> >> Sent: Sunday, March 12, 2006 2:27 AM >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> >>> Shamil, >>> >>> I've been reading you post with interest. Have you looked at MS KB >>> 281998? >>> This gives a method for an Access form to connect to SQL Server, Jet, >>> and >>> Oracle BE's and be updateable. They identify a specific provider to do >>> this >>> that can be used to set up bound forms. >>> >>> The provider is: "Microsoft.Access.OLEDB.10.0" >>> >>> I have not tried this, but thought you might be interested. >>> >>> Dan Waters >>> >>> >>> -----Original Message----- >>> From: accessd-bounces at databaseadvisors.com >>> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >>> Salakhetdinov >>> Sent: Saturday, March 11, 2006 5:04 PM >>> To: Access Developers discussion and problem solving >>> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >>> >>> John at all, >>> >>> I did make some more experimenting and it happens that MS Access 2003 >>> (and >>> probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with >>> disconnected updatable ADODB recordsets with both MS Access and MS SQL >>> backends. >>> >>> I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access >>> backend >>> and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. >>> >>> Some more testing/experimenting is needed but I did do quite some tests >>> and >>> they worked OK. >>> >>> As I wrote already this feature is new for me and a (big) surprise - >>> this >>> is >>> a functionality I have been waiting for 8+ years since 1997 when we made >>> here a custom framework to work with MS Access and MS SQL in >>> disconnected >>> mode, but it was rather heavyweight and because of the bugs in MS Access >>> I >>> decided to not make it broadly available.... >>> >>> Basically this means that MS Access forms can be used in bound mode with >>> very low performance hit to the MS Access and MS SQL backends - the same >>> way >>> ADODB disconnected recordsets are used in n-tier applications. >>> >>> The programming of form's events processing is relatively simple and it >>> should be possible to generalize it to make a simple lightweight >>> framework >>> in case back-end database(s) follow systematic naming conventions and >>> database models design principles. >>> >>> The "trick" is to open two ADODB recordsets: >>> >>> - one with batch update enabled >>> - second without batch update >>> >>> and make them disconnected. >>> >>> Then bind MS Access form to the second recordset (without batch update >>> enabled). >>> >>> (I did experiemnet with recordsets having several source rows as a >>> generic >>> case to see are there any chances to use MS Access subforms in bound >>> editable mode with disconnected ADODB recordsets) >>> >>> When MS Access form fires insert, update, delete events all the changes >>> can >>> be easily translated from the second recordset (where these changes are >>> made >>> "automagically" because MS Access form is bound to it) to the first >>> recordset. >>> >>> On form close(or using special button) first recordset can be >>> reconnected >>> to >>> the backend and batch update applied. (Of course in the case of special >>> button to apply batch changes the two disconnected recordsets have to be >>> resynchronized after updates). >>> >>> etc. >>> >>> Here is how "automagically" generated by ADODB batch update looks in the >>> case of MS SQL backend (Info obtained from MS SQL profiler, line breaks >>> are >>> inserted manually to make it readable): >>> >>> exec sp_executesql >>> >>> N'UPDATE "Northwind".."Categories" SET >>> "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE >>> "CategoryID"=@P4 >>> AND "CategoryName"=@P5; >>> >>> DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND >>> "CategoryName"=@P7; >>> >>> UPDATE "Northwind".."Categories" SET >>> "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE >>> "CategoryID"=@P11 AND "CategoryName"=@P12; >>> >>> INSERT INTO "Northwind".."Categories" >>> ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', >>> >>> N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 >>> int, at P7 >>> nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 >>> nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', >>> >>> 99, N'CatName', N'Updated category description', >>> 99, N'CatName', >>> 66, N'DelCatName', >>> 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', >>> 662, N'newCatName', N'new Cat description' >>> >>> Live connection to the back-end is needed only on opening of the source >>> recordsets and on applying batch changes. Therefore connections can be >>> pooled/should be possible to pool (I didn't experiment here) and to >>> share >>> them between several (many) front-end applications/clients if these >>> connections are opened using ActiveX DCOM servers running on server >>> PCs/.NET >>> Remoting(?) objects. As well as actual disconnected recordset creation >>> and >>> reconnection and backend update can be executed on (Web) server side - >>> depending on whatever is used on backend.... >>> >>> Yes, I know dynamic SPs accessing database tables directly do not look >>> nice >>> but there could be many ways to make it working differently using >>> predefined >>> stored procedures (e.g. by serializing ADODB recordset into XML file(s) >>> where all the updates (inserts, deletes, updates) are coded special >>> easily >>> parsed way and then reformat these XML files into the calls to the >>> predefined stored procedures etc.etc. >>> >>> Here is how it looks this saved XML(no direct correspondence with >>> presented >>> above batch T-SQL update) : >>> >>> - >> xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" >>> xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> >>> - >>> - >>> - >> rs:writeunknown="true" >>> rs:basecatalog="Northwind" rs:basetable="Categories1" >>> rs:basecolumn="CategoryID"> >>> >> rs:fixedlength="true" rs:maybenull="false" /> >>> >>> - >> rs:writeunknown="true" >>> rs:basecatalog="Northwind" rs:basetable="Categories1" >>> rs:basecolumn="CategoryName"> >>> >>> >>> - >> rs:writeunknown="true" rs:basecatalog="Northwind" >>> rs:basetable="Categories1" >>> rs:basecolumn="Description"> >>> >> /> >>> >>> >>> >>> >>> - >>> >>> >>> >>> >> Description="Cheeses" >>> /> >>> >> Description="Breads, >>> crackers, pasta, and cereal" /> >>> >>> >>> >>> - >>> - >>> >>> >>> >>> >>> - >>> - >>> >>> >>> >>> >>> >> Description="Inserted2" >>> /> >>> - >>> >> /> >>> >>> - >>> >>> >>> >>> >>> >>> I do not post code here now because I wanted to experiment more and >>> because >>> it would be useful if somebody else tries to repeat the "trick" >>> described >>> above - if it will work for them then a whole set of new opportunities >>> to >>> use MS Access as a real development tool will be opened.... >>> >>> I will post code after additional tests within one-two weeks when it >>> will >>> become clear that it works. >>> >>> Please post any links here if you think that my posted information looks >>> like "wheel reinvention" or you think it doesn't have practical >>> application >>> because of this or that several limitations etc.etc. >>> >>> Thank you. >>> >>> Shamil >>> >>> P.S. I have installed on my PC: >>> >>> - MS Windows 2003 Server SP1 >>> - MS Office 2003/MS Access 2003 SP1 >>> - MS SQL 2000 SP3a >>> - MDAC 2.8 >>> - NET Framework 1.1 and 2.0 >>> - Visual Studio 2003 and 2005 >>> - I have also MS SQL Server 2005 Express edition but I didn't experiment >>> with it >>> >>> P. P.S. Yes, I didn't talk about identity(autonumber) fields - I >>> generally >>> use GUIDs for PKs. >>> To properly manage numeric identity values some more tricks are needed - >>> I'd >>> be grateful if somebody post information on this subject >>> (updategram/diffgram XML is a direct solution here probably - and >>> serialized/saved ADODB batch update can be converted into diffgrams by >>> using >>> XSLT or VB(A) or VB.NET/C#/C++ code etc.) >>> >> >> <<< tail skipped >>> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Lambert.Heenan at AIG.com Mon Mar 13 09:57:23 2006 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Mon, 13 Mar 2006 09:57:23 -0600 Subject: [AccessD] Discovering Access version at runtime - was Access XP forms bound to ADO recordsets Message-ID: <1D7828CDB8350747AFE9D69E0E90DA1F1E888E83@xlivmbx21.aig.com> "Public compiler constants can only be created in the user interface. I wonder what that means?" If you declare a compiler consent in a module like this #Const Foo = 1 Then "Foo" is only visible in the module it is declared in. If you need a conditional compiler constant that is globally visible in all modules, then you need to declare it though the menus (that's what "in the user interface" means). To do so open any module and then select the application Properties option on the module Tools menu. You will see a dialog box which has a textbox labeled "Conditional Compiler Arguments" and you can enter a list of such arguments like this Foo = 1 : Bar = 2 Notice the colon is used as a delimiter. You can only declare constants with simple integer values. You can then use these compiler arguments in any code module. Here's a trivial example. Sub CheckCompilerArgs() #If Foo = 1 Then Debug.Print "Foo = 1" #End If #If Bar = 1 Then Debug.Print "Bar = 1" #End If #If Bar = 2 Then Debug.Print "Bar = 2" #End If End Sub Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Michael R Mattys Sent: Sunday, March 12, 2006 11:13 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Discovering Access version at runtime - was Access XP forms bound to ADO recordsets Conditional compilation doesn't quite seem to meet the task, but I noticed this enigmatic statement in help: "Public compiler constants can only be created in the user interface." I wonder what that means? So then, the only other alternative that comes to mind is to use mde libraries for each version and invoke one or the other based upon the value of acSysCmdAccessVer. Michael R. Mattys MapPoint Developer www.mattysconsulting.com ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Sunday, March 12, 2006 7:12 PM Subject: [AccessD] Discovering Access version at runtime - was Access XP forms bound to ADO recordsets > >and for MS Access 2000 this feature doesn't work. > > And this brings up to an important question, can a framework > dynamically configure to use code based on the version? > > I use the same framework for A2K and above. The reason I cut off at > A2K that raisevents do not work in A97 and I make some use of > RaiseEvents in the framework. Now we have code which works in AXP but > not A2K and below. So I > would like to carve this stuff out and only load it if the version being > run > under is AXP or above. A quick Google search does not come up with > anything. > > If this can be done, XP also supports form event sinks in two > different class modules without the page faults that A2K would trigger > if you tried that, so it might work well to place these event sinks > out in a completely separate class and instantiate that class only if > the version was XP or above. > > Thoughts about this? > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Friday, March 10, 2006 7:36 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > John, > > I did try ADODB disconnected recordsets with MS Access XP/2003 MDBs > and > they > seems to be working rather well. > > That is a surprise here because the book "Microsoft Access Developer's > Guide > to SQL Server", which I read before states this can't be done. But the > book > I have is for MS Access 2000/MS SQL 2000 - and for MS Access 2000 this > feature doesn't work. I don't have a new edition of the book - if it > exists > the authors may have written about this new useful feature.... > > I hope I'm not mistaken - I did recheck many times - yes, it seems to > work! > Please verify.... > > In P.S. of this message there is a sample code, which basicaly works > OK > but > which needs more investigations - it doesn't yet process all the use > cases. > This code is for [authors] table from [pubs] sample database. It can work > with both MS SQL and MS Access BEs use: > > - BindFormToSQLADORecordset - to connect to MS SQL BE and > > - BindFormToJetADORecordset to connect to MS Access BE. > > I did check with MS SQL profiler - communication with MS SQL BE is > minimal and connection is used only when database operation is in > progress - i.e. on short period of time for properly organized > communication with BE database. > > If additional investigations/testing will show that this simple method > works > for all the required use cases then that's "what doctor ordered." - I mean > you can relax and happily continue staying in your comfortable "bounders > camp" for quite some time... (Although I'd recommend to use GUIDs for PKs) > > It would be also very useful to make it working in disconnected > optimistic batch update mode but I doubt it's possible - I'd be happy > somebody will present here a sample how similar simple method can be > used in disconnected optimistic batch mode. > > Shamil > > P.S. > > 1. create new mdb > 2. connect to [authors] table from [pubs] MS SQL sample database 3. > use > make > table query to clone [dbo_authors] to local MS Access table [authors] 4. > close sample database 5. open sample database in shared mode 6. create > form > for [authors] table 7. removed form's recordsource 8. put the following > code > into form's module (edit connection strings if > needed) > 9. open form in normal view (to switch MS SQL/Jet backend > comment/uncommented the code lines in Form_Load sub) 10. Enjoy! > > Private mrst As ADODB.Recordset > Private mcnn As ADODB.Connection > > Private mcolDeletedRowsIds As New Collection > > Private Sub Form_Load() > 'BindFormToSQLADORecordset > BindFormToJetADORecordset > End Sub > > Private Sub Form_BeforeUpdate(Cancel As Integer) > UpdateBE > End Sub > > Private Sub Form_BeforeInsert(Cancel As Integer) > mrst.AddNew > End Sub > > Private Sub Form_Delete(Cancel As Integer) > If mcolDeletedRowsIds.Count = 0 Then > mcolDeletedRowsIds.Add mrst!au_id.Value > Else > mcolDeletedRowsIds.Add mrst!au_id.Value, , 1 > End If > End Sub > > Private Sub Form_Current() > Dim strSql As String > Dim i As Integer > If mcolDeletedRowsIds.Count > 0 Then > For i = mcolDeletedRowsIds.Count To 1 Step -1 > strSql = "delete from [authors] where au_id = '" & _ > mcolDeletedRowsIds.Item(i) & "'" > mcnn.Execute strSql > mcolDeletedRowsIds.Remove i > Next i > End If > End Sub > > Private Sub Form_Unload(Cancel As Integer) On Error Resume Next > mrst.Close > mcnn.Close > End Sub > > Private Sub BindFormToSQLADORecordset() > Dim strSql As String > Dim strCnn As String > Set mcnn = New ADODB.Connection > strCnn = "Provider=SQLOLEDB.1;" & _ > "Server=(local);" & _ > "Database=Pubs;" & _ > "Integrated Security = SSPI" > mcnn.Open strCnn > > strSql = "select * from [authors]" > Set mrst = New ADODB.Recordset > mrst.CursorLocation = adUseClient > > mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic > > mrst.ActiveConnection = Nothing > > Set Me.Recordset = mrst > End Sub > > Private Sub UpdateBE() > Set mrst.ActiveConnection = mcnn > mrst.UpdateBatch adAffectCurrent > Set mrst.ActiveConnection = Nothing > End Sub > > Private Sub BindFormToJetADORecordset() > Dim strSql As String > Dim strCnn As String > Set mcnn = New ADODB.Connection > strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ > "Data Source=" & CurrentDb.Name & _ > ";User Id=admin;Password=;" > mcnn.Open strCnn > > strSql = "select * from [authors]" > Set mrst = New ADODB.Recordset > mrst.CursorLocation = adUseClient > > mrst.Open strSql, mcnn, adOpenKeyset, adLockOptimistic > > Set mrst.ActiveConnection = Nothing > > Set Me.Recordset = mrst > End Sub > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From rl_stewart at highstream.net Mon Mar 13 11:00:42 2006 From: rl_stewart at highstream.net (Robert L. Stewart) Date: Mon, 13 Mar 2006 12:00:42 -0500 Subject: [AccessD] A2003: Running SQL SPROCS from Access In-Reply-To: References: Message-ID: <1142269242.4415a53a92380@webmail.highstream.net> The simplest is a pass through query. exec uspProcName or exec uspProcName 'param1', 'param2' where the exec statement is the SQL in the query. Robert L. Stewart The Dyson Group International Software for the Non-profit Enterprise Expanding your Sphere of Knowledge Quoting accessd-request at databaseadvisors.com: > Date: Mon, 13 Mar 2006 13:03:57 +1100 > From: "Darren DICK" > Subject: [AccessD] A2003: Running SQL SPROCS from Access > To: "AccessD" > Message-ID: > <20060313020401.LAHV3168.omta02ps.mx.bigpond.com at DENZILLAP> > Content-Type: text/plain; charset="us-ascii" > > Cross posted to dba-SQL Server list > > Hi All > Once I have made a connection to an SQL dB > Is there a way to execute SPROCS in that dB > > Special code or special syntax etc? > > Indeed - is there even a special connection routine needed - given the latest > threads > on connecting with updatable connections (ADOB) > > Many thanks in advance > > DD From cfoust at infostatsystems.com Mon Mar 13 11:03:54 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Mon, 13 Mar 2006 09:03:54 -0800 Subject: [AccessD] Access XP forms bound to ADO recordsets Message-ID: John, RecordsetClone is DAO. With ADO, you can clone a recordset, but it is a new recordset and can't be used the way you use recordsetclone. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Monday, March 13, 2006 4:43 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access XP forms bound to ADO recordsets What I am asking though is whether RecordsetClone still exists, and is somehow populated from whatever data source the form is bound to? After binding to an ADO recordset, attempts to access RecordsetClone throw an error "Type mismatch" on the line of code Set mrst = mfrm.RecordsetClone Mrst is defined in the class header as a DAO recordset. I might be able to get away with generalizing mrst to an object. NOTE: I tried that, and while the "Set" now works, the objects have different methods so any code using the object has to have different code paths written. So apparently RecordsetClone is indeed initialized as an ADO recordset which makes all of my DAO specific code (FindFirst for example) throw a runtime error if encountered. If I am going to do this, I will need to branch my code based on the Access Version as well as whether I actually used the ADO recordset code. >Please do not spend a lot of time on it now or at least do not plan to broadly use it in your development until Luckily, in my framework, I can turn on and off capabilities by examining SysVars. It does sound like the instability objections were from an early adopter. Like most things in Software, trying to use any specific feature in Access in the early stages of its introduction can be risky. It is possible (and hopefully true) that they found and fixed the bugs causing such instability. One of the problems with influential early adopters is that people read their warnings and never use a feature because they reported it unstable. If they never go back to revisit it, then it is forever labeled unstable. Perhaps it is time for other influentials (you and I and this list) to revisit this feature and see if it can be used now? John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Monday, March 13, 2006 3:20 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Does RecordsetClone become invalid? No, it doesn't, John. But it has another name. Similar method for ADODB recordsets is called Clone. > I am looking at this now. Please do not spend a lot of time on it now or at least do not plan to broadly use it in your development until it's very well tested and its limitations are clearly defined - there are rumors this feature introduce instability in MS Access work. I have doubts in that because I haven't seen any time MS Access crashes when bound to disconnected ADODB recordsets the way I described. On the other hand I did do "fight" in my work in the past with MS Access GPFs, when listboxes/comboboxes were bound to ADODB recordsets but as far as I have found this wasn't the problem with ADODB recordsets but the problem that in that case late bound DAO or ADODB recordets were used and these latter were opened in library mdb and there was a bug when DAO recordsets were used for ADP's forms and that was the cause of the floating GPF trouble or something like that. WIth this problem fixed the applications work now well for more than a year. Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 13, 2006 8:15 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > I am looking at this now. Do you know if binding to an ADO recordset > changes > the data type of the RecordsetClone. I was under the impression that > RecordsetClone was always a DAO recordset. Does RecordsetClone become > invalid? I use RecordsetClone to perform many different operations, > including syncing the form to a combo and VV. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 7:12 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > Dan, > > Yes, I have seen that - in fact I did do google before I started my > experimenting. > In KB281998 "How to bind Microsoft Access forms to ADO recordsets" > http://support.microsoft.com/kb/281998 they talk AFAIS about binding to > connected ADODB recordsets. > > The original question (as I got it) was hwo to bind to disconnected ADODB > recordsets and then implied question is: is there a simple and generic way > to translate/transfer changes from disconnected recordset to the > backend... > > As it happens there is a trick to do that described in my previous > posting. > > I did do google now additionally and I did find that the similar trick is > described already several years ago. They do it a little bit differently > but > the principle is the same - they write: > > <<< > Now, the clever tricks: > > 1. Open a static, optimistic batch recordset, disconnect it, save it to a > simple in-memory stream object, set the stream position to zero so it can > be > read from the beginning, and open a new copy of the recordset from the > stream. Now, bind one copy to the form, and start working. When you're > ready to do a batch update, first compare the 2 recordsets for changes, > and > apply any adds, changes, and deletes to the unbound recordset, then run > BatchUpdate from the unbound recordset. Note that Access sets values of > IDENTITY columns to zero, so that's an easy way to filter for added > records. > ... >>>> > > This excerpt is from this posting (watch line wraps!): > > <<< > ADP: A2K vs 2002? > From: Steve Jorgensen > Date: Sun, Jul 21 2002 7:29 pm > > http://groups.google.com/group/comp.databases.ms-access/browse_frm/threa d/17 > 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/ grou > ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3 Dima > ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3De n#f2 > 0d79536029060e >>>> > > And here is another related information: > > <<< > From: Steve Jorgensen > Date: Thurs, Nov 28 2002 11:45 pm > > http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071 f8c9 > ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UT F-8& > oe=UTF-8&rnum=2 >>>> > > So they approve that my trick is legal and is a kind of "wheel > reinwention" > - the difference of my "wheel" is that I do trasnslate changes to the > second > disconected recordset when form events fire - the disadvantage of my > method > is that it needs more tricky coding, which still needs to be well tested, > the advantage - is that as soons as the changes on the current row are > done > I can serialize second disconnected recordset to xml file and in the case > of > client app's failure batch changes will not be lost etc. > > Strange that such a valuable information first time published in summer > 2002 > about using ADODB disconnected recordsets is so rarely discussed on > Internet > - everybody in this World is abandoning "MS Access toy" and switiching to > .NET development? > > But this feature properly applied makes MS Access FEs good candidates to > be > used as true FEs - without any significant performance/locking hits on BEs > I > mean.... > > Shamil > > ----- Original Message ----- > From: "Dan Waters" > To: "'Access Developers discussion and problem solving'" > > Sent: Sunday, March 12, 2006 2:27 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> I've been reading you post with interest. Have you looked at MS KB >> 281998? >> This gives a method for an Access form to connect to SQL Server, Jet, and >> Oracle BE's and be updateable. They identify a specific provider to do >> this >> that can be used to set up bound forms. >> >> The provider is: "Microsoft.Access.OLEDB.10.0" >> >> I have not tried this, but thought you might be interested. >> >> Dan Waters >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >> Salakhetdinov >> Sent: Saturday, March 11, 2006 5:04 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> John at all, >> >> I did make some more experimenting and it happens that MS Access 2003 >> (and >> probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with >> disconnected updatable ADODB recordsets with both MS Access and MS SQL >> backends. >> >> I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access >> backend >> and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. >> >> Some more testing/experimenting is needed but I did do quite some tests >> and >> they worked OK. >> >> As I wrote already this feature is new for me and a (big) surprise - this >> is >> a functionality I have been waiting for 8+ years since 1997 when we made >> here a custom framework to work with MS Access and MS SQL in disconnected >> mode, but it was rather heavyweight and because of the bugs in MS Access >> I >> decided to not make it broadly available.... >> >> Basically this means that MS Access forms can be used in bound mode with >> very low performance hit to the MS Access and MS SQL backends - the same >> way >> ADODB disconnected recordsets are used in n-tier applications. >> >> The programming of form's events processing is relatively simple and it >> should be possible to generalize it to make a simple lightweight >> framework >> in case back-end database(s) follow systematic naming conventions and >> database models design principles. >> >> The "trick" is to open two ADODB recordsets: >> >> - one with batch update enabled >> - second without batch update >> >> and make them disconnected. >> >> Then bind MS Access form to the second recordset (without batch update >> enabled). >> >> (I did experiemnet with recordsets having several source rows as a >> generic >> case to see are there any chances to use MS Access subforms in bound >> editable mode with disconnected ADODB recordsets) >> >> When MS Access form fires insert, update, delete events all the changes >> can >> be easily translated from the second recordset (where these changes are >> made >> "automagically" because MS Access form is bound to it) to the first >> recordset. >> >> On form close(or using special button) first recordset can be reconnected >> to >> the backend and batch update applied. (Of course in the case of special >> button to apply batch changes the two disconnected recordsets have to be >> resynchronized after updates). >> >> etc. >> >> Here is how "automagically" generated by ADODB batch update looks in the >> case of MS SQL backend (Info obtained from MS SQL profiler, line breaks >> are >> inserted manually to make it readable): >> >> exec sp_executesql >> >> N'UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE >> "CategoryID"=@P4 >> AND "CategoryName"=@P5; >> >> DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND >> "CategoryName"=@P7; >> >> UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE >> "CategoryID"=@P11 AND "CategoryName"=@P12; >> >> INSERT INTO "Northwind".."Categories" >> ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', >> >> N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 >> nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 >> nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', >> >> 99, N'CatName', N'Updated category description', >> 99, N'CatName', >> 66, N'DelCatName', >> 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', >> 662, N'newCatName', N'new Cat description' >> >> Live connection to the back-end is needed only on opening of the source >> recordsets and on applying batch changes. Therefore connections can be >> pooled/should be possible to pool (I didn't experiment here) and to share >> them between several (many) front-end applications/clients if these >> connections are opened using ActiveX DCOM servers running on server >> PCs/.NET >> Remoting(?) objects. As well as actual disconnected recordset creation >> and >> reconnection and backend update can be executed on (Web) server side - >> depending on whatever is used on backend.... >> >> Yes, I know dynamic SPs accessing database tables directly do not look >> nice >> but there could be many ways to make it working differently using >> predefined >> stored procedures (e.g. by serializing ADODB recordset into XML file(s) >> where all the updates (inserts, deletes, updates) are coded special >> easily >> parsed way and then reformat these XML files into the calls to the >> predefined stored procedures etc.etc. >> >> Here is how it looks this saved XML(no direct correspondence with >> presented >> above batch T-SQL update) : >> >> - > xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" >> xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> >> - >> - >> - > rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryID"> >> > rs:fixedlength="true" rs:maybenull="false" /> >> >> - > rs:writeunknown="true" >> rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryName"> >> >> >> - > rs:writeunknown="true" rs:basecatalog="Northwind" >> rs:basetable="Categories1" >> rs:basecolumn="Description"> >> >> >> >> >> >> - >> >> >> >> > Description="Cheeses" >> /> >> >> >> >> >> - >> - >> >> >> >> >> - >> - >> >> >> >> >> > /> >> - >> > /> >> >> - >> >> >> >> >> >> I do not post code here now because I wanted to experiment more and >> because >> it would be useful if somebody else tries to repeat the "trick" described >> above - if it will work for them then a whole set of new opportunities to >> use MS Access as a real development tool will be opened.... >> >> I will post code after additional tests within one-two weeks when it will >> become clear that it works. >> >> Please post any links here if you think that my posted information looks >> like "wheel reinvention" or you think it doesn't have practical >> application >> because of this or that several limitations etc.etc. >> >> Thank you. >> >> Shamil >> >> P.S. I have installed on my PC: >> >> - MS Windows 2003 Server SP1 >> - MS Office 2003/MS Access 2003 SP1 >> - MS SQL 2000 SP3a >> - MDAC 2.8 >> - NET Framework 1.1 and 2.0 >> - Visual Studio 2003 and 2005 >> - I have also MS SQL Server 2005 Express edition but I didn't experiment >> with it >> >> P. P.S. Yes, I didn't talk about identity(autonumber) fields - I >> generally >> use GUIDs for PKs. >> To properly manage numeric identity values some more tricks are needed - >> I'd >> be grateful if somebody post information on this subject >> (updategram/diffgram XML is a direct solution here probably - and >> serialized/saved ADODB batch update can be converted into diffgrams by >> using >> XSLT or VB(A) or VB.NET/C#/C++ code etc.) >> > > <<< tail skipped >>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Mon Mar 13 11:07:43 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Mon, 13 Mar 2006 09:07:43 -0800 Subject: [AccessD] Discovering Access version at runtime -wasAccessXPforms bound to ADO recordsets Message-ID: John, What you want is DBEngine(0)(0).Version Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Sunday, March 12, 2006 8:48 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Discovering Access version at runtime -wasAccessXPforms bound to ADO recordsets LOL, Thanks Stuart. Now if I could only find the FM. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stuart McLachlan Sent: Sunday, March 12, 2006 10:52 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Discovering Access version at runtime - wasAccessXPforms bound to ADO recordsets On 12 Mar 2006 at 22:18, John Colby wrote: > >John, you want to check the version and then load code based on the > version? > > Yes, the ACCESS version. I have found stuff about checking the > registry, but this really only addresses what is INSTALLED, not what > is currently running. > RTFM? :-) Version Returns a String indicating the version number of the currently installed copy of Microsoft Access. Read-only. expression.Version expression Required. An expression that returns one of the objects in the Applies To list. Example The following example displays the version and build number of the currently-installed copy of Microsoft Access. MsgBox "You are currently running Microsoft Access, " _ & " version " & Application.Version & ", build " _ & Application.Build & "." -- Stuart -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Mon Mar 13 11:11:26 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Mon, 13 Mar 2006 09:11:26 -0800 Subject: [AccessD] Access XP forms bound to ADO recordsets Message-ID: Shamil, I'm just dipping a toe in here quickly before I get back to work. Have you tried using an unbound form with a disconnected recordset? I swear I've done this, but I'll have to look for a demo. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Saturday, March 11, 2006 4:12 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Dan, Yes, I have seen that - in fact I did do google before I started my experimenting. In KB281998 "How to bind Microsoft Access forms to ADO recordsets" http://support.microsoft.com/kb/281998 they talk AFAIS about binding to connected ADODB recordsets. The original question (as I got it) was hwo to bind to disconnected ADODB recordsets and then implied question is: is there a simple and generic way to translate/transfer changes from disconnected recordset to the backend... As it happens there is a trick to do that described in my previous posting. I did do google now additionally and I did find that the similar trick is described already several years ago. They do it a little bit differently but the principle is the same - they write: <<< Now, the clever tricks: 1. Open a static, optimistic batch recordset, disconnect it, save it to a simple in-memory stream object, set the stream position to zero so it can be read from the beginning, and open a new copy of the recordset from the stream. Now, bind one copy to the form, and start working. When you're ready to do a batch update, first compare the 2 recordsets for changes, and apply any adds, changes, and deletes to the unbound recordset, then run BatchUpdate from the unbound recordset. Note that Access sets values of IDENTITY columns to zero, so that's an easy way to filter for added records. ... >>> This excerpt is from this posting (watch line wraps!): <<< ADP: A2K vs 2002? From: Steve Jorgensen Date: Sun, Jul 21 2002 7:29 pm http://groups.google.com/group/comp.databases.ms-access/browse_frm/threa d/1753dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&pr ev=/groups%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset% 26safe%3Dimages%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr %3D%26hl%3Den#f20d79536029060e >>> And here is another related information: <<< From: Steve Jorgensen Date: Thurs, Nov 28 2002 11:45 pm http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071 f8c9?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&i e=UTF-8&oe=UTF-8&rnum=2 >>> So they approve that my trick is legal and is a kind of "wheel reinwention" - the difference of my "wheel" is that I do trasnslate changes to the second disconected recordset when form events fire - the disadvantage of my method is that it needs more tricky coding, which still needs to be well tested, the advantage - is that as soons as the changes on the current row are done I can serialize second disconnected recordset to xml file and in the case of client app's failure batch changes will not be lost etc. Strange that such a valuable information first time published in summer 2002 about using ADODB disconnected recordsets is so rarely discussed on Internet - everybody in this World is abandoning "MS Access toy" and switiching to .NET development? But this feature properly applied makes MS Access FEs good candidates to be used as true FEs - without any significant performance/locking hits on BEs I mean.... Shamil ----- Original Message ----- From: "Dan Waters" To: "'Access Developers discussion and problem solving'" Sent: Sunday, March 12, 2006 2:27 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > I've been reading you post with interest. Have you looked at MS KB > 281998? > This gives a method for an Access form to connect to SQL Server, Jet, and > Oracle BE's and be updateable. They identify a specific provider to do > this > that can be used to set up bound forms. > > The provider is: "Microsoft.Access.OLEDB.10.0" > > I have not tried this, but thought you might be interested. > > Dan Waters > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 5:04 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > John at all, > > I did make some more experimenting and it happens that MS Access 2003 (and > probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with > disconnected updatable ADODB recordsets with both MS Access and MS SQL > backends. > > I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access backend > and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. > > Some more testing/experimenting is needed but I did do quite some tests > and > they worked OK. > > As I wrote already this feature is new for me and a (big) surprise - this > is > a functionality I have been waiting for 8+ years since 1997 when we made > here a custom framework to work with MS Access and MS SQL in disconnected > mode, but it was rather heavyweight and because of the bugs in MS Access I > decided to not make it broadly available.... > > Basically this means that MS Access forms can be used in bound mode with > very low performance hit to the MS Access and MS SQL backends - the same > way > ADODB disconnected recordsets are used in n-tier applications. > > The programming of form's events processing is relatively simple and it > should be possible to generalize it to make a simple lightweight framework > in case back-end database(s) follow systematic naming conventions and > database models design principles. > > The "trick" is to open two ADODB recordsets: > > - one with batch update enabled > - second without batch update > > and make them disconnected. > > Then bind MS Access form to the second recordset (without batch update > enabled). > > (I did experiemnet with recordsets having several source rows as a generic > case to see are there any chances to use MS Access subforms in bound > editable mode with disconnected ADODB recordsets) > > When MS Access form fires insert, update, delete events all the changes > can > be easily translated from the second recordset (where these changes are > made > "automagically" because MS Access form is bound to it) to the first > recordset. > > On form close(or using special button) first recordset can be reconnected > to > the backend and batch update applied. (Of course in the case of special > button to apply batch changes the two disconnected recordsets have to be > resynchronized after updates). > > etc. > > Here is how "automagically" generated by ADODB batch update looks in the > case of MS SQL backend (Info obtained from MS SQL profiler, line breaks > are > inserted manually to make it readable): > > exec sp_executesql > > N'UPDATE "Northwind".."Categories" SET > "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE > "CategoryID"=@P4 > AND "CategoryName"=@P5; > > DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND > "CategoryName"=@P7; > > UPDATE "Northwind".."Categories" SET > "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE > "CategoryID"=@P11 AND "CategoryName"=@P12; > > INSERT INTO "Northwind".."Categories" > ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', > > N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 > nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 > nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', > > 99, N'CatName', N'Updated category description', > 99, N'CatName', > 66, N'DelCatName', > 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', > 662, N'newCatName', N'new Cat description' > > Live connection to the back-end is needed only on opening of the source > recordsets and on applying batch changes. Therefore connections can be > pooled/should be possible to pool (I didn't experiment here) and to share > them between several (many) front-end applications/clients if these > connections are opened using ActiveX DCOM servers running on server > PCs/.NET > Remoting(?) objects. As well as actual disconnected recordset creation and > reconnection and backend update can be executed on (Web) server side - > depending on whatever is used on backend.... > > Yes, I know dynamic SPs accessing database tables directly do not look > nice > but there could be many ways to make it working differently using > predefined > stored procedures (e.g. by serializing ADODB recordset into XML file(s) > where all the updates (inserts, deletes, updates) are coded special easily > parsed way and then reformat these XML files into the calls to the > predefined stored procedures etc.etc. > > Here is how it looks this saved XML(no direct correspondence with > presented > above batch T-SQL update) : > > - xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" > xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> > - > - > - rs:basecatalog="Northwind" rs:basetable="Categories1" > rs:basecolumn="CategoryID"> > rs:fixedlength="true" rs:maybenull="false" /> > > - rs:writeunknown="true" > rs:basecatalog="Northwind" rs:basetable="Categories1" > rs:basecolumn="CategoryName"> > > > - rs:writeunknown="true" rs:basecatalog="Northwind" > rs:basetable="Categories1" > rs:basecolumn="Description"> > > > > > > - > > > > /> > > > > > - > - > > > > > - > - > > > > > /> > - > /> > > - > > > > > > I do not post code here now because I wanted to experiment more and > because > it would be useful if somebody else tries to repeat the "trick" described > above - if it will work for them then a whole set of new opportunities to > use MS Access as a real development tool will be opened.... > > I will post code after additional tests within one-two weeks when it will > become clear that it works. > > Please post any links here if you think that my posted information looks > like "wheel reinvention" or you think it doesn't have practical > application > because of this or that several limitations etc.etc. > > Thank you. > > Shamil > > P.S. I have installed on my PC: > > - MS Windows 2003 Server SP1 > - MS Office 2003/MS Access 2003 SP1 > - MS SQL 2000 SP3a > - MDAC 2.8 > - NET Framework 1.1 and 2.0 > - Visual Studio 2003 and 2005 > - I have also MS SQL Server 2005 Express edition but I didn't experiment > with it > > P. P.S. Yes, I didn't talk about identity(autonumber) fields - I generally > use GUIDs for PKs. > To properly manage numeric identity values some more tricks are needed - > I'd > be grateful if somebody post information on this subject > (updategram/diffgram XML is a direct solution here probably - and > serialized/saved ADODB batch update can be converted into diffgrams by > using > XSLT or VB(A) or VB.NET/C#/C++ code etc.) > <<< tail skipped >>> -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Mon Mar 13 12:23:27 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Mon, 13 Mar 2006 13:23:27 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: Message-ID: <006c01c646cb$3a0c0710$647aa8c0@ColbyM6805> Charlotte, In fact, when the form binds to an ADO recordset, RecordsetClone "becomes" an ADO recordset. I dimmed an object and set the object to the RecordsetClone, and the resulting object has the properties / methods of an ADO recordset. I did not try dimming an ADODB.Recordset and setting that to the RecordsetClone, but I will try it. It appears that Access morphs RecordsetClone to whatever recordset type is required. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Monday, March 13, 2006 12:04 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets John, RecordsetClone is DAO. With ADO, you can clone a recordset, but it is a new recordset and can't be used the way you use recordsetclone. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Monday, March 13, 2006 4:43 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access XP forms bound to ADO recordsets What I am asking though is whether RecordsetClone still exists, and is somehow populated from whatever data source the form is bound to? After binding to an ADO recordset, attempts to access RecordsetClone throw an error "Type mismatch" on the line of code Set mrst = mfrm.RecordsetClone Mrst is defined in the class header as a DAO recordset. I might be able to get away with generalizing mrst to an object. NOTE: I tried that, and while the "Set" now works, the objects have different methods so any code using the object has to have different code paths written. So apparently RecordsetClone is indeed initialized as an ADO recordset which makes all of my DAO specific code (FindFirst for example) throw a runtime error if encountered. If I am going to do this, I will need to branch my code based on the Access Version as well as whether I actually used the ADO recordset code. >Please do not spend a lot of time on it now or at least do not plan to broadly use it in your development until Luckily, in my framework, I can turn on and off capabilities by examining SysVars. It does sound like the instability objections were from an early adopter. Like most things in Software, trying to use any specific feature in Access in the early stages of its introduction can be risky. It is possible (and hopefully true) that they found and fixed the bugs causing such instability. One of the problems with influential early adopters is that people read their warnings and never use a feature because they reported it unstable. If they never go back to revisit it, then it is forever labeled unstable. Perhaps it is time for other influentials (you and I and this list) to revisit this feature and see if it can be used now? John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Monday, March 13, 2006 3:20 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Does RecordsetClone become invalid? No, it doesn't, John. But it has another name. Similar method for ADODB recordsets is called Clone. > I am looking at this now. Please do not spend a lot of time on it now or at least do not plan to broadly use it in your development until it's very well tested and its limitations are clearly defined - there are rumors this feature introduce instability in MS Access work. I have doubts in that because I haven't seen any time MS Access crashes when bound to disconnected ADODB recordsets the way I described. On the other hand I did do "fight" in my work in the past with MS Access GPFs, when listboxes/comboboxes were bound to ADODB recordsets but as far as I have found this wasn't the problem with ADODB recordsets but the problem that in that case late bound DAO or ADODB recordets were used and these latter were opened in library mdb and there was a bug when DAO recordsets were used for ADP's forms and that was the cause of the floating GPF trouble or something like that. WIth this problem fixed the applications work now well for more than a year. Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 13, 2006 8:15 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > I am looking at this now. Do you know if binding to an ADO recordset > changes the data type of the RecordsetClone. I was under the > impression that RecordsetClone was always a DAO recordset. Does > RecordsetClone become invalid? I use RecordsetClone to perform many > different operations, including syncing the form to a combo and VV. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 7:12 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > Dan, > > Yes, I have seen that - in fact I did do google before I started my > experimenting. > In KB281998 "How to bind Microsoft Access forms to ADO recordsets" > http://support.microsoft.com/kb/281998 they talk AFAIS about binding to > connected ADODB recordsets. > > The original question (as I got it) was hwo to bind to disconnected ADODB > recordsets and then implied question is: is there a simple and generic way > to translate/transfer changes from disconnected recordset to the > backend... > > As it happens there is a trick to do that described in my previous > posting. > > I did do google now additionally and I did find that the similar trick is > described already several years ago. They do it a little bit differently > but > the principle is the same - they write: > > <<< > Now, the clever tricks: > > 1. Open a static, optimistic batch recordset, disconnect it, save it to a > simple in-memory stream object, set the stream position to zero so it can > be > read from the beginning, and open a new copy of the recordset from the > stream. Now, bind one copy to the form, and start working. When you're > ready to do a batch update, first compare the 2 recordsets for changes, > and > apply any adds, changes, and deletes to the unbound recordset, then run > BatchUpdate from the unbound recordset. Note that Access sets values of > IDENTITY columns to zero, so that's an easy way to filter for added > records. > ... >>>> > > This excerpt is from this posting (watch line wraps!): > > <<< > ADP: A2K vs 2002? > From: Steve Jorgensen > Date: Sun, Jul 21 2002 7:29 pm > > http://groups.google.com/group/comp.databases.ms-access/browse_frm/threa d/17 > 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/ grou > ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3 Dima > ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3De n#f2 > 0d79536029060e >>>> > > And here is another related information: > > <<< > From: Steve Jorgensen > Date: Thurs, Nov 28 2002 11:45 pm > > http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071 f8c9 > ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UT F-8& > oe=UTF-8&rnum=2 >>>> > > So they approve that my trick is legal and is a kind of "wheel > reinwention" > - the difference of my "wheel" is that I do trasnslate changes to the > second disconected recordset when form events fire - the disadvantage > of my method is that it needs more tricky coding, which still needs to > be well tested, > the advantage - is that as soons as the changes on the current row are > done > I can serialize second disconnected recordset to xml file and in the case > of > client app's failure batch changes will not be lost etc. > > Strange that such a valuable information first time published in summer > 2002 > about using ADODB disconnected recordsets is so rarely discussed on > Internet > - everybody in this World is abandoning "MS Access toy" and switiching to > .NET development? > > But this feature properly applied makes MS Access FEs good candidates to > be > used as true FEs - without any significant performance/locking hits on BEs > I > mean.... > > Shamil > > ----- Original Message ----- > From: "Dan Waters" > To: "'Access Developers discussion and problem solving'" > > Sent: Sunday, March 12, 2006 2:27 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> I've been reading you post with interest. Have you looked at MS KB >> 281998? >> This gives a method for an Access form to connect to SQL Server, Jet, and >> Oracle BE's and be updateable. They identify a specific provider to do >> this >> that can be used to set up bound forms. >> >> The provider is: "Microsoft.Access.OLEDB.10.0" >> >> I have not tried this, but thought you might be interested. >> >> Dan Waters >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >> Salakhetdinov >> Sent: Saturday, March 11, 2006 5:04 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> John at all, >> >> I did make some more experimenting and it happens that MS Access 2003 >> (and >> probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with >> disconnected updatable ADODB recordsets with both MS Access and MS SQL >> backends. >> >> I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access >> backend and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. >> >> Some more testing/experimenting is needed but I did do quite some tests >> and >> they worked OK. >> >> As I wrote already this feature is new for me and a (big) surprise - this >> is >> a functionality I have been waiting for 8+ years since 1997 when we made >> here a custom framework to work with MS Access and MS SQL in disconnected >> mode, but it was rather heavyweight and because of the bugs in MS Access >> I >> decided to not make it broadly available.... >> >> Basically this means that MS Access forms can be used in bound mode with >> very low performance hit to the MS Access and MS SQL backends - the same >> way >> ADODB disconnected recordsets are used in n-tier applications. >> >> The programming of form's events processing is relatively simple and it >> should be possible to generalize it to make a simple lightweight >> framework in case back-end database(s) follow systematic naming >> conventions and database models design principles. >> >> The "trick" is to open two ADODB recordsets: >> >> - one with batch update enabled >> - second without batch update >> >> and make them disconnected. >> >> Then bind MS Access form to the second recordset (without batch update >> enabled). >> >> (I did experiemnet with recordsets having several source rows as a >> generic case to see are there any chances to use MS Access subforms >> in bound editable mode with disconnected ADODB recordsets) >> >> When MS Access form fires insert, update, delete events all the changes >> can >> be easily translated from the second recordset (where these changes are >> made >> "automagically" because MS Access form is bound to it) to the first >> recordset. >> >> On form close(or using special button) first recordset can be reconnected >> to >> the backend and batch update applied. (Of course in the case of special >> button to apply batch changes the two disconnected recordsets have to be >> resynchronized after updates). >> >> etc. >> >> Here is how "automagically" generated by ADODB batch update looks in the >> case of MS SQL backend (Info obtained from MS SQL profiler, line breaks >> are >> inserted manually to make it readable): >> >> exec sp_executesql >> >> N'UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE >> "CategoryID"=@P4 >> AND "CategoryName"=@P5; >> >> DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND >> "CategoryName"=@P7; >> >> UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE >> "CategoryID"=@P11 AND "CategoryName"=@P12; >> >> INSERT INTO "Northwind".."Categories" >> ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', >> >> N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 >> nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 >> nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', >> >> 99, N'CatName', N'Updated category description', 99, N'CatName', 66, >> N'DelCatName', 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', >> 662, N'newCatName', N'new Cat description' >> >> Live connection to the back-end is needed only on opening of the source >> recordsets and on applying batch changes. Therefore connections can be >> pooled/should be possible to pool (I didn't experiment here) and to share >> them between several (many) front-end applications/clients if these >> connections are opened using ActiveX DCOM servers running on server >> PCs/.NET >> Remoting(?) objects. As well as actual disconnected recordset creation >> and >> reconnection and backend update can be executed on (Web) server side - >> depending on whatever is used on backend.... >> >> Yes, I know dynamic SPs accessing database tables directly do not look >> nice >> but there could be many ways to make it working differently using >> predefined stored procedures (e.g. by serializing ADODB recordset >> into XML file(s) >> where all the updates (inserts, deletes, updates) are coded special >> easily parsed way and then reformat these XML files into the calls to >> the predefined stored procedures etc.etc. >> >> Here is how it looks this saved XML(no direct correspondence with >> presented above batch T-SQL update) : >> >> - > xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" >> xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> >> - >> - >> - > rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryID"> >> > rs:fixedlength="true" rs:maybenull="false" /> >> - > rs:writeunknown="true" >> rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryName"> >> >> >> - > rs:writeunknown="true" rs:basecatalog="Northwind" >> rs:basetable="Categories1" >> rs:basecolumn="Description"> >> >> >> >> >> >> - >> >> > CategoryID="3" CategoryName="Confections" Description="Desserts, >> candies, and sweet breads" /> >> > Description="Cheeses" >> /> >> >> >> >> >> - >> - >> >> >> >> >> - >> - >> >> >> >> >> > /> >> - >> > /> >> >> - >> >> >> >> >> >> I do not post code here now because I wanted to experiment more and >> because it would be useful if somebody else tries to repeat the >> "trick" described >> above - if it will work for them then a whole set of new opportunities to >> use MS Access as a real development tool will be opened.... >> >> I will post code after additional tests within one-two weeks when it will >> become clear that it works. >> >> Please post any links here if you think that my posted information looks >> like "wheel reinvention" or you think it doesn't have practical >> application because of this or that several limitations etc.etc. >> >> Thank you. >> >> Shamil >> >> P.S. I have installed on my PC: >> >> - MS Windows 2003 Server SP1 >> - MS Office 2003/MS Access 2003 SP1 >> - MS SQL 2000 SP3a >> - MDAC 2.8 >> - NET Framework 1.1 and 2.0 >> - Visual Studio 2003 and 2005 >> - I have also MS SQL Server 2005 Express edition but I didn't experiment >> with it >> >> P. P.S. Yes, I didn't talk about identity(autonumber) fields - I >> generally use GUIDs for PKs. >> To properly manage numeric identity values some more tricks are needed - >> I'd >> be grateful if somebody post information on this subject >> (updategram/diffgram XML is a direct solution here probably - and >> serialized/saved ADODB batch update can be converted into diffgrams by >> using >> XSLT or VB(A) or VB.NET/C#/C++ code etc.) >> > > <<< tail skipped >>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Mon Mar 13 12:27:55 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Mon, 13 Mar 2006 13:27:55 -0500 Subject: [AccessD] Discovering Access version at runtime-wasAccessXPforms bound to ADO recordsets In-Reply-To: Message-ID: <006d01c646cb$d9a0fe70$647aa8c0@ColbyM6805> So many ways to do anything. Thanks, John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Monday, March 13, 2006 12:08 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Discovering Access version at runtime-wasAccessXPforms bound to ADO recordsets John, What you want is DBEngine(0)(0).Version Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Sunday, March 12, 2006 8:48 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Discovering Access version at runtime -wasAccessXPforms bound to ADO recordsets LOL, Thanks Stuart. Now if I could only find the FM. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stuart McLachlan Sent: Sunday, March 12, 2006 10:52 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Discovering Access version at runtime - wasAccessXPforms bound to ADO recordsets On 12 Mar 2006 at 22:18, John Colby wrote: > >John, you want to check the version and then load code based on the > version? > > Yes, the ACCESS version. I have found stuff about checking the > registry, but this really only addresses what is INSTALLED, not what > is currently running. > RTFM? :-) Version Returns a String indicating the version number of the currently installed copy of Microsoft Access. Read-only. expression.Version expression Required. An expression that returns one of the objects in the Applies To list. Example The following example displays the version and build number of the currently-installed copy of Microsoft Access. MsgBox "You are currently running Microsoft Access, " _ & " version " & Application.Version & ", build " _ & Application.Build & "." -- Stuart -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Mon Mar 13 12:44:10 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Mon, 13 Mar 2006 21:44:10 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <200603131535.k2DFZpu46826@ultradnt.com> Message-ID: <004401c646d1$1363e1e0$6501a8c0@Nant> > Doing unbound in a "header" record (invoice, for instance) is pretty > straightforward, especially when starting with a bound form and then > deleting the record source property Steve, Myself and John are bounders and we are very serious guys ;) I haven't asked John to approve this statement but I expect he will agree - am I right, John? :) So we are talking here about bound forms (and reports) but bound to ADODB recordsets. Just to make it clear what is discussed in this thread - this is a technique partially described here - http://support.microsoft.com/kb/281998. The difference we are talking about is that we are "exploring the waters" of MS Access forms bound to DISCONNECTED ADODB recordsets. The purpose to do that is to have backend DB(s)unlocked (not even touched by MS Access FE) while the extracted data are edited in MS Access form with subform(s) when both form and its subform(s) may have potentially many rows, which we can edit using built-in MS Access features and then post ALL the changes back at once in an ADODB "AUTOMAGIC" BATH UPDATE or in manually prepared batch update in one transaction etc. (There are other implied very useful features as serializing/transmitting/deserializing/storing/.. batch updates, having light-weight MS Access FEs etc. - but all that will make sense to discuss only when the main technique will start to work stable enough to be used in real life applications.) > I had the best device ever created for holding columns > and rows of data: Access' own Tables! True - I did write such code a long ago for MS Access 97, many others did do that - the difference we're talking about is that we wanted to use bound forms but we do not want to be bound to MS Access (local) tables and we wanted to have as little as possible custom coding and if have such coding then rather generic and flexible and scalable. > and also requires home-grown locking (I > added a bit field to invoice to indicate "in use"), Yes, it will need to use something like that of course - and this is always needed for the optimistic locking, e.g. when one is working in fully unbound mode in VB6 or C#/VB.NET/C++.... Shamil ----- Original Message ----- From: "Steve Conklin" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 13, 2006 6:36 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >I have been following this thread with great interest. When faced with >this > issue, I have gone completely the opposite direction - that is not > bleeding > edge but back to Access basics. This was in an Access FE, MSSQL BE. > > Doing unbound in a "header" record (invoice, for instance) is pretty > straightforward, especially when starting with a bound form and then > deleting the record source property, so all controls have the same name as > fields. The details in the subform (invoice line-items) are another > matter. > After several failed attempts at a disconnected ADO recordset, I thought > about arrays, dictionaries, collections, converting somehow ADO to DOA at > runtime, but finally came back to Access iteslf - I had the best device > ever > created for holding columns and rows of data: > Access' own Tables! > > They provide nearly code-free storage, easy creation of new rows, are > easily > displayed in bound sub forms, etc. > I appended all the tbl_invoice_details to tbl_invoice_details_local - > which > has the exact same structure, except that the pk-autonumber field in the > local is neither. It is a long with a default of 0 (indicates new when > writing back). Also added a y/n field to indicate "deleted" (sub form > filters for deleted=0). This is decidedly low-tech as compared to > serializing XML streams and such, and also requires home-grown locking (I > added a bit field to invoice to indicate "in use"), but it does work by > virtue of staying in Access sweet-spot rather than venturing in to > uncharted > waters. > > > Steve > <<< tail skipped>>> From shamil at users.mns.ru Mon Mar 13 13:04:56 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Mon, 13 Mar 2006 22:04:56 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: Message-ID: <004501c646d1$1395ee60$6501a8c0@Nant> > Have you tried using an unbound form with > a disconnected recordset? Charlotte, Yes, bind a form to ADODB even CONNECTED recordsets works - it's described here - http://support.microsoft.com/kb/281998. Binding a form to ADODB DISCONNECTED recordset also works but changes can't be submitted to BE without "clever tricks", which were mentioned here. And these "clever tricks" as Steve Jorgensen found several years ago put "MS Access on the knees" - in fact kill it completely often without even any error message - in the case VBA code is used to set values of MS Access forms bound to disconnected ADODB recordsets when these recordsets are created from MS SQL back-end data. I think I have found a workaround, which lets to bypass this limitation. I'm testing it now here. I will post the source code for this "crash" test tomorrow. So far there is "some light in the end of the tunnel" - I did run in total ~50000 forms' openings, data changes VIA CONTROLS, back-end updates, form closing for four different forms of Northwind sample app, all bound to disconnected ADODB recordsets getting opened/closed automatically in five running on one PC MS Access mdbs, two of which were talking to MS SQL BE and three of which were talking to MS Access BE.... The results are promising - the applications DID NOT CRASH. But they stopped in the end with strange error message: <+ Run-time error '3011'. The Microsoft Jet database engine could not find the object ''. Make sure the object exists and that you spell its name and the path name correctly. -> This error message was raised for DoCmd.Openform with legal parameters etc. I have to make some more fine grained tests and run them more before publishing them to not involve you and others into meaningless adventure... Shamil ----- Original Message ----- From: "Charlotte Foust" To: "Access Developers discussion and problem solving" Sent: Monday, March 13, 2006 8:11 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > I'm just dipping a toe in here quickly before I get back to work. Have > you tried using an unbound form with a disconnected recordset? I swear > I've done this, but I'll have to look for a demo. > > > Charlotte Foust > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 4:12 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > Dan, > > Yes, I have seen that - in fact I did do google before I started my > experimenting. > In KB281998 "How to bind Microsoft Access forms to ADO recordsets" > http://support.microsoft.com/kb/281998 they talk AFAIS about binding to > connected ADODB recordsets. > > The original question (as I got it) was hwo to bind to disconnected > ADODB recordsets and then implied question is: is there a simple and > generic way to translate/transfer changes from disconnected recordset to > the backend... > > As it happens there is a trick to do that described in my previous > posting. > > I did do google now additionally and I did find that the similar trick > is described already several years ago. They do it a little bit > differently but the principle is the same - they write: > > <<< > Now, the clever tricks: > > 1. Open a static, optimistic batch recordset, disconnect it, save it to > a simple in-memory stream object, set the stream position to zero so it > can be read from the beginning, and open a new copy of the recordset > from the stream. Now, bind one copy to the form, and start working. > When you're ready to do a batch update, first compare the 2 recordsets > for changes, and apply any adds, changes, and deletes to the unbound > recordset, then run BatchUpdate from the unbound recordset. Note that > Access sets values of IDENTITY columns to zero, so that's an easy way to > filter for added records. > ... >>>> > > This excerpt is from this posting (watch line wraps!): > > <<< > ADP: A2K vs 2002? > From: Steve Jorgensen > Date: Sun, Jul 21 2002 7:29 pm > > http://groups.google.com/group/comp.databases.ms-access/browse_frm/threa > d/1753dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&pr > ev=/groups%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset% > 26safe%3Dimages%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr > %3D%26hl%3Den#f20d79536029060e >>>> > > And here is another related information: > > <<< > From: Steve Jorgensen > Date: Thurs, Nov 28 2002 11:45 pm > > http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071 > f8c9?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&i > e=UTF-8&oe=UTF-8&rnum=2 >>>> > > So they approve that my trick is legal and is a kind of "wheel > reinwention" - the difference of my "wheel" is that I do trasnslate > changes to the second disconected recordset when form events fire - the > disadvantage of my method is that it needs more tricky coding, which > still needs to be well tested, the advantage - is that as soons as the > changes on the current row are done I can serialize second disconnected > recordset to xml file and in the case of client app's failure batch > changes will not be lost etc. > > Strange that such a valuable information first time published in summer > 2002 about using ADODB disconnected recordsets is so rarely discussed on > Internet - everybody in this World is abandoning "MS Access toy" and > switiching to .NET development? > > But this feature properly applied makes MS Access FEs good candidates to > be used as true FEs - without any significant performance/locking hits > on BEs I mean.... > > Shamil > > ----- Original Message ----- > From: "Dan Waters" > To: "'Access Developers discussion and problem solving'" > > Sent: Sunday, March 12, 2006 2:27 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> I've been reading you post with interest. Have you looked at MS KB >> 281998? >> This gives a method for an Access form to connect to SQL Server, Jet, > and >> Oracle BE's and be updateable. They identify a specific provider to > do >> this >> that can be used to set up bound forms. >> >> The provider is: "Microsoft.Access.OLEDB.10.0" >> >> I have not tried this, but thought you might be interested. >> >> Dan Waters >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >> Salakhetdinov >> Sent: Saturday, March 11, 2006 5:04 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> John at all, >> >> I did make some more experimenting and it happens that MS Access 2003 > (and >> probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with >> disconnected updatable ADODB recordsets with both MS Access and MS SQL >> backends. >> >> I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access > backend >> and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. >> >> Some more testing/experimenting is needed but I did do quite some > tests >> and >> they worked OK. >> >> As I wrote already this feature is new for me and a (big) surprise - > this >> is >> a functionality I have been waiting for 8+ years since 1997 when we > made >> here a custom framework to work with MS Access and MS SQL in > disconnected >> mode, but it was rather heavyweight and because of the bugs in MS > Access I >> decided to not make it broadly available.... >> >> Basically this means that MS Access forms can be used in bound mode > with >> very low performance hit to the MS Access and MS SQL backends - the > same >> way >> ADODB disconnected recordsets are used in n-tier applications. >> >> The programming of form's events processing is relatively simple and > it >> should be possible to generalize it to make a simple lightweight > framework >> in case back-end database(s) follow systematic naming conventions and >> database models design principles. >> >> The "trick" is to open two ADODB recordsets: >> >> - one with batch update enabled >> - second without batch update >> >> and make them disconnected. >> >> Then bind MS Access form to the second recordset (without batch update >> enabled). >> >> (I did experiemnet with recordsets having several source rows as a > generic >> case to see are there any chances to use MS Access subforms in bound >> editable mode with disconnected ADODB recordsets) >> >> When MS Access form fires insert, update, delete events all the > changes >> can >> be easily translated from the second recordset (where these changes > are >> made >> "automagically" because MS Access form is bound to it) to the first >> recordset. >> >> On form close(or using special button) first recordset can be > reconnected >> to >> the backend and batch update applied. (Of course in the case of > special >> button to apply batch changes the two disconnected recordsets have to > be >> resynchronized after updates). >> >> etc. >> >> Here is how "automagically" generated by ADODB batch update looks in > the >> case of MS SQL backend (Info obtained from MS SQL profiler, line > breaks >> are >> inserted manually to make it readable): >> >> exec sp_executesql >> >> N'UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE >> "CategoryID"=@P4 >> AND "CategoryName"=@P5; >> >> DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND >> "CategoryName"=@P7; >> >> UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE >> "CategoryID"=@P11 AND "CategoryName"=@P12; >> >> INSERT INTO "Northwind".."Categories" >> ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', >> >> N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 > int, at P7 >> nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 >> nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', >> >> 99, N'CatName', N'Updated category description', >> 99, N'CatName', >> 66, N'DelCatName', >> 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', >> 662, N'newCatName', N'new Cat description' >> >> Live connection to the back-end is needed only on opening of the > source >> recordsets and on applying batch changes. Therefore connections can be >> pooled/should be possible to pool (I didn't experiment here) and to > share >> them between several (many) front-end applications/clients if these >> connections are opened using ActiveX DCOM servers running on server >> PCs/.NET >> Remoting(?) objects. As well as actual disconnected recordset creation > and >> reconnection and backend update can be executed on (Web) server side - >> depending on whatever is used on backend.... >> >> Yes, I know dynamic SPs accessing database tables directly do not look >> nice >> but there could be many ways to make it working differently using >> predefined >> stored procedures (e.g. by serializing ADODB recordset into XML > file(s) >> where all the updates (inserts, deletes, updates) are coded special > easily >> parsed way and then reformat these XML files into the calls to the >> predefined stored procedures etc.etc. >> >> Here is how it looks this saved XML(no direct correspondence with >> presented >> above batch T-SQL update) : >> >> - > xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" >> xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> >> - >> - >> - rs:writeunknown="true" >> rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryID"> >> > rs:fixedlength="true" rs:maybenull="false" /> >> >> - > rs:writeunknown="true" >> rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryName"> >> /> >> >> - > rs:writeunknown="true" rs:basecatalog="Northwind" >> rs:basetable="Categories1" >> rs:basecolumn="Description"> >> /> >> >> >> >> >> - >> >> >> Description="Desserts, >> candies, and sweet breads" /> >> Description="Cheeses" >> /> >> Description="Breads, >> crackers, pasta, and cereal" /> >> Description="Prepared >> meats" /> >> >> >> - >> - >> >> >> >> >> - >> - >> >> >> >> >> Description="Inserted2" >> /> >> - >> Description="inserted 3" >> /> >> >> - >> /> >> >> >> >> >> I do not post code here now because I wanted to experiment more and >> because >> it would be useful if somebody else tries to repeat the "trick" > described >> above - if it will work for them then a whole set of new opportunities > to >> use MS Access as a real development tool will be opened.... >> >> I will post code after additional tests within one-two weeks when it > will >> become clear that it works. >> >> Please post any links here if you think that my posted information > looks >> like "wheel reinvention" or you think it doesn't have practical >> application >> because of this or that several limitations etc.etc. >> >> Thank you. >> >> Shamil >> >> P.S. I have installed on my PC: >> >> - MS Windows 2003 Server SP1 >> - MS Office 2003/MS Access 2003 SP1 >> - MS SQL 2000 SP3a >> - MDAC 2.8 >> - NET Framework 1.1 and 2.0 >> - Visual Studio 2003 and 2005 >> - I have also MS SQL Server 2005 Express edition but I didn't > experiment >> with it >> >> P. P.S. Yes, I didn't talk about identity(autonumber) fields - I > generally >> use GUIDs for PKs. >> To properly manage numeric identity values some more tricks are needed > - >> I'd >> be grateful if somebody post information on this subject >> (updategram/diffgram XML is a direct solution here probably - and >> serialized/saved ADODB batch update can be converted into diffgrams by >> using >> XSLT or VB(A) or VB.NET/C#/C++ code etc.) >> > > <<< tail skipped >>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Mon Mar 13 13:02:32 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Mon, 13 Mar 2006 11:02:32 -0800 Subject: [AccessD] Access XP forms bound to ADO recordsets Message-ID: That must be new because I know it didn't do that in 2000 and I haven't been allowed to work in ADO much in XP. Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Monday, March 13, 2006 10:23 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Charlotte, In fact, when the form binds to an ADO recordset, RecordsetClone "becomes" an ADO recordset. I dimmed an object and set the object to the RecordsetClone, and the resulting object has the properties / methods of an ADO recordset. I did not try dimming an ADODB.Recordset and setting that to the RecordsetClone, but I will try it. It appears that Access morphs RecordsetClone to whatever recordset type is required. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Monday, March 13, 2006 12:04 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets John, RecordsetClone is DAO. With ADO, you can clone a recordset, but it is a new recordset and can't be used the way you use recordsetclone. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Monday, March 13, 2006 4:43 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access XP forms bound to ADO recordsets What I am asking though is whether RecordsetClone still exists, and is somehow populated from whatever data source the form is bound to? After binding to an ADO recordset, attempts to access RecordsetClone throw an error "Type mismatch" on the line of code Set mrst = mfrm.RecordsetClone Mrst is defined in the class header as a DAO recordset. I might be able to get away with generalizing mrst to an object. NOTE: I tried that, and while the "Set" now works, the objects have different methods so any code using the object has to have different code paths written. So apparently RecordsetClone is indeed initialized as an ADO recordset which makes all of my DAO specific code (FindFirst for example) throw a runtime error if encountered. If I am going to do this, I will need to branch my code based on the Access Version as well as whether I actually used the ADO recordset code. >Please do not spend a lot of time on it now or at least do not plan to broadly use it in your development until Luckily, in my framework, I can turn on and off capabilities by examining SysVars. It does sound like the instability objections were from an early adopter. Like most things in Software, trying to use any specific feature in Access in the early stages of its introduction can be risky. It is possible (and hopefully true) that they found and fixed the bugs causing such instability. One of the problems with influential early adopters is that people read their warnings and never use a feature because they reported it unstable. If they never go back to revisit it, then it is forever labeled unstable. Perhaps it is time for other influentials (you and I and this list) to revisit this feature and see if it can be used now? John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Monday, March 13, 2006 3:20 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Does RecordsetClone become invalid? No, it doesn't, John. But it has another name. Similar method for ADODB recordsets is called Clone. > I am looking at this now. Please do not spend a lot of time on it now or at least do not plan to broadly use it in your development until it's very well tested and its limitations are clearly defined - there are rumors this feature introduce instability in MS Access work. I have doubts in that because I haven't seen any time MS Access crashes when bound to disconnected ADODB recordsets the way I described. On the other hand I did do "fight" in my work in the past with MS Access GPFs, when listboxes/comboboxes were bound to ADODB recordsets but as far as I have found this wasn't the problem with ADODB recordsets but the problem that in that case late bound DAO or ADODB recordets were used and these latter were opened in library mdb and there was a bug when DAO recordsets were used for ADP's forms and that was the cause of the floating GPF trouble or something like that. WIth this problem fixed the applications work now well for more than a year. Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 13, 2006 8:15 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > I am looking at this now. Do you know if binding to an ADO recordset > changes the data type of the RecordsetClone. I was under the > impression that RecordsetClone was always a DAO recordset. Does > RecordsetClone become invalid? I use RecordsetClone to perform many > different operations, including syncing the form to a combo and VV. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Saturday, March 11, 2006 7:12 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > Dan, > > Yes, I have seen that - in fact I did do google before I started my > experimenting. > In KB281998 "How to bind Microsoft Access forms to ADO recordsets" > http://support.microsoft.com/kb/281998 they talk AFAIS about binding to > connected ADODB recordsets. > > The original question (as I got it) was hwo to bind to disconnected ADODB > recordsets and then implied question is: is there a simple and generic way > to translate/transfer changes from disconnected recordset to the > backend... > > As it happens there is a trick to do that described in my previous > posting. > > I did do google now additionally and I did find that the similar trick is > described already several years ago. They do it a little bit differently > but > the principle is the same - they write: > > <<< > Now, the clever tricks: > > 1. Open a static, optimistic batch recordset, disconnect it, save it to a > simple in-memory stream object, set the stream position to zero so it can > be > read from the beginning, and open a new copy of the recordset from the > stream. Now, bind one copy to the form, and start working. When you're > ready to do a batch update, first compare the 2 recordsets for changes, > and > apply any adds, changes, and deletes to the unbound recordset, then run > BatchUpdate from the unbound recordset. Note that Access sets values of > IDENTITY columns to zero, so that's an easy way to filter for added > records. > ... >>>> > > This excerpt is from this posting (watch line wraps!): > > <<< > ADP: A2K vs 2002? > From: Steve Jorgensen > Date: Sun, Jul 21 2002 7:29 pm > > http://groups.google.com/group/comp.databases.ms-access/browse_frm/threa d/17 > 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/ grou > ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3 Dima > ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3De n#f2 > 0d79536029060e >>>> > > And here is another related information: > > <<< > From: Steve Jorgensen > Date: Thurs, Nov 28 2002 11:45 pm > > http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071 f8c9 > ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UT F-8& > oe=UTF-8&rnum=2 >>>> > > So they approve that my trick is legal and is a kind of "wheel > reinwention" > - the difference of my "wheel" is that I do trasnslate changes to the > second disconected recordset when form events fire - the disadvantage > of my method is that it needs more tricky coding, which still needs to > be well tested, > the advantage - is that as soons as the changes on the current row are > done > I can serialize second disconnected recordset to xml file and in the case > of > client app's failure batch changes will not be lost etc. > > Strange that such a valuable information first time published in summer > 2002 > about using ADODB disconnected recordsets is so rarely discussed on > Internet > - everybody in this World is abandoning "MS Access toy" and switiching to > .NET development? > > But this feature properly applied makes MS Access FEs good candidates to > be > used as true FEs - without any significant performance/locking hits on BEs > I > mean.... > > Shamil > > ----- Original Message ----- > From: "Dan Waters" > To: "'Access Developers discussion and problem solving'" > > Sent: Sunday, March 12, 2006 2:27 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> I've been reading you post with interest. Have you looked at MS KB >> 281998? >> This gives a method for an Access form to connect to SQL Server, Jet, and >> Oracle BE's and be updateable. They identify a specific provider to do >> this >> that can be used to set up bound forms. >> >> The provider is: "Microsoft.Access.OLEDB.10.0" >> >> I have not tried this, but thought you might be interested. >> >> Dan Waters >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >> Salakhetdinov >> Sent: Saturday, March 11, 2006 5:04 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> John at all, >> >> I did make some more experimenting and it happens that MS Access 2003 >> (and >> probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with >> disconnected updatable ADODB recordsets with both MS Access and MS SQL >> backends. >> >> I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access >> backend and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. >> >> Some more testing/experimenting is needed but I did do quite some tests >> and >> they worked OK. >> >> As I wrote already this feature is new for me and a (big) surprise - this >> is >> a functionality I have been waiting for 8+ years since 1997 when we made >> here a custom framework to work with MS Access and MS SQL in disconnected >> mode, but it was rather heavyweight and because of the bugs in MS Access >> I >> decided to not make it broadly available.... >> >> Basically this means that MS Access forms can be used in bound mode with >> very low performance hit to the MS Access and MS SQL backends - the same >> way >> ADODB disconnected recordsets are used in n-tier applications. >> >> The programming of form's events processing is relatively simple and it >> should be possible to generalize it to make a simple lightweight >> framework in case back-end database(s) follow systematic naming >> conventions and database models design principles. >> >> The "trick" is to open two ADODB recordsets: >> >> - one with batch update enabled >> - second without batch update >> >> and make them disconnected. >> >> Then bind MS Access form to the second recordset (without batch update >> enabled). >> >> (I did experiemnet with recordsets having several source rows as a >> generic case to see are there any chances to use MS Access subforms >> in bound editable mode with disconnected ADODB recordsets) >> >> When MS Access form fires insert, update, delete events all the changes >> can >> be easily translated from the second recordset (where these changes are >> made >> "automagically" because MS Access form is bound to it) to the first >> recordset. >> >> On form close(or using special button) first recordset can be reconnected >> to >> the backend and batch update applied. (Of course in the case of special >> button to apply batch changes the two disconnected recordsets have to be >> resynchronized after updates). >> >> etc. >> >> Here is how "automagically" generated by ADODB batch update looks in the >> case of MS SQL backend (Info obtained from MS SQL profiler, line breaks >> are >> inserted manually to make it readable): >> >> exec sp_executesql >> >> N'UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE >> "CategoryID"=@P4 >> AND "CategoryName"=@P5; >> >> DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND >> "CategoryName"=@P7; >> >> UPDATE "Northwind".."Categories" SET >> "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE >> "CategoryID"=@P11 AND "CategoryName"=@P12; >> >> INSERT INTO "Northwind".."Categories" >> ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', >> >> N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 int, at P7 >> nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 >> nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', >> >> 99, N'CatName', N'Updated category description', 99, N'CatName', 66, >> N'DelCatName', 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', >> 662, N'newCatName', N'new Cat description' >> >> Live connection to the back-end is needed only on opening of the source >> recordsets and on applying batch changes. Therefore connections can be >> pooled/should be possible to pool (I didn't experiment here) and to share >> them between several (many) front-end applications/clients if these >> connections are opened using ActiveX DCOM servers running on server >> PCs/.NET >> Remoting(?) objects. As well as actual disconnected recordset creation >> and >> reconnection and backend update can be executed on (Web) server side - >> depending on whatever is used on backend.... >> >> Yes, I know dynamic SPs accessing database tables directly do not look >> nice >> but there could be many ways to make it working differently using >> predefined stored procedures (e.g. by serializing ADODB recordset >> into XML file(s) >> where all the updates (inserts, deletes, updates) are coded special >> easily parsed way and then reformat these XML files into the calls to >> the predefined stored procedures etc.etc. >> >> Here is how it looks this saved XML(no direct correspondence with >> presented above batch T-SQL update) : >> >> - > xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" >> xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> >> - >> - >> - > rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryID"> >> > rs:fixedlength="true" rs:maybenull="false" /> >> - > rs:writeunknown="true" >> rs:basecatalog="Northwind" rs:basetable="Categories1" >> rs:basecolumn="CategoryName"> >> >> >> - > rs:writeunknown="true" rs:basecatalog="Northwind" >> rs:basetable="Categories1" >> rs:basecolumn="Description"> >> >> >> >> >> >> - >> >> > CategoryID="3" CategoryName="Confections" Description="Desserts, >> candies, and sweet breads" /> >> > Description="Cheeses" >> /> >> >> >> >> >> - >> - >> >> >> >> >> - >> - >> >> >> >> >> > /> >> - >> > /> >> >> - >> >> >> >> >> >> I do not post code here now because I wanted to experiment more and >> because it would be useful if somebody else tries to repeat the >> "trick" described >> above - if it will work for them then a whole set of new opportunities to >> use MS Access as a real development tool will be opened.... >> >> I will post code after additional tests within one-two weeks when it will >> become clear that it works. >> >> Please post any links here if you think that my posted information looks >> like "wheel reinvention" or you think it doesn't have practical >> application because of this or that several limitations etc.etc. >> >> Thank you. >> >> Shamil >> >> P.S. I have installed on my PC: >> >> - MS Windows 2003 Server SP1 >> - MS Office 2003/MS Access 2003 SP1 >> - MS SQL 2000 SP3a >> - MDAC 2.8 >> - NET Framework 1.1 and 2.0 >> - Visual Studio 2003 and 2005 >> - I have also MS SQL Server 2005 Express edition but I didn't experiment >> with it >> >> P. P.S. Yes, I didn't talk about identity(autonumber) fields - I >> generally use GUIDs for PKs. >> To properly manage numeric identity values some more tricks are needed - >> I'd >> be grateful if somebody post information on this subject >> (updategram/diffgram XML is a direct solution here probably - and >> serialized/saved ADODB batch update can be converted into diffgrams by >> using >> XSLT or VB(A) or VB.NET/C#/C++ code etc.) >> > > <<< tail skipped >>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From martyconnelly at shaw.ca Mon Mar 13 13:35:41 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Mon, 13 Mar 2006 11:35:41 -0800 Subject: [AccessD] Discovering Access version at runtime - was AccessXPforms bound to ADO recordsets References: <004501c6464c$d0f19570$647aa8c0@ColbyM6805> Message-ID: <4415C98D.5010903@shaw.ca> How about doing it this way. Run a vbs script from a desktop shortcut. Or double click vbs file from windows explorer or even shell to it. Assuming that vb scripting allowed. You can also open various versions of Access in code below via Set AcApp = CreateObject("Access.Application.8") 'Access 97 Set AcApp = CreateObject("Access.Application.11") 'Access 2003 You can create a VB script file with this code and start your app using this. (Code is from an MS article) http://support.microsoft.com/?kbid=235422 'File myVersion.vbs Const cDatabaseToOpen = "C:\.mdb" On Error Resume Next Dim AcApp 'if multiple Access versions on machine this will open last version opened Set AcApp = CreateObject("Access.Application") If AcApp.Version >= 10 Then AcApp.AutomationSecurity = 1 ' msoAutomationSecurityLow End If AcApp.Visible = True 'open your access application AcApp.OpenCurrentDatabase cDatabaseToOpen If AcApp.CurrentProject.FullName <> "" Then AcApp.UserControl = True Else AcApp.Quit MsgBox "Failed to open '" & cDatabaseToOpen & "'." End If John Colby wrote: >>John, you want to check the version and then load code based on the >> >> >version? > >Yes, the ACCESS version. I have found stuff about checking the registry, >but this really only addresses what is INSTALLED, not what is currently >running. > > >John W. Colby >www.ColbyConsulting.com > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins >Sent: Sunday, March 12, 2006 7:33 PM >To: 'Access Developers discussion and problem solving' >Subject: Re: [AccessD] Discovering Access version at runtime - was >AccessXPforms bound to ADO recordsets > >John, you want to check the version and then load code based on the version? > > >Susan H. > >of RaiseEvents in the framework. Now we have code which works in AXP but >not A2K and below. So I would like to carve this stuff out and only load it >if the version being run under is AXP or above. A quick Google search does >not come up with anything. > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com > > > -- Marty Connelly Victoria, B.C. Canada From shamil at users.mns.ru Mon Mar 13 13:50:59 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Mon, 13 Mar 2006 22:50:59 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <005601c6469b$ad1ef440$647aa8c0@ColbyM6805> Message-ID: <002a01c646d7$768357f0$6501a8c0@Nant> > binding to an ADO recordset, attempts to access RecordsetClone throw an > error "Type mismatch" on the line of code > > Set mrst = mfrm.RecordsetClone John, I didn't get it first, sorry - I thought you're asking about ADODB.Recordset cloning using ADODB.Recordset object not MS Access form. Yes, you're right MS Access form bound to ADODB recordset returns this recordset object reference in the case: Set mrst = mfrm.RecordsetClone Here is the code to safely differentiate DAO and ADODB recordsets: Private Function IsDAORecordset(ByRef rrst As Object) As Boolean On Error GoTo HandleErr IsDAORecordset = IsNumeric(rrst.Type) Exit Function HandleErr: IsDAORecordset = False End Function Be careful to not occasionally use (similarily named and having the same quantity of parameters) DAO.Recordsets' methods with ADODB recordsets - these are the source of strange floating errors, which sometimes results if GPF.... The best would be to test in code, is returned by form's Recordsetclone recordset DAO.Recordset or ADODB.Recordset and then fork to the code, which was tested for every recordset type using early (compile time) binding. i.e. you'd better NOT use late binding for recordset objects' methods (exception getting recordset reference from form's Recordsetclone) in your framework to not have unpredictable side effects. "Implements" feature could be of good use here for effective compile time binding. I did "fight" with this issue of form's and combo-/list-box recordset object type morphing when writing and debugging code for mdb add-ins used with both MDB and ADPs. Having been solved it works now for more than a year without any troubles in this area. Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 13, 2006 3:43 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > What I am asking though is whether RecordsetClone still exists, and is > somehow populated from whatever data source the form is bound to? After > binding to an ADO recordset, attempts to access RecordsetClone throw an > error "Type mismatch" on the line of code > > Set mrst = mfrm.RecordsetClone > > Mrst is defined in the class header as a DAO recordset. > > I might be able to get away with generalizing mrst to an object. > > NOTE: I tried that, and while the "Set" now works, the objects have > different methods so any code using the object has to have different code > paths written. So apparently RecordsetClone is indeed initialized as an > ADO > recordset which makes all of my DAO specific code (FindFirst for example) > throw a runtime error if encountered. If I am going to do this, I will > need > to branch my code based on the Access Version as well as whether I > actually > used the ADO recordset code. > >>Please do not spend a lot of time on it now or at least do not plan to > broadly use it in your development until > > Luckily, in my framework, I can turn on and off capabilities by examining > SysVars. It does sound like the instability objections were from an early > adopter. Like most things in Software, trying to use any specific feature > in Access in the early stages of its introduction can be risky. It is > possible (and hopefully true) that they found and fixed the bugs causing > such instability. One of the problems with influential early adopters is > that people read their warnings and never use a feature because they > reported it unstable. If they never go back to revisit it, then it is > forever labeled unstable. > > Perhaps it is time for other influentials (you and I and this list) to > revisit this feature and see if it can be used now? > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Monday, March 13, 2006 3:20 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > >> Does RecordsetClone become invalid? > No, it doesn't, John. > But it has another name. > Similar method for ADODB recordsets is called Clone. > >> I am looking at this now. > Please do not spend a lot of time on it now or at least do not plan to > broadly use it in your development until it's very well tested and its > limitations are clearly defined - there are rumors this feature introduce > instability in MS Access work. I have doubts in that because I haven't > seen > any time MS Access crashes when bound to disconnected ADODB recordsets the > way I described. > > On the other hand I did do "fight" in my work in the past with MS Access > GPFs, when listboxes/comboboxes were bound to ADODB recordsets but as far > as > I have found this wasn't the problem with ADODB recordsets but the problem > that in that case late bound DAO or ADODB recordets were used and these > latter were opened in library mdb and there was a bug when DAO recordsets > were used for ADP's forms and that was the cause of the floating GPF > trouble > or something like that. WIth this problem fixed the applications work now > well for more than a year. > > Shamil > > ----- Original Message ----- > From: "John Colby" > To: "'Access Developers discussion and problem solving'" > > Sent: Monday, March 13, 2006 8:15 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> I am looking at this now. Do you know if binding to an ADO recordset >> changes >> the data type of the RecordsetClone. I was under the impression that >> RecordsetClone was always a DAO recordset. Does RecordsetClone become >> invalid? I use RecordsetClone to perform many different operations, >> including syncing the form to a combo and VV. >> >> >> John W. Colby >> www.ColbyConsulting.com >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >> Salakhetdinov >> Sent: Saturday, March 11, 2006 7:12 PM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> Dan, >> >> Yes, I have seen that - in fact I did do google before I started my >> experimenting. >> In KB281998 "How to bind Microsoft Access forms to ADO recordsets" >> http://support.microsoft.com/kb/281998 they talk AFAIS about binding to >> connected ADODB recordsets. >> >> The original question (as I got it) was hwo to bind to disconnected ADODB >> recordsets and then implied question is: is there a simple and generic >> way >> to translate/transfer changes from disconnected recordset to the >> backend... >> >> As it happens there is a trick to do that described in my previous >> posting. >> >> I did do google now additionally and I did find that the similar trick is >> described already several years ago. They do it a little bit differently >> but >> the principle is the same - they write: >> >> <<< >> Now, the clever tricks: >> >> 1. Open a static, optimistic batch recordset, disconnect it, save it to >> a >> simple in-memory stream object, set the stream position to zero so it can >> be >> read from the beginning, and open a new copy of the recordset from the >> stream. Now, bind one copy to the form, and start working. When you're >> ready to do a batch update, first compare the 2 recordsets for changes, >> and >> apply any adds, changes, and deletes to the unbound recordset, then run >> BatchUpdate from the unbound recordset. Note that Access sets values of >> IDENTITY columns to zero, so that's an easy way to filter for added >> records. >> ... >>>>> >> >> This excerpt is from this posting (watch line wraps!): >> >> <<< >> ADP: A2K vs 2002? >> From: Steve Jorgensen >> Date: Sun, Jul 21 2002 7:29 pm >> >> > http://groups.google.com/group/comp.databases.ms-access/browse_frm/thread/17 >> > 53dbca8189eb3/f20d79536029060e?hl=en&lr=&ie=UTF-8&oe=UTF-8&rnum=1&prev=/grou >> > ps%3Fas_q%3DBind%2520form%2520to%2520disconnected%2520recordset%26safe%3Dima >> > ges%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*.*access.*%26lr%3D%26hl%3Den#f2 >> 0d79536029060e >>>>> >> >> And here is another related information: >> >> <<< >> From: Steve Jorgensen >> Date: Thurs, Nov 28 2002 11:45 pm >> >> > http://groups.google.com/group/comp.databases.ms-access/msg/40e731c75071f8c9 >> > ?q=Bind+form+to+disconnected+recordset+group:*.*access.*&hl=en&lr=&ie=UTF-8& >> oe=UTF-8&rnum=2 >>>>> >> >> So they approve that my trick is legal and is a kind of "wheel >> reinwention" >> - the difference of my "wheel" is that I do trasnslate changes to the >> second >> disconected recordset when form events fire - the disadvantage of my >> method >> is that it needs more tricky coding, which still needs to be well tested, >> the advantage - is that as soons as the changes on the current row are >> done >> I can serialize second disconnected recordset to xml file and in the case >> of >> client app's failure batch changes will not be lost etc. >> >> Strange that such a valuable information first time published in summer >> 2002 >> about using ADODB disconnected recordsets is so rarely discussed on >> Internet >> - everybody in this World is abandoning "MS Access toy" and switiching to >> .NET development? >> >> But this feature properly applied makes MS Access FEs good candidates to >> be >> used as true FEs - without any significant performance/locking hits on >> BEs > >> I >> mean.... >> >> Shamil >> >> ----- Original Message ----- >> From: "Dan Waters" >> To: "'Access Developers discussion and problem solving'" >> >> Sent: Sunday, March 12, 2006 2:27 AM >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> >>> Shamil, >>> >>> I've been reading you post with interest. Have you looked at MS KB >>> 281998? >>> This gives a method for an Access form to connect to SQL Server, Jet, >>> and >>> Oracle BE's and be updateable. They identify a specific provider to do >>> this >>> that can be used to set up bound forms. >>> >>> The provider is: "Microsoft.Access.OLEDB.10.0" >>> >>> I have not tried this, but thought you might be interested. >>> >>> Dan Waters >>> >>> >>> -----Original Message----- >>> From: accessd-bounces at databaseadvisors.com >>> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil >>> Salakhetdinov >>> Sent: Saturday, March 11, 2006 5:04 PM >>> To: Access Developers discussion and problem solving >>> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >>> >>> John at all, >>> >>> I did make some more experimenting and it happens that MS Access 2003 >>> (and >>> probably XP) and ADO 2.8 (and 2.7 also?) can work in bound mode with >>> disconnected updatable ADODB recordsets with both MS Access and MS SQL >>> backends. >>> >>> I did use Provider=Microsoft.Jet.OLEDB.4.0 to connect to MS Access >>> backend >>> and Provider=SQLOLEDB.1 to connect to MS SQL 2000 backend. >>> >>> Some more testing/experimenting is needed but I did do quite some tests >>> and >>> they worked OK. >>> >>> As I wrote already this feature is new for me and a (big) surprise - >>> this >>> is >>> a functionality I have been waiting for 8+ years since 1997 when we made >>> here a custom framework to work with MS Access and MS SQL in >>> disconnected >>> mode, but it was rather heavyweight and because of the bugs in MS Access >>> I >>> decided to not make it broadly available.... >>> >>> Basically this means that MS Access forms can be used in bound mode with >>> very low performance hit to the MS Access and MS SQL backends - the same >>> way >>> ADODB disconnected recordsets are used in n-tier applications. >>> >>> The programming of form's events processing is relatively simple and it >>> should be possible to generalize it to make a simple lightweight >>> framework >>> in case back-end database(s) follow systematic naming conventions and >>> database models design principles. >>> >>> The "trick" is to open two ADODB recordsets: >>> >>> - one with batch update enabled >>> - second without batch update >>> >>> and make them disconnected. >>> >>> Then bind MS Access form to the second recordset (without batch update >>> enabled). >>> >>> (I did experiemnet with recordsets having several source rows as a >>> generic >>> case to see are there any chances to use MS Access subforms in bound >>> editable mode with disconnected ADODB recordsets) >>> >>> When MS Access form fires insert, update, delete events all the changes >>> can >>> be easily translated from the second recordset (where these changes are >>> made >>> "automagically" because MS Access form is bound to it) to the first >>> recordset. >>> >>> On form close(or using special button) first recordset can be >>> reconnected >>> to >>> the backend and batch update applied. (Of course in the case of special >>> button to apply batch changes the two disconnected recordsets have to be >>> resynchronized after updates). >>> >>> etc. >>> >>> Here is how "automagically" generated by ADODB batch update looks in the >>> case of MS SQL backend (Info obtained from MS SQL profiler, line breaks >>> are >>> inserted manually to make it readable): >>> >>> exec sp_executesql >>> >>> N'UPDATE "Northwind".."Categories" SET >>> "CategoryID"=@P1,"CategoryName"=@P2,"Description"=@P3 WHERE >>> "CategoryID"=@P4 >>> AND "CategoryName"=@P5; >>> >>> DELETE FROM "Northwind".."Categories" WHERE "CategoryID"=@P6 AND >>> "CategoryName"=@P7; >>> >>> UPDATE "Northwind".."Categories" SET >>> "CategoryID"=@P8,"CategoryName"=@P9,"Description"=@P10 WHERE >>> "CategoryID"=@P11 AND "CategoryName"=@P12; >>> >>> INSERT INTO "Northwind".."Categories" >>> ("CategoryID","CategoryName","Description") VALUES (@P13, at P14, at P15)', >>> >>> N'@P1 int, at P2 nvarchar(15), at P3 ntext, at P4 int, at P5 nvarchar(15), at P6 >>> int, at P7 >>> nvarchar(15), at P8 int, at P9 nvarchar(15), at P10 ntext, at P11 int, at P12 >>> nvarchar(15), at P13 int, at P14 nvarchar(15), at P15 ntext', >>> >>> 99, N'CatName', N'Updated category description', >>> 99, N'CatName', >>> 66, N'DelCatName', >>> 991, N'CatName2N', N'Updated dscr', 991, N'CatName2', >>> 662, N'newCatName', N'new Cat description' >>> >>> Live connection to the back-end is needed only on opening of the source >>> recordsets and on applying batch changes. Therefore connections can be >>> pooled/should be possible to pool (I didn't experiment here) and to >>> share >>> them between several (many) front-end applications/clients if these >>> connections are opened using ActiveX DCOM servers running on server >>> PCs/.NET >>> Remoting(?) objects. As well as actual disconnected recordset creation >>> and >>> reconnection and backend update can be executed on (Web) server side - >>> depending on whatever is used on backend.... >>> >>> Yes, I know dynamic SPs accessing database tables directly do not look >>> nice >>> but there could be many ways to make it working differently using >>> predefined >>> stored procedures (e.g. by serializing ADODB recordset into XML file(s) >>> where all the updates (inserts, deletes, updates) are coded special >>> easily >>> parsed way and then reformat these XML files into the calls to the >>> predefined stored procedures etc.etc. >>> >>> Here is how it looks this saved XML(no direct correspondence with >>> presented >>> above batch T-SQL update) : >>> >>> - >> xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" >>> xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"> >>> - >>> - >>> - >> rs:writeunknown="true" >>> rs:basecatalog="Northwind" rs:basetable="Categories1" >>> rs:basecolumn="CategoryID"> >>> >> rs:fixedlength="true" rs:maybenull="false" /> >>> >>> - >> rs:writeunknown="true" >>> rs:basecatalog="Northwind" rs:basetable="Categories1" >>> rs:basecolumn="CategoryName"> >>> >>> >>> - >> rs:writeunknown="true" rs:basecatalog="Northwind" >>> rs:basetable="Categories1" >>> rs:basecolumn="Description"> >>> >> /> >>> >>> >>> >>> >>> - >>> >>> >>> >>> >> Description="Cheeses" >>> /> >>> >> Description="Breads, >>> crackers, pasta, and cereal" /> >>> >>> >>> >>> - >>> - >>> >>> >>> >>> >>> - >>> - >>> >>> >>> >>> >>> >> Description="Inserted2" >>> /> >>> - >>> >> /> >>> >>> - >>> >>> >>> >>> >>> >>> I do not post code here now because I wanted to experiment more and >>> because >>> it would be useful if somebody else tries to repeat the "trick" >>> described >>> above - if it will work for them then a whole set of new opportunities >>> to >>> use MS Access as a real development tool will be opened.... >>> >>> I will post code after additional tests within one-two weeks when it >>> will >>> become clear that it works. >>> >>> Please post any links here if you think that my posted information looks >>> like "wheel reinvention" or you think it doesn't have practical >>> application >>> because of this or that several limitations etc.etc. >>> >>> Thank you. >>> >>> Shamil >>> >>> P.S. I have installed on my PC: >>> >>> - MS Windows 2003 Server SP1 >>> - MS Office 2003/MS Access 2003 SP1 >>> - MS SQL 2000 SP3a >>> - MDAC 2.8 >>> - NET Framework 1.1 and 2.0 >>> - Visual Studio 2003 and 2005 >>> - I have also MS SQL Server 2005 Express edition but I didn't experiment >>> with it >>> >>> P. P.S. Yes, I didn't talk about identity(autonumber) fields - I >>> generally >>> use GUIDs for PKs. >>> To properly manage numeric identity values some more tricks are needed - >>> I'd >>> be grateful if somebody post information on this subject >>> (updategram/diffgram XML is a direct solution here probably - and >>> serialized/saved ADODB batch update can be converted into diffgrams by >>> using >>> XSLT or VB(A) or VB.NET/C#/C++ code etc.) >>> >> >> <<< tail skipped >>> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From mwp.reid at qub.ac.uk Mon Mar 13 13:51:36 2006 From: mwp.reid at qub.ac.uk (Martin Reid) Date: Mon, 13 Mar 2006 19:51:36 -0000 Subject: [AccessD] Access XP forms bound to ADO recordsets - Trim Replies References: <000e01c643aa$e82b2200$647aa8c0@ColbyM6805><05f501c644a3$d1643080$6501a8c0@Nant> <001e01c64560$4fbcd470$6501a8c0@Nant> Message-ID: Great thread but would you mind trimming the replies as they are getting held up by the list limit. Martin New MOD (<: Martin WP Reid Training and Assessment Unit Riddle Hall Belfast tel: 02890 974477 From shamil at users.mns.ru Mon Mar 13 14:19:48 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Mon, 13 Mar 2006 23:19:48 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets - Trim Replies References: <000e01c643aa$e82b2200$647aa8c0@ColbyM6805><05f501c644a3$d1643080$6501a8c0@Nant><001e01c64560$4fbcd470$6501a8c0@Nant> Message-ID: <003301c646db$7d378310$6501a8c0@Nant> Sorry, Martin, I forgot to trim my message this time. I usually do trim messages by cutting all their stuff except the last message in the thread I reply to. Shamil ----- Original Message ----- From: "Martin Reid" To: "Access Developers discussion and problem solving" Sent: Monday, March 13, 2006 10:51 PM Subject: [AccessD] Access XP forms bound to ADO recordsets - Trim Replies Great thread but would you mind trimming the replies as they are getting held up by the list limit. Martin New MOD (<: Martin WP Reid Training and Assessment Unit Riddle Hall Belfast tel: 02890 974477 -------------------------------------------------------------------------------- > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From jwcolby at ColbyConsulting.com Mon Mar 13 16:47:22 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Mon, 13 Mar 2006 17:47:22 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <004401c646d1$1363e1e0$6501a8c0@Nant> Message-ID: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805> >I haven't asked John to approve this statement but I expect he will agree So true, very serious. ;-) John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Monday, March 13, 2006 1:44 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Doing unbound in a "header" record (invoice, for instance) is pretty > straightforward, especially when starting with a bound form and then > deleting the record source property Steve, Myself and John are bounders and we are very serious guys ;) I haven't asked John to approve this statement but I expect he will agree - am I right, John? :) So we are talking here about bound forms (and reports) but bound to ADODB recordsets. Just to make it clear what is discussed in this thread - this is a technique partially described here - http://support.microsoft.com/kb/281998. The difference we are talking about is that we are "exploring the waters" of MS Access forms bound to DISCONNECTED ADODB recordsets. The purpose to do that is to have backend DB(s)unlocked (not even touched by MS Access FE) while the extracted data are edited in MS Access form with subform(s) when both form and its subform(s) may have potentially many rows, which we can edit using built-in MS Access features and then post ALL the changes back at once in an ADODB "AUTOMAGIC" BATH UPDATE or in manually prepared batch update in one transaction etc. (There are other implied very useful features as serializing/transmitting/deserializing/storing/.. batch updates, having light-weight MS Access FEs etc. - but all that will make sense to discuss only when the main technique will start to work stable enough to be used in real life applications.) > I had the best device ever created for holding columns and rows of > data: Access' own Tables! True - I did write such code a long ago for MS Access 97, many others did do that - the difference we're talking about is that we wanted to use bound forms but we do not want to be bound to MS Access (local) tables and we wanted to have as little as possible custom coding and if have such coding then rather generic and flexible and scalable. > and also requires home-grown locking (I added a bit field to invoice > to indicate "in use"), Yes, it will need to use something like that of course - and this is always needed for the optimistic locking, e.g. when one is working in fully unbound mode in VB6 or C#/VB.NET/C++.... Shamil From shamil at users.mns.ru Tue Mar 14 00:01:13 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Tue, 14 Mar 2006 09:01:13 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805> Message-ID: <001301c6472c$d5602960$6501a8c0@Nant> Yes, we're serious :) - here is promised first version of the crash test: http://smsconsulting.spb.ru/download/tests/a2dds.htm It seems to work well. Enjoy! Shamil P.S. That wasn't easy night!.... ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Tuesday, March 14, 2006 1:47 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > >I haven't asked John to approve this statement but I expect he will agree > > So true, very serious. ;-) > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Monday, March 13, 2006 1:44 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > >> Doing unbound in a "header" record (invoice, for instance) is pretty >> straightforward, especially when starting with a bound form and then >> deleting the record source property > Steve, > > Myself and John are bounders and we are very serious guys ;) I haven't > asked > John to approve this statement but I expect he will agree - am I right, > John? :) > > So we are talking here about bound forms (and reports) but bound to ADODB > recordsets. > Just to make it clear what is discussed in this thread - this is a > technique partially described here - > http://support.microsoft.com/kb/281998. > > The difference we are talking about is that we are "exploring the waters" > of > MS Access forms bound to DISCONNECTED ADODB recordsets. The purpose to do > that is to have backend DB(s)unlocked (not even touched by MS Access FE) > while the extracted data are edited in MS Access form with subform(s) when > both form and its subform(s) may have potentially many rows, which we can > edit using built-in MS Access features and then post ALL the changes back > at > once in an ADODB "AUTOMAGIC" BATH UPDATE or in manually prepared batch > update in one transaction etc. (There are other implied very useful > features > as serializing/transmitting/deserializing/storing/.. batch updates, having > light-weight MS Access FEs etc. - but all that will make sense to discuss > only when the main technique will start to work stable enough to be used > in > real life applications.) > >> I had the best device ever created for holding columns and rows of >> data: Access' own Tables! > True - I did write such code a long ago for MS Access 97, many others did > do > that - the difference we're talking about is that we wanted to use bound > forms but we do not want to be bound to MS Access (local) tables and we > wanted to have as little as possible custom coding and if have such coding > then rather generic and flexible and scalable. > >> and also requires home-grown locking (I added a bit field to invoice >> to indicate "in use"), > Yes, it will need to use something like that of course - and this is > always > needed for the optimistic locking, e.g. when one is working in fully > unbound > mode in VB6 or C#/VB.NET/C++.... > > Shamil > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From shamil at users.mns.ru Tue Mar 14 04:26:50 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Tue, 14 Mar 2006 13:26:50 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805> <001301c6472c$d5602960$6501a8c0@Nant> Message-ID: <001001c64751$d4b89ef0$6501a8c0@Nant> Hi All, Just wanted to note that if technique presented here http://smsconsulting.spb.ru/download/tests/a2dds.htm will not work stable there will be another 100% safe workaround to try - a combination of what Steve Conklin mentioned and what presented in the crash test - I mean (dynamically created) local tables in temp databases, which get filled from ADODB disconnected recorset(s) and which MS Access forms are (dynamically) bound too. And here there could be two ways to mirror additions, editions and deletions made via forms on local tables to corresponding ADODB disconnected recordsets to reconnect and to batch update backend DB(s): 1. use special IsNew, IsEdited, IsDeleted flags in local tables and to analyze these flags to mirror changes to ADODB disconnected recordset when Apply/Save button is clicked; 2. use instant mirroring when MS Access form's data change related events fire as it's done in the sample (although it's not finished yet) The latter may need less coding than the former, but the former looks straightforward and promise to be more simple to test - what I personally do not like with the first method is that is has to use IsDeleted flag and all the queries have to be "aware" of that. The latter also promise to work (a bit) quicker. Steve, do you use something like technique N1 outlined above? FYI: the technique from crash test will not work stable with MS Access 2000 for sure - the Recordset property is missing in MS Access 2000 for combo- and list-boxes, but I don't have the latest service pack/release for MS Access 2000 - maybe it fixes this problem.... Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 14, 2006 9:01 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Yes, we're serious :) - here is promised first version of the crash test: > > http://smsconsulting.spb.ru/download/tests/a2dds.htm > > It seems to work well. > > Enjoy! > > Shamil > > P.S. That wasn't easy night!.... > > ----- Original Message ----- > From: "John Colby" > To: "'Access Developers discussion and problem solving'" > > Sent: Tuesday, March 14, 2006 1:47 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> >I haven't asked John to approve this statement but I expect he will >> >agree >> >> So true, very serious. ;-) >> >> >> John W. Colby >> www.ColbyConsulting.com >> >> <<< tail skipped >>> From jwcolby at ColbyConsulting.com Tue Mar 14 08:54:56 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Tue, 14 Mar 2006 09:54:56 -0500 Subject: [AccessD] MSSQL conversion In-Reply-To: <000001c643b0$708e31f0$0200a8c0@danwaters> Message-ID: <00ae01c64777$439c87d0$647aa8c0@ColbyM6805> I would like to thank all those who responded to my email re experience in converting an Access Application to use SQL Server as the BE. I have not yet made a decision on how to handle this specific opportunity. I am keeping all responses in a dedicated email directory so that I have them available as I look at how to handle this. I'm afraid that I am so swamped right now that I am not able to answer each of you individually, but I do thank you for sending me your information. We in AccessD have discussed building a virtual consulting company before, where we shared work that we were unable to efficiently handle ourselves. This is the first time where I have had an excess of work, a nice place to be but at the same time a strain on me and my clients. I hope that I can start working with some of you to handle my overflow when it happens and develop a backup system that allows me to get the work done in a timely manner even when I can't do it directly myself. Thanks again for your responses. John W. Colby www.ColbyConsulting.com From shamil at users.mns.ru Tue Mar 14 11:18:20 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Tue, 14 Mar 2006 20:18:20 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant> <001001c64751$d4b89ef0$6501a8c0@Nant> Message-ID: <007101c6478b$4c9e8040$6501a8c0@Nant> Hi All, New version of crash test published at http://smsconsulting.spb.ru/download/tests/a2dds.htm Previous had bug when working with MS SQL. Sorry for any inconvenience, I will prepare .adp version of the test now and then give it a break.... Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 14, 2006 1:26 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > Just wanted to note that if technique presented here > http://smsconsulting.spb.ru/download/tests/a2dds.htm will not work stable > there will be another 100% safe workaround to try - a combination of what > Steve Conklin mentioned and what presented in the crash test - I mean > (dynamically created) local tables in temp databases, which get filled > from > ADODB disconnected recorset(s) and which MS Access forms are (dynamically) > bound too. And here there could be two ways to mirror additions, editions > and deletions made via forms on local tables to corresponding ADODB > disconnected recordsets to reconnect and to batch update backend DB(s): > > 1. use special IsNew, IsEdited, IsDeleted flags in local tables and to > analyze these flags to mirror changes to ADODB disconnected recordset when > Apply/Save button is clicked; > 2. use instant mirroring when MS Access form's data change related events > fire as it's done in the sample (although it's not finished yet) > > The latter may need less coding than the former, but the former looks > straightforward and promise to be more simple to test - what I personally > do > not like with the first method is that is has to use IsDeleted flag and > all > the queries have to be "aware" of that. The latter also promise to work (a > bit) quicker. > > Steve, do you use something like technique N1 outlined above? > > FYI: the technique from crash test will not work stable with MS Access > 2000 > for sure - the Recordset property is missing in MS Access 2000 for combo- > and list-boxes, but I don't have the latest service pack/release for MS > Access 2000 - maybe it fixes this problem.... > > Shamil <<< tail skipped>>> From shamil at users.mns.ru Tue Mar 14 14:09:21 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Tue, 14 Mar 2006 23:09:21 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant> <007101c6478b$4c9e8040$6501a8c0@Nant> Message-ID: <001201c647a3$3283af10$6501a8c0@Nant> Hi All, ADP version of crash test added here http://smsconsulting.spb.ru/download/tests/a2dds.htm . In fact both mdb and ADP use the same code, which forks in some points on runtime depending on project type it runs in... Within future days/weeks will be coming: - lightweight framework code stored in a library mdb/adp - adding/fixing functionality for MS Access reports - adding/fixing functionality for new rows additions; - adding/fixing functionality for rows deletions. - ... This test/sample still may get stuck somewhere unexpectedly because the "dark unexplored waters" we're trying to glide on may have sharp stones, which can severely damage and sink our lightweight framework/ship... Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 14, 2006 8:18 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > New version of crash test published at > http://smsconsulting.spb.ru/download/tests/a2dds.htm > Previous had bug when working with MS SQL. > Sorry for any inconvenience, > I will prepare .adp version of the test now and then give it a break.... > > Shamil > > ----- Original Message ----- > From: "Shamil Salakhetdinov" > To: "Access Developers discussion and problem solving" > > Sent: Tuesday, March 14, 2006 1:26 PM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Hi All, >> >> Just wanted to note that if technique presented here >> http://smsconsulting.spb.ru/download/tests/a2dds.htm will not work stable >> there will be another 100% safe workaround to try - a combination of what >> Steve Conklin mentioned and what presented in the crash test - I mean >> (dynamically created) local tables in temp databases, which get filled >> from >> ADODB disconnected recorset(s) and which MS Access forms are >> (dynamically) >> bound too. And here there could be two ways to mirror additions, editions >> and deletions made via forms on local tables to corresponding ADODB >> disconnected recordsets to reconnect and to batch update backend DB(s): >> >> 1. use special IsNew, IsEdited, IsDeleted flags in local tables and to >> analyze these flags to mirror changes to ADODB disconnected recordset >> when >> Apply/Save button is clicked; >> 2. use instant mirroring when MS Access form's data change related events >> fire as it's done in the sample (although it's not finished yet) >> >> The latter may need less coding than the former, but the former looks >> straightforward and promise to be more simple to test - what I personally >> do >> not like with the first method is that is has to use IsDeleted flag and >> all >> the queries have to be "aware" of that. The latter also promise to work >> (a >> bit) quicker. >> >> Steve, do you use something like technique N1 outlined above? >> >> FYI: the technique from crash test will not work stable with MS Access >> 2000 >> for sure - the Recordset property is missing in MS Access 2000 for >> combo- >> and list-boxes, but I don't have the latest service pack/release for MS >> Access 2000 - maybe it fixes this problem.... >> >> Shamil > <<< tail skipped>>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Tue Mar 14 19:59:57 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Tue, 14 Mar 2006 20:59:57 -0500 Subject: [AccessD] Parent form PK changed (VALUE) Message-ID: <000001c647d4$2a0901b0$647aa8c0@ColbyM6805> Is there a way (built into Access) to tell if the parent form record changed from the subform? IOW, in the case of a M-M table, implemented in a subform, one of the fields of the M-M would be the parent ID. tblCompany CO_ID CO_Name CO_Etc tblPeople PE_ID PE_Lname PE_Fname PE_Etc tblEmployees EM_ID EM_IDPE EM_IDCO If the parent form is the company, the child form is the employee, the "link" is the EM_IDCO with a combo representing the people. I want to monitor when the parent ID changes (CO_ID) from the subform sfrmEmployee. I know that the subform control has a Link Child Field / Link Master Field pair of properties, but is there a property that feeds the VALUE of the Link Master Field into the subform for it's use? The subform filters its recordset based on the Link Master Field VALUE so it must be able to see it. In fact all I want to know is THAT the Link Master Field VALUE changed so that I can requery a dependent combo in the child form. John W. Colby www.ColbyConsulting.com From jmhecht at earthlink.net Tue Mar 14 22:48:43 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Tue, 14 Mar 2006 20:48:43 -0800 Subject: [AccessD] Parent form PK changed (VALUE) In-Reply-To: <000001c647d4$2a0901b0$647aa8c0@ColbyM6805> Message-ID: <001501c647eb$bcf27210$6701a8c0@HPLaptop> John, Isn't there an old value and new value you can check in the before or after update of the field? Joe Hecht jmhecht at earthlink.net -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Tuesday, March 14, 2006 6:00 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Parent form PK changed (VALUE) Is there a way (built into Access) to tell if the parent form record changed from the subform? IOW, in the case of a M-M table, implemented in a subform, one of the fields of the M-M would be the parent ID. tblCompany CO_ID CO_Name CO_Etc tblPeople PE_ID PE_Lname PE_Fname PE_Etc tblEmployees EM_ID EM_IDPE EM_IDCO If the parent form is the company, the child form is the employee, the "link" is the EM_IDCO with a combo representing the people. I want to monitor when the parent ID changes (CO_ID) from the subform sfrmEmployee. I know that the subform control has a Link Child Field / Link Master Field pair of properties, but is there a property that feeds the VALUE of the Link Master Field into the subform for it's use? The subform filters its recordset based on the Link Master Field VALUE so it must be able to see it. In fact all I want to know is THAT the Link Master Field VALUE changed so that I can requery a dependent combo in the child form. John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From joeget at vgernet.net Wed Mar 15 01:14:45 2006 From: joeget at vgernet.net (John Eget) Date: Wed, 15 Mar 2006 02:14:45 -0500 Subject: [AccessD] Memo field on report Message-ID: <001101c64800$30e12860$cbc2f63f@JOHN> All I have several make table queries to make a selection of data for a report. One of the fields (Remarks) is a Memo field. When displayed on the report, the memo field is limited in size and does not display all of the text in the memo field. Does anyone have an idea? It is almost as if the memo field is being displayed as a text field John From joeget at vgernet.net Wed Mar 15 01:15:22 2006 From: joeget at vgernet.net (John Eget) Date: Wed, 15 Mar 2006 02:15:22 -0500 Subject: [AccessD] Memo field on report Message-ID: <001501c64800$3d22d290$cbc2f63f@JOHN> All I have several make table queries to make a selection of data for a report. One of the fields (Remarks) is a Memo field. When displayed on the report, the memo field is limited in size and does not display all of the text in the memo field. Does anyone have an idea? It is almost as if the memo field is being displayed as a text field John From Chris.Foote at uk.thalesgroup.com Wed Mar 15 01:26:09 2006 From: Chris.Foote at uk.thalesgroup.com (Foote, Chris) Date: Wed, 15 Mar 2006 07:26:09 -0000 Subject: [AccessD] Memo field on report Message-ID: <7303A459C921B5499AF732CCEEAD2B7F3E6C36@craws161660.int.rdel.co.uk> Good morning John! Have you checked that the "Can Grow" parameter for your relevant control on the report is set to "Yes"? Regards Chris F > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget > Sent: Wednesday, March 15, 2006 7:15 AM > To: AccessD at databaseadvisors.com > Subject: [AccessD] Memo field on report > > > All > I have several make table queries to make a selection of data > for a report. One of the fields (Remarks) is a Memo field. > When displayed on the report, the memo field is limited in > size and does not display all of the text in the memo field. > Does anyone have an idea? It is almost as if the memo field > is being displayed as a text field > John > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From joeget at vgernet.net Wed Mar 15 01:35:03 2006 From: joeget at vgernet.net (John Eget) Date: Wed, 15 Mar 2006 02:35:03 -0500 Subject: [AccessD] Memo field on report References: <7303A459C921B5499AF732CCEEAD2B7F3E6C36@craws161660.int.rdel.co.uk> Message-ID: <000801c64802$fceaf970$cbc2f63f@JOHN> Good Morning to you also. Absolutely! That was one of the very first things that I checked ----- Original Message ----- From: "Foote, Chris" To: "'Access Developers discussion and problem solving'" Sent: Wednesday, March 15, 2006 2:26 AM Subject: Re: [AccessD] Memo field on report > Good morning John! > > Have you checked that the "Can Grow" parameter for your relevant control > on > the report is set to "Yes"? > > Regards > Chris F > >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget >> Sent: Wednesday, March 15, 2006 7:15 AM >> To: AccessD at databaseadvisors.com >> Subject: [AccessD] Memo field on report >> >> >> All >> I have several make table queries to make a selection of data >> for a report. One of the fields (Remarks) is a Memo field. >> When displayed on the report, the memo field is limited in >> size and does not display all of the text in the memo field. >> Does anyone have an idea? It is almost as if the memo field >> is being displayed as a text field >> John >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From joeget at vgernet.net Wed Mar 15 01:39:23 2006 From: joeget at vgernet.net (John Eget) Date: Wed, 15 Mar 2006 02:39:23 -0500 Subject: [AccessD] User security Message-ID: <001b01c64803$99eb8a50$cbc2f63f@JOHN> All I have been discovering lately that records are being edited by other individuals than generated the record. All records are tagged with an individuals name. Is there a simple way to insure that records cannot be edited by another individual. I tried going thru the security wizard but got side tracked with all of the options and was not successful John From joeget at vgernet.net Wed Mar 15 01:39:42 2006 From: joeget at vgernet.net (John Eget) Date: Wed, 15 Mar 2006 02:39:42 -0500 Subject: [AccessD] User security Message-ID: <002201c64803$a309ad60$cbc2f63f@JOHN> All I have been discovering lately that records are being edited by other individuals than generated the record. All records are tagged with an individuals name. Is there a simple way to insure that records cannot be edited by another individual. I tried going thru the security wizard but got side tracked with all of the options and was not successful John From andy at minstersystems.co.uk Wed Mar 15 01:41:00 2006 From: andy at minstersystems.co.uk (Andy Lacey) Date: Wed, 15 Mar 2006 07:41:00 -0000 Subject: [AccessD] Memo field on report In-Reply-To: <7303A459C921B5499AF732CCEEAD2B7F3E6C36@craws161660.int.rdel.co.uk> Message-ID: <002e01c64803$ce8089f0$c1c10c54@minster33c3r25> You'll also need CanGrow set Yes for the section the control's in. -- Andy Lacey http://www.minstersystems.co.uk > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of > Foote, Chris > Sent: 15 March 2006 07:26 > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Memo field on report > > > Good morning John! > > Have you checked that the "Can Grow" parameter for your > relevant control on the report is set to "Yes"? > > Regards > Chris F > > > -----Original Message----- > > From: accessd-bounces at databaseadvisors.com > > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget > > Sent: Wednesday, March 15, 2006 7:15 AM > > To: AccessD at databaseadvisors.com > > Subject: [AccessD] Memo field on report > > > > > > All > > I have several make table queries to make a selection of data > > for a report. One of the fields (Remarks) is a Memo field. > > When displayed on the report, the memo field is limited in > > size and does not display all of the text in the memo field. > > Does anyone have an idea? It is almost as if the memo field > > is being displayed as a text field > > John > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > From Chris.Foote at uk.thalesgroup.com Wed Mar 15 01:44:25 2006 From: Chris.Foote at uk.thalesgroup.com (Foote, Chris) Date: Wed, 15 Mar 2006 07:44:25 -0000 Subject: [AccessD] Memo field on report Message-ID: <7303A459C921B5499AF732CCEEAD2B7F3E6C37@craws161660.int.rdel.co.uk> Ok John! Is the "Can Grow" parameter for the section that contains the control set to "Yes"? Regards Chris F > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget > Sent: Wednesday, March 15, 2006 7:35 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Memo field on report > > > Good Morning to you also. > > Absolutely! That was one of the very first things that I checked > > ----- Original Message ----- > From: "Foote, Chris" > To: "'Access Developers discussion and problem solving'" > > Sent: Wednesday, March 15, 2006 2:26 AM > Subject: Re: [AccessD] Memo field on report > > > > Good morning John! > > > > Have you checked that the "Can Grow" parameter for your > relevant control > > on > > the report is set to "Yes"? > > > > Regards > > Chris F > > > >> -----Original Message----- > >> From: accessd-bounces at databaseadvisors.com > >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget > >> Sent: Wednesday, March 15, 2006 7:15 AM > >> To: AccessD at databaseadvisors.com > >> Subject: [AccessD] Memo field on report > >> > >> > >> All > >> I have several make table queries to make a selection of data > >> for a report. One of the fields (Remarks) is a Memo field. > >> When displayed on the report, the memo field is limited in > >> size and does not display all of the text in the memo field. > >> Does anyone have an idea? It is almost as if the memo field > >> is being displayed as a text field > >> John From joeget at vgernet.net Wed Mar 15 01:48:19 2006 From: joeget at vgernet.net (John Eget) Date: Wed, 15 Mar 2006 02:48:19 -0500 Subject: [AccessD] Memo field on report References: <7303A459C921B5499AF732CCEEAD2B7F3E6C37@craws161660.int.rdel.co.uk> Message-ID: <003101c64804$d720d500$cbc2f63f@JOHN> Absolutely, the detail section is also set to grow. ----- Original Message ----- From: "Foote, Chris" To: "'Access Developers discussion and problem solving'" Sent: Wednesday, March 15, 2006 2:44 AM Subject: Re: [AccessD] Memo field on report > Ok John! > > Is the "Can Grow" parameter for the section that contains the control set > to > "Yes"? > > Regards > Chris F > >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget >> Sent: Wednesday, March 15, 2006 7:35 AM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Memo field on report >> >> >> Good Morning to you also. >> >> Absolutely! That was one of the very first things that I checked >> >> ----- Original Message ----- >> From: "Foote, Chris" >> To: "'Access Developers discussion and problem solving'" >> >> Sent: Wednesday, March 15, 2006 2:26 AM >> Subject: Re: [AccessD] Memo field on report >> >> >> > Good morning John! >> > >> > Have you checked that the "Can Grow" parameter for your >> relevant control >> > on >> > the report is set to "Yes"? >> > >> > Regards >> > Chris F >> > >> >> -----Original Message----- >> >> From: accessd-bounces at databaseadvisors.com >> >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget >> >> Sent: Wednesday, March 15, 2006 7:15 AM >> >> To: AccessD at databaseadvisors.com >> >> Subject: [AccessD] Memo field on report >> >> >> >> >> >> All >> >> I have several make table queries to make a selection of data >> >> for a report. One of the fields (Remarks) is a Memo field. >> >> When displayed on the report, the memo field is limited in >> >> size and does not display all of the text in the memo field. >> >> Does anyone have an idea? It is almost as if the memo field >> >> is being displayed as a text field >> >> John > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From Chris.Foote at uk.thalesgroup.com Wed Mar 15 01:55:19 2006 From: Chris.Foote at uk.thalesgroup.com (Foote, Chris) Date: Wed, 15 Mar 2006 07:55:19 -0000 Subject: [AccessD] Memo field on report Message-ID: <7303A459C921B5499AF732CCEEAD2B7F3E6C38@craws161660.int.rdel.co.uk> That's me out of ideas then ;-) I assume that you've checked that the temporary tables contain the Remarks contents and that this is not being truncated somewhere other than the report? Andy? Any other ideas? Chris F > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget > Sent: Wednesday, March 15, 2006 7:48 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Memo field on report > > > Absolutely, the detail section is also set to grow. > ----- Original Message ----- > From: "Foote, Chris" > To: "'Access Developers discussion and problem solving'" > > Sent: Wednesday, March 15, 2006 2:44 AM > Subject: Re: [AccessD] Memo field on report > > > > Ok John! > > > > Is the "Can Grow" parameter for the section that contains > the control set > > to > > "Yes"? > > > > Regards > > Chris F > > > >> -----Original Message----- > >> From: accessd-bounces at databaseadvisors.com > >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget > >> Sent: Wednesday, March 15, 2006 7:35 AM > >> To: Access Developers discussion and problem solving > >> Subject: Re: [AccessD] Memo field on report > >> > >> > >> Good Morning to you also. > >> > >> Absolutely! That was one of the very first things that I checked > >> > >> ----- Original Message ----- > >> From: "Foote, Chris" > >> To: "'Access Developers discussion and problem solving'" > >> > >> Sent: Wednesday, March 15, 2006 2:26 AM > >> Subject: Re: [AccessD] Memo field on report > >> > >> > >> > Good morning John! > >> > > >> > Have you checked that the "Can Grow" parameter for your > >> relevant control > >> > on > >> > the report is set to "Yes"? > >> > > >> > Regards > >> > Chris F > >> > > >> >> -----Original Message----- > >> >> From: accessd-bounces at databaseadvisors.com > >> >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf > Of John Eget > >> >> Sent: Wednesday, March 15, 2006 7:15 AM > >> >> To: AccessD at databaseadvisors.com > >> >> Subject: [AccessD] Memo field on report > >> >> > >> >> > >> >> All > >> >> I have several make table queries to make a selection of data > >> >> for a report. One of the fields (Remarks) is a Memo field. > >> >> When displayed on the report, the memo field is limited in > >> >> size and does not display all of the text in the memo field. > >> >> Does anyone have an idea? It is almost as if the memo field > >> >> is being displayed as a text field > >> >> John > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From andy at minstersystems.co.uk Wed Mar 15 02:06:09 2006 From: andy at minstersystems.co.uk (Andy Lacey) Date: Wed, 15 Mar 2006 08:06:09 -0000 Subject: [AccessD] Memo field on report In-Reply-To: <7303A459C921B5499AF732CCEEAD2B7F3E6C38@craws161660.int.rdel.co.uk> Message-ID: <000001c64807$51957c80$c1c10c54@minster33c3r25> Hard to imagine. If you run the recordsource of the report as a straight select query can you definitely see all of the data in this memo, ie is it definitely the report that's doing this? Andy > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of > Foote, Chris > Sent: 15 March 2006 07:55 > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Memo field on report > > > That's me out of ideas then ;-) > > I assume that you've checked that the temporary tables > contain the Remarks contents and that this is not being > truncated somewhere other than the report? > > Andy? Any other ideas? > > Chris F > > > -----Original Message----- > > From: accessd-bounces at databaseadvisors.com > > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget > > Sent: Wednesday, March 15, 2006 7:48 AM > > To: Access Developers discussion and problem solving > > Subject: Re: [AccessD] Memo field on report > > > > > > Absolutely, the detail section is also set to grow. > > ----- Original Message ----- > > From: "Foote, Chris" > > To: "'Access Developers discussion and problem solving'" > > > > Sent: Wednesday, March 15, 2006 2:44 AM > > Subject: Re: [AccessD] Memo field on report > > > > > > > Ok John! > > > > > > Is the "Can Grow" parameter for the section that contains > > the control set > > > to > > > "Yes"? > > > > > > Regards > > > Chris F > > > > > >> -----Original Message----- > > >> From: accessd-bounces at databaseadvisors.com > > >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf > Of John Eget > > >> Sent: Wednesday, March 15, 2006 7:35 AM > > >> To: Access Developers discussion and problem solving > > >> Subject: Re: [AccessD] Memo field on report > > >> > > >> > > >> Good Morning to you also. > > >> > > >> Absolutely! That was one of the very first things that I checked > > >> > > >> ----- Original Message ----- > > >> From: "Foote, Chris" > > >> To: "'Access Developers discussion and problem solving'" > > >> > > >> Sent: Wednesday, March 15, 2006 2:26 AM > > >> Subject: Re: [AccessD] Memo field on report > > >> > > >> > > >> > Good morning John! > > >> > > > >> > Have you checked that the "Can Grow" parameter for your > > >> relevant control > > >> > on > > >> > the report is set to "Yes"? > > >> > > > >> > Regards > > >> > Chris F > > >> > > > >> >> -----Original Message----- > > >> >> From: accessd-bounces at databaseadvisors.com > > >> >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf > > Of John Eget > > >> >> Sent: Wednesday, March 15, 2006 7:15 AM > > >> >> To: AccessD at databaseadvisors.com > > >> >> Subject: [AccessD] Memo field on report > > >> >> > > >> >> > > >> >> All > > >> >> I have several make table queries to make a selection of data > > >> >> for a report. One of the fields (Remarks) is a Memo > field. When > > >> >> displayed on the report, the memo field is limited in > size and > > >> >> does not display all of the text in the memo field. > Does anyone > > >> >> have an idea? It is almost as if the memo field is being > > >> >> displayed as a text field John > > > -- > > > AccessD mailing list > > > AccessD at databaseadvisors.com > > > http://databaseadvisors.com/mailman/listinfo/accessd > > > Website: http://www.databaseadvisors.com > > > > > > > > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > From joeget at vgernet.net Wed Mar 15 02:44:59 2006 From: joeget at vgernet.net (John Eget) Date: Wed, 15 Mar 2006 03:44:59 -0500 Subject: [AccessD] Memo field on report References: <7303A459C921B5499AF732CCEEAD2B7F3E6C38@craws161660.int.rdel.co.uk> Message-ID: <000a01c6480c$c2163300$cbc2f63f@JOHN> my final query has the total option enabled and that is truncating the memo field. so now i know ----- Original Message ----- From: "Foote, Chris" To: "'Access Developers discussion and problem solving'" Sent: Wednesday, March 15, 2006 2:55 AM Subject: Re: [AccessD] Memo field on report > That's me out of ideas then ;-) > > I assume that you've checked that the temporary tables contain the Remarks > contents and that this is not being truncated somewhere other than the > report? > > Andy? Any other ideas? > > Chris F > >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget >> Sent: Wednesday, March 15, 2006 7:48 AM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Memo field on report >> >> >> Absolutely, the detail section is also set to grow. >> ----- Original Message ----- >> From: "Foote, Chris" >> To: "'Access Developers discussion and problem solving'" >> >> Sent: Wednesday, March 15, 2006 2:44 AM >> Subject: Re: [AccessD] Memo field on report >> >> >> > Ok John! >> > >> > Is the "Can Grow" parameter for the section that contains >> the control set >> > to >> > "Yes"? >> > >> > Regards >> > Chris F >> > >> >> -----Original Message----- >> >> From: accessd-bounces at databaseadvisors.com >> >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget >> >> Sent: Wednesday, March 15, 2006 7:35 AM >> >> To: Access Developers discussion and problem solving >> >> Subject: Re: [AccessD] Memo field on report >> >> >> >> >> >> Good Morning to you also. >> >> >> >> Absolutely! That was one of the very first things that I checked >> >> >> >> ----- Original Message ----- >> >> From: "Foote, Chris" >> >> To: "'Access Developers discussion and problem solving'" >> >> >> >> Sent: Wednesday, March 15, 2006 2:26 AM >> >> Subject: Re: [AccessD] Memo field on report >> >> >> >> >> >> > Good morning John! >> >> > >> >> > Have you checked that the "Can Grow" parameter for your >> >> relevant control >> >> > on >> >> > the report is set to "Yes"? >> >> > >> >> > Regards >> >> > Chris F >> >> > >> >> >> -----Original Message----- >> >> >> From: accessd-bounces at databaseadvisors.com >> >> >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf >> Of John Eget >> >> >> Sent: Wednesday, March 15, 2006 7:15 AM >> >> >> To: AccessD at databaseadvisors.com >> >> >> Subject: [AccessD] Memo field on report >> >> >> >> >> >> >> >> >> All >> >> >> I have several make table queries to make a selection of data >> >> >> for a report. One of the fields (Remarks) is a Memo field. >> >> >> When displayed on the report, the memo field is limited in >> >> >> size and does not display all of the text in the memo field. >> >> >> Does anyone have an idea? It is almost as if the memo field >> >> >> is being displayed as a text field >> >> >> John >> > -- >> > AccessD mailing list >> > AccessD at databaseadvisors.com >> > http://databaseadvisors.com/mailman/listinfo/accessd >> > Website: http://www.databaseadvisors.com >> > >> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From Chris.Foote at uk.thalesgroup.com Wed Mar 15 02:54:35 2006 From: Chris.Foote at uk.thalesgroup.com (Foote, Chris) Date: Wed, 15 Mar 2006 08:54:35 -0000 Subject: [AccessD] Memo field on report Message-ID: <7303A459C921B5499AF732CCEEAD2B7F3E6C39@craws161660.int.rdel.co.uk> Ah ha! Glad you are now sorted John! Regards Chris F > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget > Sent: Wednesday, March 15, 2006 8:45 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Memo field on report > > > my final query has the total option enabled and that is > truncating the memo > field. > > so now i know > > > ----- Original Message ----- > From: "Foote, Chris" > To: "'Access Developers discussion and problem solving'" > > Sent: Wednesday, March 15, 2006 2:55 AM > Subject: Re: [AccessD] Memo field on report > > > > That's me out of ideas then ;-) > > > > I assume that you've checked that the temporary tables > contain the Remarks > > contents and that this is not being truncated somewhere > other than the > > report? > > > > Andy? Any other ideas? > > > > Chris F > From shamil at users.mns.ru Wed Mar 15 03:14:55 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Wed, 15 Mar 2006 12:14:55 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant> <001201c647a3$3283af10$6501a8c0@Nant> Message-ID: <001101c64810$f9ad0420$6501a8c0@Nant> Hi All, New version of tests is now available at http://smsconsulting.spb.ru/download/tests/a2dds.htm . It uses library mdb as it was planned and it has some other improvements. Some users report they have problems with MS Access XP. I did test on my main development PC and it worked OK with MS Access XP. Your additional feedback on this subject would be very useful to fix the problem and to improve the tests! Thank you. Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 14, 2006 11:09 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > ADP version of crash test added here > http://smsconsulting.spb.ru/download/tests/a2dds.htm . > > In fact both mdb and ADP use the same code, which forks in some points on > runtime depending on project type it runs in... > > Within future days/weeks will be coming: > > - lightweight framework code stored in a library mdb/adp > - adding/fixing functionality for MS Access reports > - adding/fixing functionality for new rows additions; > - adding/fixing functionality for rows deletions. > - ... > > This test/sample still may get stuck somewhere unexpectedly because the > "dark unexplored waters" we're trying to glide on may have sharp stones, > which can severely damage and sink our lightweight framework/ship... > > Shamil > <<< tail skipped >>> From joeget at vgernet.net Wed Mar 15 03:18:31 2006 From: joeget at vgernet.net (John Eget) Date: Wed, 15 Mar 2006 04:18:31 -0500 Subject: [AccessD] Memo field on report References: <7303A459C921B5499AF732CCEEAD2B7F3E6C39@craws161660.int.rdel.co.uk> Message-ID: <001701c64811$70ee7f00$cbc2f63f@JOHN> had to do summation on report, thanks for the hint. it made a difference ----- Original Message ----- From: "Foote, Chris" To: "'Access Developers discussion and problem solving'" Sent: Wednesday, March 15, 2006 3:54 AM Subject: Re: [AccessD] Memo field on report > Ah ha! > > Glad you are now sorted John! > > Regards > Chris F > >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Eget >> Sent: Wednesday, March 15, 2006 8:45 AM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] Memo field on report >> >> >> my final query has the total option enabled and that is >> truncating the memo >> field. >> >> so now i know >> >> >> ----- Original Message ----- >> From: "Foote, Chris" >> To: "'Access Developers discussion and problem solving'" >> >> Sent: Wednesday, March 15, 2006 2:55 AM >> Subject: Re: [AccessD] Memo field on report >> >> >> > That's me out of ideas then ;-) >> > >> > I assume that you've checked that the temporary tables >> contain the Remarks >> > contents and that this is not being truncated somewhere >> other than the >> > report? >> > >> > Andy? Any other ideas? >> > >> > Chris F >> > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From pcs at azizaz.com Wed Mar 15 03:49:48 2006 From: pcs at azizaz.com (Borge Hansen) Date: Wed, 15 Mar 2006 19:49:48 +1000 Subject: [AccessD] Memo field on report References: <7303A459C921B5499AF732CCEEAD2B7F3E6C39@craws161660.int.rdel.co.uk> Message-ID: <0b4c01c64815$cca730e0$fa10a8c0@Albatross> I have experienced something similar (memo field being truncated) when using a number of query steps in order to get the recordsource for a report. What I did was to leave the memo field out from the 'query steps' and then use a join between the source table for the memo field and the resulting query from the query steps. regards borge > > > > my final query has the total option enabled and that is > > truncating the memo > > field. > > From stuart at lexacorp.com.pg Wed Mar 15 03:59:14 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Wed, 15 Mar 2006 19:59:14 +1000 Subject: [AccessD] User security In-Reply-To: <002201c64803$a309ad60$cbc2f63f@JOHN> Message-ID: <44187212.21017.CAF5998@stuart.lexacorp.com.pg> On 15 Mar 2006 at 2:39, John Eget wrote: > All > I have been discovering lately that records are being edited by other > individuals than generated the record. All records are tagged with an > individuals name. Is there a simple way to insure that records cannot be > edited by another individual. I tried going thru the security wizard but > got side tracked with all of the options and was not successful John -- > AccessD mailing list AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd Website: > http://www.databaseadvisors.com In the BeforeUpdate of the form, compare the original individuals name with the current username and set Cancel = True with an appropriate message if they are not the same. -- Stuart From ecritt1 at alltel.net Wed Mar 15 05:55:40 2006 From: ecritt1 at alltel.net (Penn White) Date: Wed, 15 Mar 2006 06:55:40 -0500 Subject: [AccessD] Using Multidimensional Arrays References: <010501c641d1$fd330f30$0302a8c0@pennp4> Message-ID: <001401c64827$61fd6a40$0302a8c0@pennp4> Just to be complete for the archives, I thought I'd post my solution to this problem. Thanks very much to all who offered advice and got me thinking and exploring several new ways of doing things, especially using Custom Collection Classes which I didn't actually need here but will definitely use in future develpment tasks. Some references I found useful were the following: 1. Using Custom Collection Classes in Access http://www.databaseadvisors.com/newsletters/newsletter200503/0503usingcustomcollections/using%20custom%20collections%20in%20microsoft%20access.htm 2. How to Programmatically Export Items to Microsoft Access http://support.microsoft.com/?kbid=253794 3. Ten Tips for Microsoft Outlook Developers http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnout2k2/html/odc_novoltips.asp *************** CODE *************** Function Fn_CreateRecipList(ctlList As Control) As String ' 1. Creates Recipient string for 'SendObject' email. ' 2. Verifies that there is a Contact in Outlook for each Recipient. ' 3. If Contact in Outlook, verifies Email Address is current. ' Note: I have my own Error Handling routine so just substitute it with your own. Dim varItem As Variant Dim strRecip1 As String Dim strFirst1 As String Dim strLast1 As String Dim strEmail1 As String Dim strRecip As String ' Set up Outlook objects. Dim ol As New Outlook.Application Dim olCi As Outlook.ContactItem Dim cf As Outlook.MAPIFolder Dim olns As Outlook.NameSpace Dim olItems As Outlook.Items On Error GoTo Err_Fn_CreateRecipList ' Revised Error Handler Set ol = CreateObject("Outlook.Application") Set olns = ol.GetNamespace("MAPI") Set cf = olns.GetDefaultFolder(olFolderContacts) Set olItems = cf.Items For Each varItem In ctlList.ItemsSelected strFirst1 = ctlList.Column(3, varItem) strLast1 = ctlList.Column(2, varItem) If strFirst1 = "" And strLast1 = "" Then strRecip1 = ctlList.Column(1, varItem) strLast1 = strRecip1 Else strRecip1 = strFirst1 & " " & strLast1 End If strEmail1 = Fn_CreateOLEmail(ctlList.Column(4, varItem)) Set olCi = cf.Items.Find("[FullName] = '" & strRecip1 & "'") If TypeName(olCi) = "Nothing" Then ' Add Contact Set olCi = ol.CreateItem(olContactItem) olCi.FirstName = strFirst1 olCi.LastName = strLast1 olCi.Email1Address = strEmail1 olCi.Save Else ' Verify Email Address If olCi.Email1Address <> strEmail1 Then olCi.Email1Address = strEmail1 olCi.Save End If End If If Fn_IsNothing(strRecip) Then strRecip = strRecip1 Else strRecip = strRecip & "; " & strRecip1 End If Next varItem Fn_CreateRecipList = strRecip Exit_Fn_CreateRecipList: Set olCi = Nothing Set olItems = Nothing Set cf = Nothing Set olns = Nothing Set ol = Nothing Exit Function Err_Fn_CreateRecipList: Select Case Err.Number Case 0 Resume Next Case Else If Fn_ShowGenericErrorMsg("M_MiscFunctions", "Fn_CreateRecipList", Err.Number, Err.Description) = True Then Stop Resume Else Resume Exit_Fn_CreateRecipList End If End Select End Function From Gustav at cactus.dk Wed Mar 15 08:02:36 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 15 Mar 2006 15:02:36 +0100 Subject: [AccessD] Memo field on report Message-ID: Hi John First thing to do is to add one or two linefeed to prevent this. It's an old bug, I don't if it is still present. Try, in your query, concatenating the output memo field with a couple of linefeeds: MemoOut: [myMemoField] & Chr(13) & Chr(10) & Chr(13) & Chr(10) If that doesn't help, extract the memo field record by record: http://databaseadvisors.com/pipermail/accessd/2003-December/018123.html /gustav >>> joeget at vgernet.net 15-03-2006 08:15:22 >>> All I have several make table queries to make a selection of data for a report. One of the fields (Remarks) is a Memo field. When displayed on the report, the memo field is limited in size and does not display all of the text in the memo field. Does anyone have an idea? It is almost as if the memo field is being displayed as a text field John From rusty.hammond at cpiqpc.com Wed Mar 15 09:05:20 2006 From: rusty.hammond at cpiqpc.com (rusty.hammond at cpiqpc.com) Date: Wed, 15 Mar 2006 09:05:20 -0600 Subject: [AccessD] Parent form PK changed (VALUE) Message-ID: <8301C8A868251E4C8ECD3D4FFEA40F8A154F8578@cpixchng-1.cpiqpc.net> John, Could you use the OnCurrent property of the parent form to requery the combo on the subform or maybe the AfterUpdate property of the Master field? -----Original Message----- From: John Colby [mailto:jwcolby at colbyconsulting.com] Sent: Tuesday, March 14, 2006 8:00 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Parent form PK changed (VALUE) Is there a way (built into Access) to tell if the parent form record changed from the subform? IOW, in the case of a M-M table, implemented in a subform, one of the fields of the M-M would be the parent ID. tblCompany CO_ID CO_Name CO_Etc tblPeople PE_ID PE_Lname PE_Fname PE_Etc tblEmployees EM_ID EM_IDPE EM_IDCO If the parent form is the company, the child form is the employee, the "link" is the EM_IDCO with a combo representing the people. I want to monitor when the parent ID changes (CO_ID) from the subform sfrmEmployee. I know that the subform control has a Link Child Field / Link Master Field pair of properties, but is there a property that feeds the VALUE of the Link Master Field into the subform for it's use? The subform filters its recordset based on the Link Master Field VALUE so it must be able to see it. In fact all I want to know is THAT the Link Master Field VALUE changed so that I can requery a dependent combo in the child form. John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com ********************************************************************** WARNING: All e-mail sent to and from this address will be received, scanned or otherwise recorded by the CPI Qualified Plan Consultants, Inc. corporate e-mail system and is subject to archival, monitoring or review by, and/or disclosure to, someone other than the recipient. ********************************************************************** From cfoust at infostatsystems.com Wed Mar 15 10:32:16 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Wed, 15 Mar 2006 08:32:16 -0800 Subject: [AccessD] Parent form PK changed (VALUE) Message-ID: If the parent and child forms are linked, the link is between the recordsets or between the recordset on the child and unbound controls on the parent. It's essentially a join, so they don't need to read one another's values. Probably the simplest way to do it would be to store a module level value in the subform in the current event and then check it in each OnCurrent to see if it matches the Parent value. If not, change it to the new value and requery your combo. It would be even simpler to just requery it in the Current event, but that could lead to requerying it unnecessarily. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Tuesday, March 14, 2006 6:00 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Parent form PK changed (VALUE) Is there a way (built into Access) to tell if the parent form record changed from the subform? IOW, in the case of a M-M table, implemented in a subform, one of the fields of the M-M would be the parent ID. tblCompany CO_ID CO_Name CO_Etc tblPeople PE_ID PE_Lname PE_Fname PE_Etc tblEmployees EM_ID EM_IDPE EM_IDCO If the parent form is the company, the child form is the employee, the "link" is the EM_IDCO with a combo representing the people. I want to monitor when the parent ID changes (CO_ID) from the subform sfrmEmployee. I know that the subform control has a Link Child Field / Link Master Field pair of properties, but is there a property that feeds the VALUE of the Link Master Field into the subform for it's use? The subform filters its recordset based on the Link Master Field VALUE so it must be able to see it. In fact all I want to know is THAT the Link Master Field VALUE changed so that I can requery a dependent combo in the child form. John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bheid at appdevgrp.com Wed Mar 15 10:38:07 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Wed, 15 Mar 2006 11:38:07 -0500 Subject: [AccessD] [SPAM SUSPECT] User security In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D6B112@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D35104@ADGSERVER> Have you locked out table access? That is, disable the F11 key and hide the database window. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Eget Sent: Wednesday, March 15, 2006 2:39 AM To: Access Developers discussion and problem solving Subject: [SPAM SUSPECT] [AccessD] User security Importance: Low All I have been discovering lately that records are being edited by other individuals than generated the record. All records are tagged with an individuals name. Is there a simple way to insure that records cannot be edited by another individual. I tried going thru the security wizard but got side tracked with all of the options and was not successful John From ewaldt at gdls.com Wed Mar 15 10:58:49 2006 From: ewaldt at gdls.com (ewaldt at gdls.com) Date: Wed, 15 Mar 2006 11:58:49 -0500 Subject: [AccessD] (no subject) In-Reply-To: Message-ID: I have a form with a list of options of like type, each with its own checkbox (think "listbox" with multi-select enabled, but the boss wanted checkboxes). When a checkbox is checked, I want a listbox to appear with corresponding choices from another table. I then need to be able to capture what has been chosen. Remember that the user can choose more than one checkbox, but will then choose only one (if any) from among the choices in the corresponding listbox. I hope this is clear. Any help will be appreciated. TIA, Tom Ewald This is an e-mail from General Dynamics Land Systems. It is for the intended recipient only and may contain confidential and privileged information. No one else may read, print, store, copy, forward or act in reliance on it or its attachments. If you are not the intended recipient, please return this message to the sender and delete the message and any attachments from your computer. Your cooperation is appreciated. From Lambert.Heenan at AIG.com Wed Mar 15 11:04:29 2006 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Wed, 15 Mar 2006 11:04:29 -0600 Subject: [AccessD] User security Message-ID: <1D7828CDB8350747AFE9D69E0E90DA1F1E8895D1@xlivmbx21.aig.com> "All records are tagged with an individuals name" do you mean you are storing the user's LAN ID with each record as it is created? If so then in your forms' OnCurrent Events you can check the user's LAN ID again and if it differs from the stored ID in the record deny write access. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Eget Sent: Wednesday, March 15, 2006 2:39 AM To: Access Developers discussion and problem solving Subject: [AccessD] User security All I have been discovering lately that records are being edited by other individuals than generated the record. All records are tagged with an individuals name. Is there a simple way to insure that records cannot be edited by another individual. I tried going thru the security wizard but got side tracked with all of the options and was not successful John -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From reuben at gfconsultants.com Wed Mar 15 11:13:43 2006 From: reuben at gfconsultants.com (Reuben Cummings) Date: Wed, 15 Mar 2006 12:13:43 -0500 Subject: [AccessD] (no subject) In-Reply-To: Message-ID: I would simply hide and unhide all the listboxes on the form right next the corresponding check box. Only show the list boxes when the appropriate check box is picked. Reuben Cummings GFC, LLC 812.523.1017 > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of > ewaldt at gdls.com > Sent: Wednesday, March 15, 2006 11:59 AM > To: accessd at databaseadvisors.com > Subject: [AccessD] (no subject) > > > I have a form with a list of options of like type, each with its own > checkbox (think "listbox" with multi-select enabled, but the boss wanted > checkboxes). > > When a checkbox is checked, I want a listbox to appear with corresponding > choices from another table. I then need to be able to capture > what has been > chosen. Remember that the user can choose more than one checkbox, but will > then choose only one (if any) from among the choices in the corresponding > listbox. > > I hope this is clear. Any help will be appreciated. > > TIA, > > Tom Ewald > > > > > This is an e-mail from General Dynamics Land Systems. It is for > the intended recipient only and may contain confidential and > privileged information. No one else may read, print, store, > copy, forward or act in reliance on it or its attachments. If > you are not the intended recipient, please return this message to > the sender and delete the message and any attachments from your > computer. Your cooperation is appreciated. > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From JRojas at tnco-inc.com Wed Mar 15 11:56:26 2006 From: JRojas at tnco-inc.com (Joe Rojas) Date: Wed, 15 Mar 2006 12:56:26 -0500 Subject: [AccessD] Regular Expressions? Message-ID: <758E92433C4F3740B67BE4DD369AF5771569FF@ex2k3.corp.tnco-inc.com> How can I add the ability to use regular expression in Access 2000? **Background** We are performing data conversion from our old MRP system to our new ERP system and we are using Access to massage the data in between the two systems. One of the decisions that we made was to go from all capital letters in our part number descriptions to proper case. At first I thought I would just convert each word to proper case but then I noticed that some of our descriptions look like "24CM 10MM ADAPTOR SLEEVE LG" and we would like the resulting text to look like "24CM 10MM Adaptor Sleeve LG" not "24cm Adaptor Sleeve Lg". My best guess is to use regular expressions to identify most patterns and then probably go over the data manual to make sure we didn't miss anything. Anyone have a better idea? Thanks, Joe Rojas IT Manager TNCO, Inc. 781-447-6661 x7506 jrojas at tnco-inc.com From Jdemarco at hudsonhealthplan.org Wed Mar 15 12:14:18 2006 From: Jdemarco at hudsonhealthplan.org (Jim DeMarco) Date: Wed, 15 Mar 2006 13:14:18 -0500 Subject: [AccessD] Regular Expressions? Message-ID: <08F823FD83787D4BA0B99CA580AD3C74030C61CE@TTNEXCHCL2.hshhp.com> Joe, Not sure what you'd be using RegEx for? AFAIK they won't format your data just find items that match a pattern. Jim DeMarco -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Joe Rojas Sent: Wednesday, March 15, 2006 12:56 PM To: Access Developers discussion and problem solving Subject: [AccessD] Regular Expressions? How can I add the ability to use regular expression in Access 2000? **Background** We are performing data conversion from our old MRP system to our new ERP system and we are using Access to massage the data in between the two systems. One of the decisions that we made was to go from all capital letters in our part number descriptions to proper case. At first I thought I would just convert each word to proper case but then I noticed that some of our descriptions look like "24CM 10MM ADAPTOR SLEEVE LG" and we would like the resulting text to look like "24CM 10MM Adaptor Sleeve LG" not "24cm Adaptor Sleeve Lg". My best guess is to use regular expressions to identify most patterns and then probably go over the data manual to make sure we didn't miss anything. Anyone have a better idea? Thanks, Joe Rojas IT Manager TNCO, Inc. 781-447-6661 x7506 jrojas at tnco-inc.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************************** "This electronic message is intended to be for the use only of the named recipient, and may contain information from Hudson Health Plan (HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". *********************************************************************************** From Gustav at cactus.dk Wed Mar 15 12:14:22 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 15 Mar 2006 19:14:22 +0100 Subject: [AccessD] Regular Expressions? Message-ID: Hi Joe Perhaps you could apply ProperCase first and then use Replace to change strings like " Lg" with " LG". That depends, but the method is very simple and no normal word begins with LG. Notice that if 24 and 10 are centimeters resp. millimeters, cm and mm are the correct units, not CM or MM. /gustav >>> JRojas at tnco-inc.com 15-03-2006 18:56:26 >>> How can I add the ability to use regular expression in Access 2000? **Background** We are performing data conversion from our old MRP system to our new ERP system and we are using Access to massage the data in between the two systems. One of the decisions that we made was to go from all capital letters in our part number descriptions to proper case. At first I thought I would just convert each word to proper case but then I noticed that some of our descriptions look like "24CM 10MM ADAPTOR SLEEVE LG" and we would like the resulting text to look like "24CM 10MM Adaptor Sleeve LG" not "24cm Adaptor Sleeve Lg". My best guess is to use regular expressions to identify most patterns and then probably go over the data manual to make sure we didn't miss anything. Anyone have a better idea? Thanks, Joe Rojas IT Manager TNCO, Inc. 781-447-6661 x7506 jrojas at tnco-inc.com From JRojas at tnco-inc.com Wed Mar 15 12:43:20 2006 From: JRojas at tnco-inc.com (Joe Rojas) Date: Wed, 15 Mar 2006 13:43:20 -0500 Subject: [AccessD] Regular Expressions? Message-ID: <758E92433C4F3740B67BE4DD369AF577156A00@ex2k3.corp.tnco-inc.com> Good point. I should have included the rest of my logic. I plan on checking to see if each word matches a particular pattern and if it does then I would NOT convert to proper case else I would convert. Thanks, Joe Rojas IT Manager TNCO, Inc. 781-447-6661 x7506 jrojas at tnco-inc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Jim DeMarco Sent: Wednesday, March 15, 2006 1:14 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Regular Expressions? Joe, Not sure what you'd be using RegEx for? AFAIK they won't format your data just find items that match a pattern. Jim DeMarco -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Joe Rojas Sent: Wednesday, March 15, 2006 12:56 PM To: Access Developers discussion and problem solving Subject: [AccessD] Regular Expressions? How can I add the ability to use regular expression in Access 2000? **Background** We are performing data conversion from our old MRP system to our new ERP system and we are using Access to massage the data in between the two systems. One of the decisions that we made was to go from all capital letters in our part number descriptions to proper case. At first I thought I would just convert each word to proper case but then I noticed that some of our descriptions look like "24CM 10MM ADAPTOR SLEEVE LG" and we would like the resulting text to look like "24CM 10MM Adaptor Sleeve LG" not "24cm Adaptor Sleeve Lg". My best guess is to use regular expressions to identify most patterns and then probably go over the data manual to make sure we didn't miss anything. Anyone have a better idea? Thanks, Joe Rojas IT Manager TNCO, Inc. 781-447-6661 x7506 jrojas at tnco-inc.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************************** "This electronic message is intended to be for the use only of the named recipient, and may contain information from Hudson Health Plan (HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". *********************************************************************************** -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From martyconnelly at shaw.ca Wed Mar 15 12:43:42 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Wed, 15 Mar 2006 10:43:42 -0800 Subject: [AccessD] Performance Listview References: Message-ID: <4418605E.1020908@shaw.ca> You might have a look through Stepan Lebans site, he has about a dozen examples of various listbox methods One is a class that does row colouring. Whether it's faster dunno. http://www.lebans.com http://www.lebans.com/listboxenhanced.htm Other ideas and methods Combos with Tens of Thousands of Records http://allenbrowne.com/ser-32.html E-business2start.com - Marcel Vreuls wrote: >Hi, > >In order to make my A2k more attractive and user friendly i have replaced the standard Listview with the comm.contr. Listview from MS. >I populate the listview by selecting a DAO.recordset and than use the .ADD listitems functions to add the records to the listview. After that i call a function which colors the rows accordnig to a certain value in the subitems. >It works fine but I notice that this goes very slow particularly the coloring of the rows. When i fill the listview with 500 records the filling takes about 5 seconds but the coloring 30 seconds. > >Any tips, ideas how ik can make it faster. > >I have a database with about 20.000 orders in it. Customers would like to have a listview which shows ALL orders so they can sort, filter etc. This i can not support performance wise with this solution. The standard listview of access is much and much faster. > > >Thanx, marcel > > >------------------------------------------------------------------------ > >No virus found in this incoming message. >Checked by AVG Free Edition. >Version: 7.1.375 / Virus Database: 268.2.1/278 - Release Date: 09/03/2006 > > -- Marty Connelly Victoria, B.C. Canada From martyconnelly at shaw.ca Wed Mar 15 12:49:49 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Wed, 15 Mar 2006 10:49:49 -0800 Subject: [AccessD] User security References: <002201c64803$a309ad60$cbc2f63f@JOHN> Message-ID: <441861CD.30706@shaw.ca> Maybe some ideas here Enabling/Disabling controls, based on User Security http://allenbrowne.com/ser-15.html John Eget wrote: >All >I have been discovering lately that records are being edited by other individuals than generated the record. All records are tagged with an individuals name. Is there a simple way to insure that records cannot be edited by another individual. I tried going thru the security wizard but got side tracked with all of the options and was not successful >John > > -- Marty Connelly Victoria, B.C. Canada From Gustav at cactus.dk Wed Mar 15 12:59:44 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 15 Mar 2006 19:59:44 +0100 Subject: [AccessD] Regular Expressions? Message-ID: Hi Joe You could use astrWord = Split(strField, " ") to create an array with the words of the field. Then it is easy and quite fast to perform that check. /gustav >>> JRojas at tnco-inc.com 15-03-2006 19:43:20 >>> Good point. I should have included the rest of my logic. I plan on checking to see if each word matches a particular pattern and if it does then I would NOT convert to proper case else I would convert. From ewaldt at gdls.com Wed Mar 15 13:46:12 2006 From: ewaldt at gdls.com (ewaldt at gdls.com) Date: Wed, 15 Mar 2006 14:46:12 -0500 Subject: [AccessD] Checkbox/Combo box questions In-Reply-To: Message-ID: I have a group of several checkboxes, all selecting members of the same table; this is the type of information that would usually be represented in a multi-select combo box, but the boss wanted it to be in this format. When a checkbox is clicked to add a checkmark, I need a combo box to come up, showing options available (from another table) to that particular checkbox. I need to save the choice (if any), and then allow the user to select another checkbox and go through the process again. Of course, I need the information to be captured. Let?s say we have 3 families: The Smiths, Joneses, and Browns. Here are their members: Smith: Sam, Sally, Sue Jones: John, Joan, Jim Brown: Bob, Barb, Bill, Brenda If checkboxes are labeled with last names, and the user checks Smith, I want the combo box to display Sam, Sally, and Sue, so that the user can choose one of them; let?s say Sam. The user can then select Jones or Brown, and have the appropriate first names show up; let?s assume it?s Barb Brown. When it?s finished, I should have Sam Smith and Barb Brown available to be inserted into the database as the choices for this iteration. Families (last names) and individuals (first names) are in different tables, with the individuals table having a secondary key to the families table. I have the checkboxes; I can create the combo box. I?d like to use the same combo box for all choices and repopulate it based on the checkbox choice; otherwise, the combo boxes would take up way too much room (I have over 30 checkboxes). Also, I?m not really sure how to capture the information, since reusing the combo box would disallow just capturing the data when the user is finished (previous choices would have been deleted). Any suggestions? TIA, Tom Ewald This is an e-mail from General Dynamics Land Systems. It is for the intended recipient only and may contain confidential and privileged information. No one else may read, print, store, copy, forward or act in reliance on it or its attachments. If you are not the intended recipient, please return this message to the sender and delete the message and any attachments from your computer. Your cooperation is appreciated. From cyx5 at cdc.gov Wed Mar 15 13:46:49 2006 From: cyx5 at cdc.gov (Nicholson, Karen) Date: Wed, 15 Mar 2006 14:46:49 -0500 Subject: [AccessD] Dying on Code Here Message-ID: Help Me! I can not get this stupid code to work. Private Sub cmdRunImport_Click() Dim cnn As ADODB.Connection Set cnn = CurrentProject.Connection Dim strTableName As String Dim strFieldName As String Dim srfFieldNameChg As String Dim ctl As Control Dim ctlName As String I am trying to capture the field names and values of over 30 fields on a form, pass those names and values into a procedure to then *run around my database* and update every table that contains the field name with the captured value. This database is a total un-normalized mess and the option of normalizing does not happen to be an option at this time. I got the code to work for just one field. It is fine. I then tried to put a value on the "tag" for each required field on the form, but I can't seem to call it from within this code. Any ideas on how I can store the required fields and make this thing pump through the records? Aughghghg!!!!! Private Sub cmdRunImport_Click() Dim cnn As ADODB.Connection Set cnn = CurrentProject.Connection Dim strTableName As String Dim strFieldName As String Dim srfFieldNameChg As String Dim ctl As Control Dim ctlName As String Dim i As Integer Dim j As Integer For i = 0 To CurrentDb.TableDefs.Count - 1 For j = 0 To CurrentDb.TableDefs(i).Fields.Count - 1 If (CurrentDb.TableDefs(i).Name Like "*SAF") Then If (CurrentDb.TableDefs(i).Fields(j).Name = ("ManufacturerCode")) Then ===>> 'Or (CurrentDb.TableDefs(i).Fields(j).Name = ("sitecode")) Then Debug.Print "Field: " & CurrentDb.TableDefs(i).Fields(j).Name Debug.Print "Table: " & CurrentDb.TableDefs(i).Name End If End If Next Next strTableName = CurrentDb.TableDefs(i).Name strFieldName = CurrentDb.TableDefs(i).Fields(j).Name strFieldNameChg = "Forms![frmRequiredFieldsReview]![" & strFieldName & "chg]" Debug.Print " Field: " & CurrentDb.TableDefs(i).Fields(j).Name Debug.Print strTableName Debug.Print strFieldName Dim sqlTest As String sqlTest = "update " & strTableName & " set " & strFieldName & " = " & strFieldNameChg DoCmd.RunSQL sqlTest Set cnn = Nothing End Sub This works just fine. But I have 26 fields to go through. It will not honor that *tag* value. I need it to loop through my 26 or so field names and print out each one above, line by line so I can insert it into SQL code for my update statement. Any ideas? Karen S. Nicholson Programmer Analyst EG&G Technical Services, Inc. Pittsburgh, PA Phone: 412-386-6649 Email: cyx5 at cdc.gov From Patricia.O'Connor at otda.state.ny.us Wed Mar 15 14:10:47 2006 From: Patricia.O'Connor at otda.state.ny.us (O'Connor, Patricia (OTDA)) Date: Wed, 15 Mar 2006 15:10:47 -0500 Subject: [AccessD] OT: Modify Office folder name without re-Installing Message-ID: <01DBAB52E30A9A4AB3D94EF8029EDBE8016B2485@EXCNYSM0A1AI.nysemail.nyenet> HI all I am asking this list cause I can't get a straight answer from work and they just want me to delete all older access versions shich I can't do right now. Is there a way to just change the folder where microsoft office is without re-installing that version? Right now I have Access 97 from Office 97 is in C:\Program Files\Microsoft Office 97\Office. Of course I wasn't around the day when they installed the Office 2000 (all) version and they put it into C:\Program Files\Microsoft Office\Office. They did not install this version well at all. I have been having quite a few problems with missing parts. We were supposed to be loading Office 2003 on my machine last week but can't figure out how to load it without deleting all the earlier versions (don't ask). I am trying to get them to just give me the disks so I can install it myself with no extra problems. Any help would be greatly appreciated. Thanks Patti ************************************************** * Patricia O'Connor * Associate Computer Programmer Analyst * OTDA - BDMA * (W) mailto:Patricia.O'Connor at otda.state.ny.us * (w) mailto:aa1160 at otda.state.ny.us ************************************************** -------------------------------------------------------- This e-mail, including any attachments, may be confidential, privileged or otherwise legally protected. It is intended only for the addressee. If you received this e-mail in error or from someone who was not authorized to send it to you, do not disseminate, copy or otherwise use this e-mail or its attachments. Please notify the sender immediately by reply e-mail and delete the e-mail from your system. From ecritt1 at alltel.net Wed Mar 15 14:22:19 2006 From: ecritt1 at alltel.net (Penn White) Date: Wed, 15 Mar 2006 15:22:19 -0500 Subject: [AccessD] Backup BE Db to CD? Message-ID: <010901c6486e$292b16d0$0302a8c0@pennp4> I would like to automate (use a command button w/VBA code) backing up of the backend database to a CD. I have searched and searched and found nothing appropriate. Perhaps it's so simple, nobody bothers to talk about it... I'm already using Neil Squires' BackupData class for backing up to a hard drive. http://www.rogersaccesslibrary.com/Otherdownload.asp?SampleName='AutoBackupDemo.zip' Any ideas greatly appreciated. Penn From bheid at appdevgrp.com Wed Mar 15 14:29:05 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Wed, 15 Mar 2006 15:29:05 -0500 Subject: [AccessD] OT: Modify Office folder name without re-Installing In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D6B1FB@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D35107@ADGSERVER> Patti, I don't know how you can rename the existing folders, but you can change the directory where the new version goes. I have Access 97, Access 2000, Office XP, and Office 2003 on my system at home. When I installed office 2003, I changed the default directory from ...\Microsoft Office\ (or whatever it is) to ...\MS Office 2003\. That lets the different versions all work well together. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of O'Connor, Patricia (OTDA) Sent: Wednesday, March 15, 2006 3:11 PM To: Access Developers discussion and problem solving Subject: [AccessD] OT: Modify Office folder name without re-Installing HI all I am asking this list cause I can't get a straight answer from work and they just want me to delete all older access versions shich I can't do right now. Is there a way to just change the folder where microsoft office is without re-installing that version? Right now I have Access 97 from Office 97 is in C:\Program Files\Microsoft Office 97\Office. Of course I wasn't around the day when they installed the Office 2000 (all) version and they put it into C:\Program Files\Microsoft Office\Office. They did not install this version well at all. I have been having quite a few problems with missing parts. We were supposed to be loading Office 2003 on my machine last week but can't figure out how to load it without deleting all the earlier versions (don't ask). I am trying to get them to just give me the disks so I can install it myself with no extra problems. Any help would be greatly appreciated. Thanks Patti From oost at e-business2start.com Wed Mar 15 14:50:51 2006 From: oost at e-business2start.com (E-business2start.com - Marcel Vreuls) Date: Wed, 15 Mar 2006 12:50:51 -0800 Subject: [AccessD] Performance Listview Message-ID: <4a0fa4dd835f3c28d6e01769d69b0a4a@e-business2start.com> Thanks, i will take a look at it -----Original message----- From: MartyConnelly martyconnelly at shaw.ca Date: Wed, 15 Mar 2006 20:47:16 -0800 To: Access Developers discussion and problem solving accessd at databaseadvisors.com Subject: Re: [AccessD] Performance Listview > You might have a look through Stepan Lebans site, he has about a dozen > examples of various listbox methods > One is a class that does row colouring. Whether it's faster dunno. > http://www.lebans.com > http://www.lebans.com/listboxenhanced.htm > Other ideas and methods > Combos with Tens of Thousands of Records > http://allenbrowne.com/ser-32.html > > E-business2start.com - Marcel Vreuls wrote: > > >Hi, > > > >In order to make my A2k more attractive and user friendly i have replaced the standard Listview with the comm.contr. Listview from MS. > >Ipopulate the listview by selecting a DAO.recordset and than use the .ADD listitems functions to add the records to the listview. After that i call a function which colors the rows accordnig to a certain value in the subitems. > >It works fine but I notice that this goes very slow particularly the coloring of the rows. When i fill the listview with 500 records the filling takes about 5 seconds but the coloring 30 seconds. > > > >Any tips, ideas how ik can make it faster. > > > >I have a database with about 20.000 orders in it. Customers would like to have a listview which shows ALL orders so they can sort, filter etc. This i can not support performance wise with this solution. The standard listview of access is much and much faster. > > > > > >Thanx, marcel > > > > > >------------------------------------------------------------------------ > > >>No virus found in this incoming message. > >Checked by AVG Free Edition. > >Version: 7.1.375 / Virus Database: 268.2.1/278 - Release Date: 09/03/2006 > > > > > > -- > Marty Connelly > Victoria, B.C. > Canada > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com _______________________________________________________________________ E: oost at e-business@start.com F: +31-84-758-0746 Dit e-mailbericht is uitsluitend bestemd voor de geadresseerde(n). Indien de e-mail bij vergissing bij u terecht is gekomen, wilt u ons dan direct bellen? Wij verzoeken u in dit geval de e-mail te vernietigen, de inhoud ervanniet te gebruiken en niet onder derden te verspreiden, omdat het bericht vertrouwelijke informatie kan bevatten, beschermd door een beroepsgeheim. Wij danken u vriendelijk voor uw medewerking. From martyconnelly at shaw.ca Wed Mar 15 15:50:42 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Wed, 15 Mar 2006 13:50:42 -0800 Subject: [AccessD] Regular Expressions? References: <08F823FD83787D4BA0B99CA580AD3C74030C61CE@TTNEXCHCL2.hshhp.com> Message-ID: <44188C32.7060004@shaw.ca> You could do simply Debug.Print StrConv("24CM 10MM ADAPTOR SLEEVE LG", vbProperCase) which doesn't quite cut it. It returns 24cm 10mm Adaptor Sleeve Lg At that point you may have to use RegEx replace to change these idiosyncracies such as '?replacetest("mm ") ' mm + space Function ReplaceTest(replStr) Dim regEx, str1 ' Create variables. str1 = "24CM 10MM ADAPTOR SLEEVE LG" Set regEx = CreateObject("VBScript.RegExp") ' Create regular expression. regEx.Global = True ' Set global applicability. regEx.Pattern = "MM " ' Set pattern. ReplaceTest = regEx.Replace(str1, replStr) ' Make replacement. End Function The VBScript RegExp object provides 3 properties and 3 methods to the user. Properties Pattern IgnoreCase Global Pattern - A string that is used to define the regular expression. This must be set before use of the regular expression object. IgnoreCase - A Boolean property that indicates if the regular expression should be tested against all possible matches in a string. By default, IgnoreCase is set to False. Global - A read-only Boolean property that indicates if the regular expression should be tested against all possible matches in a string. By default, Global is set to False. Methods Test (search-string) Replace (search-string, replace-string) Execute (search-string) Test (string) - The Test method takes a string as its argument and returns True if the regular expression can successfully be matched against the string, otherwise False is returned. Replace (search-string, replace-string) - The Replace method takes 2 strings as its arguments. If it is able to successfully match the regular expression in the search-string, then it replaces that match with the replace-string, and the new string is returned. If no matches were found, then the original search-string is returned. Execute (search-string) - The Execute method works like Replace, except that it returns a Matches collection object, containing a Match object for each successful match. It doesn't modify the original string. Regular Expressions tend to be faster than InStr or Like searches over large strings by at least a factor of 2. A help file for Regular Expressions can be found in JScript5.chm and VbScrip5.chm, these are contained in the Windows Scripting Host 2.0 Jim DeMarco wrote: >Joe, > >Not sure what you'd be using RegEx for? AFAIK they won't format your >data just find items that match a pattern. > >Jim DeMarco > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Joe Rojas >Sent: Wednesday, March 15, 2006 12:56 PM >To: Access Developers discussion and problem solving >Subject: [AccessD] Regular Expressions? > >How can I add the ability to use regular expression in Access 2000? > >**Background** >We are performing data conversion from our old MRP system to our new ERP >system and we are using Access to massage the data in between the two >systems. >One of the decisions that we made was to go from all capital letters in >our part number descriptions to proper case. At first I thought I would >just convert each word to proper case but then I noticed that some of >our descriptions look like "24CM 10MM ADAPTOR SLEEVE LG" and we would >like the resulting text to look like "24CM 10MM Adaptor Sleeve LG" not >"24cm Adaptor Sleeve Lg". >My best guess is to use regular expressions to identify most patterns >and then probably go over the data manual to make sure we didn't miss >anything. > >Anyone have a better idea? > >Thanks, >Joe Rojas >IT Manager >TNCO, Inc. >781-447-6661 x7506 >jrojas at tnco-inc.com > > > -- Marty Connelly Victoria, B.C. Canada From bchacc at san.rr.com Wed Mar 15 17:12:45 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Wed, 15 Mar 2006 15:12:45 -0800 Subject: [AccessD] Key Preview Problem Message-ID: <44189F6D.8090604@san.rr.com> Dear List: I have a tab form with four tabs. I want to set the focus in each tab by pressing the functions keys F5, F6, F7, F8. The KeyDown event is coded: Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode Case 116 Me.pgOrderNumber.SetFocus KeyCode = 0 Case 117 Me.pgReceiving.SetFocus KeyCode = 0 Case 118 Me.pgProcessing.SetFocus KeyCode = 0 Case 119 Me.pgShipping.SetFocus KeyCode = 0 End Select End Sub The first time I press one of the four function keys it works. Then, it quits. (Like if I press F7 the first time is sets the focus to pgProcessing, the second time it invokes the spell checker.) Does anyone know why this would happen? MTIA Rocky -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From ecritt1 at alltel.net Wed Mar 15 17:32:20 2006 From: ecritt1 at alltel.net (Penn White) Date: Wed, 15 Mar 2006 18:32:20 -0500 Subject: [AccessD] Checkbox/Combo box questions References: Message-ID: <005601c64888$b46a3810$0302a8c0@pennp4> I think I'd start with many-to-many tables to capture the info. Something like this might work although I haven't had time to try it out yet.: Having these tables, I'm assuming you can do the coding to re-populate the combobox based upon the checkbox selected. T_Parents Fields ParentID (autonumber) PLastName (text) PFirstName (text) T_ParentChild Fields ParentChildID (autonumber) ParentID (relates to ParentID in T_Parents) CFirstName (text) CLastName (text) T_UserSelections Fields: UserSelectionID (autonumber) ParentChildID (relates to ParentChildID in T_ParentChild) UserID (relates to UserID in T_Users) Penn P.S. I'm not a well-informed, honored MVP, just a little self-taught coder and I put this suggestion out with no little trepidation. If it helps, great. If I'm completely off base, it won't be the first time, unfortunately. From ecritt1 at alltel.net Wed Mar 15 17:45:57 2006 From: ecritt1 at alltel.net (Penn White) Date: Wed, 15 Mar 2006 18:45:57 -0500 Subject: [AccessD] Checkbox/Combo box questions References: <005601c64888$b46a3810$0302a8c0@pennp4> Message-ID: <005b01c6488a$9ba7a5e0$0302a8c0@pennp4> BTW, it seems that radio buttons might be better than checkboxes since you're going to have to clear the checkboxes after each selection or the program will get confused. You might actually want to put them all into an option group. Penn From jwcolby at ColbyConsulting.com Wed Mar 15 18:01:08 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Wed, 15 Mar 2006 19:01:08 -0500 Subject: [AccessD] Key Preview Problem In-Reply-To: <44189F6D.8090604@san.rr.com> Message-ID: <005f01c6488c$bb8e6310$647aa8c0@ColbyM6805> Rocky, Did someone call you last night re work? John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Wednesday, March 15, 2006 6:13 PM To: Access Developers discussion and problem solving Subject: [AccessD] Key Preview Problem Dear List: I have a tab form with four tabs. I want to set the focus in each tab by pressing the functions keys F5, F6, F7, F8. The KeyDown event is coded: Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode Case 116 Me.pgOrderNumber.SetFocus KeyCode = 0 Case 117 Me.pgReceiving.SetFocus KeyCode = 0 Case 118 Me.pgProcessing.SetFocus KeyCode = 0 Case 119 Me.pgShipping.SetFocus KeyCode = 0 End Select End Sub The first time I press one of the four function keys it works. Then, it quits. (Like if I press F7 the first time is sets the focus to pgProcessing, the second time it invokes the spell checker.) Does anyone know why this would happen? MTIA Rocky -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jedi at fellspt.charm.net Wed Mar 15 13:21:36 2006 From: jedi at fellspt.charm.net (Michael Bahr) Date: Wed, 15 Mar 2006 14:21:36 -0500 Subject: [AccessD] Regular Expressions? References: <758E92433C4F3740B67BE4DD369AF5771569FF@ex2k3.corp.tnco-inc.com> <20060315141458.V32400@fellspt.charm.net> Message-ID: <200603151914250916.662012EB@mail.cablespeed.com> Joe, here is a modified function that uses regular expression I created in Access 2000. I removed my specific stuff and added a couple possible patterns for you. You will need to finish the rest but this should get you going. I would strongly suggest using the debugger to step through the lines to confirm it is working. Set the following variables in the debugger: regexMatch matches(0).submatches(0) matches(0).submatches(1) myValue desc pn Change rst to match your query or table and change .Fields("zzz") at the beginning of while loop. ' ' ' Function myRegex() As Boolean Dim regex As Object Dim rst As DAO.Recordset Dim desc As String, pn As String, myValue As String Dim regexMatch As Boolean Dim matches As Variant Set rst = CurrentDb.OpenRecordset("qryYourQry") Set regex = CreateObject("VBScript.RegExp") regexMatch = True regex.Global = True regex.ignorecase = True With rst .MoveFirst While (Not .EOF) desc = .Fields("Description") pn = .Fields("PartNumber") ' one of these patterns should work for to capture ' at start of line digit-char space digit-char regex.pattern = "(^(\d+[a-z]+\s+\d+[a-z]+))" regex.pattern = "(^([0-9a-z ]+))" regexMatch = regex.test(pn) If (regexMatch) Then ' matche(s) from part number Set matches = regex.Execute(pn) ' get last match myValue = matches(0).submatches(1) ' do your work on the captured value ' save your changes in another field .Edit .Fields("Value") = myValue .Update End If .MoveNext Wend .Close End With Set regex = Nothing Set rst = Nothing End Function Goodluck, Mike... On Wed, 15 Mar 2006, Joe Rojas wrote: > How can I add the ability to use regular expression in Access 2000? > > **Background** > We are performing data conversion from our old MRP system to our new ERP system and we are using Access to massage the data in between the two systems. > One of the decisions that we made was to go from all capital letters in our part number descriptions to proper case. At first I thought I would just convert each word to proper case but then I noticed that some of our descriptions look like "24CM 10MM ADAPTOR SLEEVE LG" and we would like the resulting text to look like "24CM 10MM Adaptor Sleeve LG" not "24cm Adaptor Sleeve Lg". > My best guess is to use regular expressions to identify most patterns and then probably go over the data manual to make sure we didn't miss anything. > > Anyone have a better idea? > > Thanks, > Joe Rojas > IT Manager > TNCO, Inc. > 781-447-6661 x7506 > jrojas at tnco-inc.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From bchacc at san.rr.com Wed Mar 15 18:35:06 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Wed, 15 Mar 2006 16:35:06 -0800 Subject: [AccessD] Key Preview Problem In-Reply-To: <005f01c6488c$bb8e6310$647aa8c0@ColbyM6805> References: <005f01c6488c$bb8e6310$647aa8c0@ColbyM6805> Message-ID: <4418B2BA.7080000@san.rr.com> No. Needing work to do or having work to be done? Rocky John Colby wrote: > Rocky, > > Did someone call you last night re work? > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - > Beach Access Software > Sent: Wednesday, March 15, 2006 6:13 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Key Preview Problem > > Dear List: > > I have a tab form with four tabs. I want to set the focus in each tab by > pressing the functions keys F5, F6, F7, F8. The KeyDown event is coded: > > Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) > > Select Case KeyCode > Case 116 > Me.pgOrderNumber.SetFocus > KeyCode = 0 > Case 117 > Me.pgReceiving.SetFocus > KeyCode = 0 > Case 118 > Me.pgProcessing.SetFocus > KeyCode = 0 > Case 119 > Me.pgShipping.SetFocus > KeyCode = 0 > End Select > > End Sub > > The first time I press one of the four function keys it works. Then, it > quits. (Like if I press F7 the first time is sets the focus to > pgProcessing, the second time it invokes the spell checker.) > > Does anyone know why this would happen? > > MTIA > > Rocky > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From shamil at users.mns.ru Wed Mar 15 19:22:12 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Thu, 16 Mar 2006 04:22:12 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant> <001101c64810$f9ad0420$6501a8c0@Nant> Message-ID: <001d01c64898$0f575b90$6501a8c0@Nant> Hi All, The new version of test is available at http://smsconsulting.spb.ru/download/tests/a2dds.htm . It should now work thousands cycles I expect but I still have to test that - I will try to do that tomorrow running the tests in background mode. For MS Access XP on one of my older PCs it works not good - it results in significant memory leakage. This seems to be the problem of this MS Access XP installation/PC (Windows 2000). On my main PC(Windows 2003) where MS Access 2003 SP1 installed together with MS Access XP the tests work OK for both MS Access 2003 and MS Access XP. Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 15, 2006 12:14 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > New version of tests is now available at > http://smsconsulting.spb.ru/download/tests/a2dds.htm . > It uses library mdb as it was planned and it has some other improvements. > > Some users report they have problems with MS Access XP. > I did test on my main development PC and it worked OK with MS Access XP. > Your additional feedback on this subject would be very useful to fix the > problem and to improve the tests! > > Thank you. > > Shamil > > ----- Original Message ----- > From: "Shamil Salakhetdinov" > To: "Access Developers discussion and problem solving" > > Sent: Tuesday, March 14, 2006 11:09 PM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Hi All, >> >> ADP version of crash test added here >> http://smsconsulting.spb.ru/download/tests/a2dds.htm . >> >> In fact both mdb and ADP use the same code, which forks in some points on >> runtime depending on project type it runs in... >> >> Within future days/weeks will be coming: >> >> - lightweight framework code stored in a library mdb/adp >> - adding/fixing functionality for MS Access reports >> - adding/fixing functionality for new rows additions; >> - adding/fixing functionality for rows deletions. >> - ... >> >> This test/sample still may get stuck somewhere unexpectedly because the >> "dark unexplored waters" we're trying to glide on may have sharp stones, >> which can severely damage and sink our lightweight framework/ship... >> >> Shamil >> > <<< tail skipped >>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Wed Mar 15 19:29:33 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Wed, 15 Mar 2006 20:29:33 -0500 Subject: [AccessD] Key Preview Problem In-Reply-To: <4418B2BA.7080000@san.rr.com> Message-ID: <006801c64899$157d57d0$647aa8c0@ColbyM6805> Work to be done. He called me last night, asked where I was and when I said CT he said he needed someone local (San Diego). I gave him your info and he hung up. I didn't get his name/phone. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Wednesday, March 15, 2006 7:35 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Key Preview Problem No. Needing work to do or having work to be done? Rocky John Colby wrote: > Rocky, > > Did someone call you last night re work? > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky > Smolin - Beach Access Software > Sent: Wednesday, March 15, 2006 6:13 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Key Preview Problem > > Dear List: > > I have a tab form with four tabs. I want to set the focus in each tab > by pressing the functions keys F5, F6, F7, F8. The KeyDown event is coded: > > Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) > > Select Case KeyCode > Case 116 > Me.pgOrderNumber.SetFocus > KeyCode = 0 > Case 117 > Me.pgReceiving.SetFocus > KeyCode = 0 > Case 118 > Me.pgProcessing.SetFocus > KeyCode = 0 > Case 119 > Me.pgShipping.SetFocus > KeyCode = 0 > End Select > > End Sub > > The first time I press one of the four function keys it works. Then, > it quits. (Like if I press F7 the first time is sets the focus to > pgProcessing, the second time it invokes the spell checker.) > > Does anyone know why this would happen? > > MTIA > > Rocky > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bchacc at san.rr.com Wed Mar 15 19:39:38 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Wed, 15 Mar 2006 17:39:38 -0800 Subject: [AccessD] Key Preview Problem In-Reply-To: <006801c64899$157d57d0$647aa8c0@ColbyM6805> References: <006801c64899$157d57d0$647aa8c0@ColbyM6805> Message-ID: <4418C1DA.2080503@san.rr.com> O. OK. Thanks for the referral. Best, Rocky John Colby wrote: > Work to be done. He called me last night, asked where I was and when I said > CT he said he needed someone local (San Diego). I gave him your info and he > hung up. I didn't get his name/phone. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - > Beach Access Software > Sent: Wednesday, March 15, 2006 7:35 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Key Preview Problem > > No. Needing work to do or having work to be done? > > Rocky > > > John Colby wrote: > >> Rocky, >> >> Did someone call you last night re work? >> >> John W. Colby >> www.ColbyConsulting.com >> >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky >> Smolin - Beach Access Software >> Sent: Wednesday, March 15, 2006 6:13 PM >> To: Access Developers discussion and problem solving >> Subject: [AccessD] Key Preview Problem >> >> Dear List: >> >> I have a tab form with four tabs. I want to set the focus in each tab >> by pressing the functions keys F5, F6, F7, F8. The KeyDown event is >> > coded: > >> Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) >> >> Select Case KeyCode >> Case 116 >> Me.pgOrderNumber.SetFocus >> KeyCode = 0 >> Case 117 >> Me.pgReceiving.SetFocus >> KeyCode = 0 >> Case 118 >> Me.pgProcessing.SetFocus >> KeyCode = 0 >> Case 119 >> Me.pgShipping.SetFocus >> KeyCode = 0 >> End Select >> >> End Sub >> >> The first time I press one of the four function keys it works. Then, >> it quits. (Like if I press F7 the first time is sets the focus to >> pgProcessing, the second time it invokes the spell checker.) >> >> Does anyone know why this would happen? >> >> MTIA >> >> Rocky >> >> -- >> Rocky Smolin >> Beach Access Software >> 858-259-4334 >> www.e-z-mrp.com >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> >> >> > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From martyconnelly at shaw.ca Wed Mar 15 20:01:06 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Wed, 15 Mar 2006 18:01:06 -0800 Subject: [AccessD] Excel to Access Help Needed References: <20060309193404.M50407@wowway.com> Message-ID: <4418C6E2.9060006@shaw.ca> I can't think of an easy way to do this, maybe via a Group By or Pivot You might try question on this Excel-L mail list or look through their archives http://peach.ease.lsoft.com/archives/excel-l.html#SUB tewald at wowway.com wrote: >I am converting an Excel-based system to Access; in other words, flat-file to >relational. > >The main data entry Excel worksheet has data unique to the work order on the >top, followed by a list of several systems that could possibly be affected by >the work order; each system is listed on the form, and the user determines >which ones are needed. Each system, in turn, has several ways (all have the >same ways) in which it could be affected. > >Think of the lower portion as like this (in this example, Name = system): > >Name: Mary John Alex Theresa >Gender: F M M F >Age: 55 35 34 26 >Needed: N Y N Y > >And then more categories. > >Now, I have a main table for the information at the top of the form. I have >another table that includes the individual systems (names) and all of the >categories (in the example above, that would be gender, age and needed), as >well as a foreign key to the main table, so I can keep track of which work >order contained which information. Not the best example above, I suppose, >because logically gender and age would stay the same (well, gender, anyway); >in the real table, that data changes with each work order, and not all of the >systems (names) will be needed each time. > >I would like to present the users with a form similar to the Excel >spreadsheet theyre used to, so Id like to have it look like the example >above. Im drawing a blank. I hope Ive explained this well enough. > >Id appreciate any help. Id also appreciate your not telling my wife that I >told you her age. ;-) > >TIA, > >Tom Ewald > > > -- Marty Connelly Victoria, B.C. Canada From martyconnelly at shaw.ca Wed Mar 15 20:39:04 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Wed, 15 Mar 2006 18:39:04 -0800 Subject: [AccessD] Key Preview Problem References: <44189F6D.8090604@san.rr.com> Message-ID: <4418CFC8.2010501@shaw.ca> Stick this in or set in Forms properties, keypreview default is no. Private Sub Form_Load() Me.KeyPreview = True End Sub Rocky Smolin - Beach Access Software wrote: >Dear List: > >I have a tab form with four tabs. I want to set the focus in each tab >by pressing the functions keys F5, F6, F7, F8. The KeyDown event is coded: > >Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) > > Select Case KeyCode > Case 116 > Me.pgOrderNumber.SetFocus > KeyCode = 0 > Case 117 > Me.pgReceiving.SetFocus > KeyCode = 0 > Case 118 > Me.pgProcessing.SetFocus > KeyCode = 0 > Case 119 > Me.pgShipping.SetFocus > KeyCode = 0 > End Select > >End Sub > >The first time I press one of the four function keys it works. Then, it >quits. (Like if I press F7 the first time is sets the focus to >pgProcessing, the second time it invokes the spell checker.) > >Does anyone know why this would happen? > >MTIA > >Rocky > > > -- Marty Connelly Victoria, B.C. Canada From bchacc at san.rr.com Wed Mar 15 21:49:06 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Wed, 15 Mar 2006 19:49:06 -0800 Subject: [AccessD] Key Preview Problem In-Reply-To: <4418CFC8.2010501@shaw.ca> References: <44189F6D.8090604@san.rr.com> <4418CFC8.2010501@shaw.ca> Message-ID: <4418E032.9080409@san.rr.com> Marty: It's set to true in the Forms property sheet. And it does work the first time I press one of the function keys. But after that it doesn't. Rocky MartyConnelly wrote: > Stick this in or set in Forms properties, keypreview default is no. > > Private Sub Form_Load() > Me.KeyPreview = True > End Sub > > Rocky Smolin - Beach Access Software wrote: > > >> Dear List: >> >> I have a tab form with four tabs. I want to set the focus in each tab >> by pressing the functions keys F5, F6, F7, F8. The KeyDown event is coded: >> >> Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) >> >> Select Case KeyCode >> Case 116 >> Me.pgOrderNumber.SetFocus >> KeyCode = 0 >> Case 117 >> Me.pgReceiving.SetFocus >> KeyCode = 0 >> Case 118 >> Me.pgProcessing.SetFocus >> KeyCode = 0 >> Case 119 >> Me.pgShipping.SetFocus >> KeyCode = 0 >> End Select >> >> End Sub >> >> The first time I press one of the four function keys it works. Then, it >> quits. (Like if I press F7 the first time is sets the focus to >> pgProcessing, the second time it invokes the spell checker.) >> >> Does anyone know why this would happen? >> >> MTIA >> >> Rocky >> >> >> >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From martyconnelly at shaw.ca Wed Mar 15 22:07:03 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Wed, 15 Mar 2006 20:07:03 -0800 Subject: [AccessD] Key Preview Problem References: <44189F6D.8090604@san.rr.com> <4418CFC8.2010501@shaw.ca> <4418E032.9080409@san.rr.com> Message-ID: <4418E467.6050405@shaw.ca> Works for me in Access 2003 with the Form_Load method Rocky Smolin - Beach Access Software wrote: >Marty: > >It's set to true in the Forms property sheet. And it does work the >first time I press one of the function keys. But after that it doesn't. > >Rocky > > >MartyConnelly wrote: > > >>Stick this in or set in Forms properties, keypreview default is no. >> >>Private Sub Form_Load() >> Me.KeyPreview = True >>End Sub >> >>Rocky Smolin - Beach Access Software wrote: >> >> >> >> >>>Dear List: >>> >>>I have a tab form with four tabs. I want to set the focus in each tab >>>by pressing the functions keys F5, F6, F7, F8. The KeyDown event is coded: >>> >>>Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) >>> >>> Select Case KeyCode >>> Case 116 >>> Me.pgOrderNumber.SetFocus >>> KeyCode = 0 >>> Case 117 >>> Me.pgReceiving.SetFocus >>> KeyCode = 0 >>> Case 118 >>> Me.pgProcessing.SetFocus >>> KeyCode = 0 >>> Case 119 >>> Me.pgShipping.SetFocus >>> KeyCode = 0 >>> End Select >>> >>>End Sub >>> >>>The first time I press one of the four function keys it works. Then, it >>>quits. (Like if I press F7 the first time is sets the focus to >>>pgProcessing, the second time it invokes the spell checker.) >>> >>>Does anyone know why this would happen? >>> >>>MTIA >>> >>>Rocky >>> >>> >>> >>> >>> >>> >> >> >> > > > -- Marty Connelly Victoria, B.C. Canada From bchacc at san.rr.com Wed Mar 15 23:29:06 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Wed, 15 Mar 2006 21:29:06 -0800 Subject: [AccessD] Key Preview Problem In-Reply-To: <4418E467.6050405@shaw.ca> References: <44189F6D.8090604@san.rr.com> <4418CFC8.2010501@shaw.ca> <4418E032.9080409@san.rr.com> <4418E467.6050405@shaw.ca> Message-ID: <4418F7A2.2080808@san.rr.com> Marty: I put Me.KeyPreview = True in the load event. No luck. I also put it at the end of the KeyDown event (where I shouldn't need to but just to cover that base). No luck So I put Msgbox KeyCode at the beginning of the KeyDown event. The first time I press a function key it displays the code in the MsgBox. If I press any other key than the four function keys it displays they key code (Key Down event is still firing). But after pressing one of the four function keys I'm trapping (F5-F8) the event stops firing. Processes the key stroke according to the code, but then stops firing. So I comment out all of the .SetFocus and KeyCode = 0 lines and the event now keeps firing. I put back the KeyCode = 0 line and the event keeps firing. I take out the KeyCode = 0 line and put back the .SetFocus line and the event stops firing. So I've traced it down to the lines Me.pgXXX.SetFocus. When that line executes it hoses the KeyPreview property and even setting it at the end of the module doesn't help. Help! Rocky MartyConnelly wrote: > Works for me in Access 2003 with the Form_Load method > > Rocky Smolin - Beach Access Software wrote: > > >> Marty: >> >> It's set to true in the Forms property sheet. And it does work the >> first time I press one of the function keys. But after that it doesn't. >> >> Rocky >> >> >> MartyConnelly wrote: >> >> >> >>> Stick this in or set in Forms properties, keypreview default is no. >>> >>> Private Sub Form_Load() >>> Me.KeyPreview = True >>> End Sub >>> >>> Rocky Smolin - Beach Access Software wrote: >>> >>> >>> >>> >>> >>>> Dear List: >>>> >>>> I have a tab form with four tabs. I want to set the focus in each tab >>>> by pressing the functions keys F5, F6, F7, F8. The KeyDown event is coded: >>>> >>>> Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) >>>> >>>> Select Case KeyCode >>>> Case 116 >>>> Me.pgOrderNumber.SetFocus >>>> KeyCode = 0 >>>> Case 117 >>>> Me.pgReceiving.SetFocus >>>> KeyCode = 0 >>>> Case 118 >>>> Me.pgProcessing.SetFocus >>>> KeyCode = 0 >>>> Case 119 >>>> Me.pgShipping.SetFocus >>>> KeyCode = 0 >>>> End Select >>>> >>>> End Sub >>>> >>>> The first time I press one of the four function keys it works. Then, it >>>> quits. (Like if I press F7 the first time is sets the focus to >>>> pgProcessing, the second time it invokes the spell checker.) >>>> >>>> Does anyone know why this would happen? >>>> >>>> MTIA >>>> >>>> Rocky >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>> >>> >>> >>> >> >> >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From stuart at lexacorp.com.pg Thu Mar 16 01:26:36 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Thu, 16 Mar 2006 17:26:36 +1000 Subject: [AccessD] Key Preview Problem In-Reply-To: <4418F7A2.2080808@san.rr.com> References: <4418E467.6050405@shaw.ca> Message-ID: <44199FCC.7642.1149F25B@stuart.lexacorp.com.pg> On 15 Mar 2006 at 21:29, Rocky Smolin - Beach Access S wrote: > > So I've traced it down to the lines Me.pgXXX.SetFocus. When that line > executes it hoses the KeyPreview property and even setting it at the end of > the module doesn't help. > What happens if you set "me.keypreview = true" in code after the SetFocus? -- Stuart From bheid at appdevgrp.com Thu Mar 16 06:26:50 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Thu, 16 Mar 2006 07:26:50 -0500 Subject: [AccessD] Dying on Code Here In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D6B1EC@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D3510B@ADGSERVER> Karen, It looks like the problem might be that if you are using the exact code below that you are using a 'set' statement on each field. So your SQL might look something like: UPDATE sometable SET somefield="somevalue" You want to have something like: UPDATE sometable SET somefield1='somevalue1' somefield2='somevalue2' somefield3='somevalue3' ... somefieldn='somevaluen'; So, if I understand the issue correctly, you want to build the UPDATE sometable SET part first. Then loop through all of the fields and append the somefield='somevalue' (assuming text values here) strings to the end of the SQL string. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Nicholson, Karen Sent: Wednesday, March 15, 2006 2:47 PM To: accessd at databaseadvisors.com Subject: [AccessD] Dying on Code Here Help Me! I can not get this stupid code to work. Private Sub cmdRunImport_Click() Dim cnn As ADODB.Connection Set cnn = CurrentProject.Connection Dim strTableName As String Dim strFieldName As String Dim srfFieldNameChg As String Dim ctl As Control Dim ctlName As String I am trying to capture the field names and values of over 30 fields on a form, pass those names and values into a procedure to then *run around my database* and update every table that contains the field name with the captured value. This database is a total un-normalized mess and the option of normalizing does not happen to be an option at this time. I got the code to work for just one field. It is fine. I then tried to put a value on the "tag" for each required field on the form, but I can't seem to call it from within this code. Any ideas on how I can store the required fields and make this thing pump through the records? Aughghghg!!!!! Private Sub cmdRunImport_Click() Dim cnn As ADODB.Connection Set cnn = CurrentProject.Connection Dim strTableName As String Dim strFieldName As String Dim srfFieldNameChg As String Dim ctl As Control Dim ctlName As String Dim i As Integer Dim j As Integer For i = 0 To CurrentDb.TableDefs.Count - 1 For j = 0 To CurrentDb.TableDefs(i).Fields.Count - 1 If (CurrentDb.TableDefs(i).Name Like "*SAF") Then If (CurrentDb.TableDefs(i).Fields(j).Name = ("ManufacturerCode")) Then ===>> 'Or (CurrentDb.TableDefs(i).Fields(j).Name = ("sitecode")) Then Debug.Print "Field: " & CurrentDb.TableDefs(i).Fields(j).Name Debug.Print "Table: " & CurrentDb.TableDefs(i).Name End If End If Next Next strTableName = CurrentDb.TableDefs(i).Name strFieldName = CurrentDb.TableDefs(i).Fields(j).Name strFieldNameChg = "Forms![frmRequiredFieldsReview]![" & strFieldName & "chg]" Debug.Print " Field: " & CurrentDb.TableDefs(i).Fields(j).Name Debug.Print strTableName Debug.Print strFieldName Dim sqlTest As String sqlTest = "update " & strTableName & " set " & strFieldName & " = " & strFieldNameChg DoCmd.RunSQL sqlTest Set cnn = Nothing End Sub This works just fine. But I have 26 fields to go through. It will not honor that *tag* value. I need it to loop through my 26 or so field names and print out each one above, line by line so I can insert it into SQL code for my update statement. Any ideas? Karen S. Nicholson Programmer Analyst EG&G Technical Services, Inc. Pittsburgh, PA Phone: 412-386-6649 Email: cyx5 at cdc.gov -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From ecritt1 at alltel.net Thu Mar 16 07:02:12 2006 From: ecritt1 at alltel.net (Penn White) Date: Thu, 16 Mar 2006 08:02:12 -0500 Subject: [AccessD] Key Preview Problem References: <44189F6D.8090604@san.rr.com> <4418CFC8.2010501@shaw.ca><4418E032.9080409@san.rr.com> <4418E467.6050405@shaw.ca> <4418F7A2.2080808@san.rr.com> Message-ID: <00a301c648f9$d7e2a810$0302a8c0@pennp4> Just for fun (since I have a similar keydown event which has never worked either), I messed around with it using Alt-Key combinations. I used an "if intAltDown then Select Case Keycode' structure. Each case will fire one time but then it stops. So I can go from one tabbed page (pgXXX) to another, to another, to another but after I've been to all the tabbed pages once, it stops. Also, once I've been to a tabbed page using the Alt-Key combination for that tabbed page, it won't go there again unless I close the form and start over. I also tried me.setfocus, Forms!FormName.Form.SetFocus and Me.KeyPreview=True (individually and in various combinations) at the end of the procedure since the documentation says the form or control has to have the focus for the KeyDown event to work and that didn't help. It's almost as if there is a buffer that's getting filled and won't empty once you've used a KeyDown keystroke or keystroke combination. I did some research on MSDN and Google and found nothing helpful although KeyDown and KeyPress event problems seem to have been around since before ACC97. Penn From stuart at lexacorp.com.pg Thu Mar 16 07:27:54 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Thu, 16 Mar 2006 23:27:54 +1000 Subject: [AccessD] Key Preview Problem In-Reply-To: <4418F7A2.2080808@san.rr.com> References: <4418E467.6050405@shaw.ca> Message-ID: <4419F47A.8689.1294B75C@stuart.lexacorp.com.pg> On 15 Mar 2006 at 21:29, Rocky Smolin - Beach Access S wrote: > > So I've traced it down to the lines Me.pgXXX.SetFocus. When that line > executes it hoses the KeyPreview property and even setting it at the end of > the module doesn't help. > I just built a simple test application (AXP using an A2K format database). I can't reproduce your problem. The following code works perfectly for me with a Tab control with four appropriately named pages. Want to send me a zipped database with the problem form? I will see if it works here - it may be something on your PC causing it. Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode Case 116 Me.pgOrderNumber.SetFocus KeyCode = 0 Case 117 Me.pgReceiving.SetFocus KeyCode = 0 Case 118 Me.pgProcessing.SetFocus KeyCode = 0 Case 119 Me.pgShipping.SetFocus KeyCode = 0 End Select End Sub -- Stuart From cyx5 at cdc.gov Thu Mar 16 07:31:34 2006 From: cyx5 at cdc.gov (Nicholson, Karen) Date: Thu, 16 Mar 2006 08:31:34 -0500 Subject: [AccessD] Dying on Code Here Message-ID: I worked some more on this last night. This is the database from he**. There are over 60 tables, all flat, a mess. The first thing I do is search the database and find those tables that end in SAF. That narrows my problem down to about 19 tables I need to be concerned with. Then, I extract the field names from those 19 tables and print those. But I really only want to get the field names of about 20 fields, not the gazillions that are in each table. So, I guess I need to build an array, a collection, something, to hold only 20 field names to update. I have the code working, but when I call the field names from the tables, I get every field name. I just want to get the field names that may be in the above 20 field names, that of course, are not listed anywhere except on my form. The ones on my form that I am looking for have been tagged with an "N" in the tag control of the field. I can not seem to reference just these 20 fields with the "N". This is running horribly slow, of course, but at least I am almost there. Dim cnn As ADODB.Connection Set cnn = CurrentProject.Connection Dim strTableName As String Dim strFieldName As String Dim srfFieldNameChg As String Dim ctl As Control Dim ctlName As String Dim strSQLTest As String Dim i As Integer Dim j As Integer Dim k As Integer For i = 0 To CurrentDb.TableDefs.Count - 1 If (CurrentDb.TableDefs(i).Name Like "*SAF") Then Debug.Print "Table: " & CurrentDb.TableDefs(i).Name strTableName = CurrentDb.TableDefs(i).Name For j = 0 To CurrentDb.TableDefs(i).Fields.Count - 1 'strFieldName = CurrentDb.TableDefs(i).Fields(j).Name Debug.Print " Field: " & CurrentDb.TableDefs(i).Fields(j).Name For k = 0 To Me.Controls.Count - 1 'Debug.Print " Control Name: " & Me.Controls(k).Name If (Me.Controls(k).Name = CurrentDb.TableDefs(i).Fields(j).Name) Then strFieldName = CurrentDb.TableDefs(i).Fields(j).Name Debug.Print strFieldName If Me.Controls(k).Name = strFieldName Then strFieldNameChg = "Forms![frmRequiredFieldReview]![" & strFieldName & "chg]" strSQLTest = "update " & strTableName & " set " & strFieldName & " = " & strFieldNameChg Debug.Print strSQLTest Stop ' DoCmd.RunSQL strsqlTest End If End If Next ' end of k loop Next ' end of j loop End If Next ' end of i loop Set cnn = Nothing Karen S. Nicholson Programmer Analyst EG&G Technical Services, Inc. Pittsburgh, PA Phone: 412-386-6649 Email: cyx5 at cdc.gov -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Thursday, March 16, 2006 7:27 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Dying on Code Here Karen, It looks like the problem might be that if you are using the exact code below that you are using a 'set' statement on each field. So your SQL might look something like: UPDATE sometable SET somefield="somevalue" You want to have something like: UPDATE sometable SET somefield1='somevalue1' somefield2='somevalue2' somefield3='somevalue3' ... somefieldn='somevaluen'; So, if I understand the issue correctly, you want to build the UPDATE sometable SET part first. Then loop through all of the fields and append the somefield='somevalue' (assuming text values here) strings to the end of the SQL string. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Nicholson, Karen Sent: Wednesday, March 15, 2006 2:47 PM To: accessd at databaseadvisors.com Subject: [AccessD] Dying on Code Here Help Me! I can not get this stupid code to work. Private Sub cmdRunImport_Click() Dim cnn As ADODB.Connection Set cnn = CurrentProject.Connection Dim strTableName As String Dim strFieldName As String Dim srfFieldNameChg As String Dim ctl As Control Dim ctlName As String I am trying to capture the field names and values of over 30 fields on a form, pass those names and values into a procedure to then *run around my database* and update every table that contains the field name with the captured value. This database is a total un-normalized mess and the option of normalizing does not happen to be an option at this time. I got the code to work for just one field. It is fine. I then tried to put a value on the "tag" for each required field on the form, but I can't seem to call it from within this code. Any ideas on how I can store the required fields and make this thing pump through the records? Aughghghg!!!!! Private Sub cmdRunImport_Click() Dim cnn As ADODB.Connection Set cnn = CurrentProject.Connection Dim strTableName As String Dim strFieldName As String Dim srfFieldNameChg As String Dim ctl As Control Dim ctlName As String Dim i As Integer Dim j As Integer For i = 0 To CurrentDb.TableDefs.Count - 1 For j = 0 To CurrentDb.TableDefs(i).Fields.Count - 1 If (CurrentDb.TableDefs(i).Name Like "*SAF") Then If (CurrentDb.TableDefs(i).Fields(j).Name = ("ManufacturerCode")) Then ===>> 'Or (CurrentDb.TableDefs(i).Fields(j).Name = ("sitecode")) Then Debug.Print "Field: " & CurrentDb.TableDefs(i).Fields(j).Name Debug.Print "Table: " & CurrentDb.TableDefs(i).Name End If End If Next Next strTableName = CurrentDb.TableDefs(i).Name strFieldName = CurrentDb.TableDefs(i).Fields(j).Name strFieldNameChg = "Forms![frmRequiredFieldsReview]![" & strFieldName & "chg]" Debug.Print " Field: " & CurrentDb.TableDefs(i).Fields(j).Name Debug.Print strTableName Debug.Print strFieldName Dim sqlTest As String sqlTest = "update " & strTableName & " set " & strFieldName & " = " & strFieldNameChg DoCmd.RunSQL sqlTest Set cnn = Nothing End Sub This works just fine. But I have 26 fields to go through. It will not honor that *tag* value. I need it to loop through my 26 or so field names and print out each one above, line by line so I can insert it into SQL code for my update statement. Any ideas? Karen S. Nicholson Programmer Analyst EG&G Technical Services, Inc. Pittsburgh, PA Phone: 412-386-6649 Email: cyx5 at cdc.gov -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From iggy at nanaimo.ark.com Thu Mar 16 07:45:42 2006 From: iggy at nanaimo.ark.com (Tony Septav) Date: Thu, 16 Mar 2006 05:45:42 -0800 Subject: [AccessD] Key Preview Problem Message-ID: <44196C06.1090304@nanaimo.ark.com> Hey Rocky Do you have any subforms in your tabs? This will cause a problem. From bchacc at san.rr.com Thu Mar 16 07:50:17 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 16 Mar 2006 05:50:17 -0800 Subject: [AccessD] Key Preview Problem In-Reply-To: <44199FCC.7642.1149F25B@stuart.lexacorp.com.pg> References: <4418E467.6050405@shaw.ca> <44199FCC.7642.1149F25B@stuart.lexacorp.com.pg> Message-ID: <44196D19.60400@san.rr.com> Stuart: Same result. Code now reads: Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) 'MsgBox KeyCode Select Case KeyCode Case 116 Me.pgOrderNumber.SetFocus KeyCode = 0 Me.KeyPreview = True Case 117 Me.pgReceiving.SetFocus KeyCode = 0 Me.KeyPreview = True Case 118 Me.pgProcessing.SetFocus KeyCode = 0 Me.KeyPreview = True Case 119 Me.pgShipping.SetFocus KeyCode = 0 Me.KeyPreview = True End Select End Sub I open the form. Press F6 - Me.pgReceiving gets the focus. I press F7, I get spell check. The event doesn't fire but once. Rocky Stuart McLachlan wrote: > On 15 Mar 2006 at 21:29, Rocky Smolin - Beach Access S wrote: > > >> So I've traced it down to the lines Me.pgXXX.SetFocus. When that line >> executes it hoses the KeyPreview property and even setting it at the end of >> the module doesn't help. >> >> > > What happens if you set "me.keypreview = true" in code after the SetFocus? > > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From bchacc at san.rr.com Thu Mar 16 07:53:19 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 16 Mar 2006 05:53:19 -0800 Subject: [AccessD] Key Preview Problem In-Reply-To: <00a301c648f9$d7e2a810$0302a8c0@pennp4> References: <44189F6D.8090604@san.rr.com> <4418CFC8.2010501@shaw.ca> <4418E032.9080409@san.rr.com> <4418E467.6050405@shaw.ca> <4418F7A2.2080808@san.rr.com> <00a301c648f9$d7e2a810$0302a8c0@pennp4> Message-ID: <44196DCF.6060903@san.rr.com> Penn: Well sometimes it's comforting just knowing you're not alone. At least I'm not losing my mind. :-P Rocky Penn White wrote: > Just for fun (since I have a similar keydown event which has never worked > either), I messed around with it using Alt-Key combinations. I used an "if > intAltDown then Select Case Keycode' structure. Each case will fire one > time but then it stops. So I can go from one tabbed page (pgXXX) to > another, to another, to another but after I've been to all the tabbed pages > once, it stops. Also, once I've been to a tabbed page using the Alt-Key > combination for that tabbed page, it won't go there again unless I close the > form and start over. I also tried me.setfocus, Forms!FormName.Form.SetFocus > and Me.KeyPreview=True (individually and in various combinations) at the end > of the procedure since the documentation says the form or control has to > have the focus for the KeyDown event to work and that didn't help. > > It's almost as if there is a buffer that's getting filled and won't empty > once you've used a KeyDown keystroke or keystroke combination. > > I did some research on MSDN and Google and found nothing helpful although > KeyDown and KeyPress event problems seem to have been around since before > ACC97. > > Penn > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From bchacc at san.rr.com Thu Mar 16 07:54:36 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 16 Mar 2006 05:54:36 -0800 Subject: [AccessD] Key Preview Problem In-Reply-To: <44196C06.1090304@nanaimo.ark.com> References: <44196C06.1090304@nanaimo.ark.com> Message-ID: <44196E1C.7050203@san.rr.com> Tony: Yes! Full of sub forms. Rats. Is this a known problem? Regards, Rocky Tony Septav wrote: > Hey Rocky > Do you have any subforms in your tabs? This will cause a problem. > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From iggy at nanaimo.ark.com Thu Mar 16 08:10:27 2006 From: iggy at nanaimo.ark.com (Tony Septav) Date: Thu, 16 Mar 2006 06:10:27 -0800 Subject: [AccessD] Key Preview Message-ID: <441971D3.3030402@nanaimo.ark.com> Hey Rocky If the subform grabs the focus when you change tabs then it becomes a form with focus and your FKeys don't fire. Ran into this a couple of years ago, I think it was when I wanted to allow a user to navigate through the records but remain in the current tab and not return to the first tab each time they pressed next or previous. From stuart at lexacorp.com.pg Thu Mar 16 08:14:10 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Fri, 17 Mar 2006 00:14:10 +1000 Subject: [AccessD] Key Preview Problem In-Reply-To: <44196E1C.7050203@san.rr.com> References: <44196C06.1090304@nanaimo.ark.com> Message-ID: <4419FF52.26868.12BF11A5@stuart.lexacorp.com.pg> On 16 Mar 2006 at 5:54, Rocky Smolin - Beach Access S wrote: > Tony: > > Yes! Full of sub forms. Rats. Is this a known problem? > Just replied to Rocky off-list. If the subforms get focus when you go to another page and they don't have KeyPreview on, the Keydown doesn't fire. -- Stuart From ecritt1 at alltel.net Thu Mar 16 08:22:27 2006 From: ecritt1 at alltel.net (Penn White) Date: Thu, 16 Mar 2006 09:22:27 -0500 Subject: [AccessD] Key Preview References: <441971D3.3030402@nanaimo.ark.com> Message-ID: <00d201c64905$0d885360$0302a8c0@pennp4> > If the subform grabs the focus when you change tabs > then it becomes a > form with focus and your FKeys don't fire. I also have subforms on my tabbed pages which is why I tried resetting the focus to the main form at the end of the sub. It didn't work. I also tried setting KeyPrevie to yes on the subform and coding the keydown event on the subform which didn't work either. The bottom line is that after firing once, you never get back to the KeyDown event either on the main form or the subform so whatever code you've put in there is irrelevant. Penn From bchacc at san.rr.com Thu Mar 16 08:31:36 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 16 Mar 2006 06:31:36 -0800 Subject: [AccessD] Key Preview Problem In-Reply-To: <4419FF52.26868.12BF11A5@stuart.lexacorp.com.pg> References: <44196C06.1090304@nanaimo.ark.com> <4419FF52.26868.12BF11A5@stuart.lexacorp.com.pg> Message-ID: <441976C8.3030806@san.rr.com> AHA!! AHAHAHAHAHA!!! That's it! I after setting the focus to the tab, I set it to the exit button which is not on the tab form: Case 116 Me.pgOrderNumber.SetFocus KeyCode = 0 'Me.KeyPreview = True Me.cmdExit.SetFocus and walla! it woiks! I suppose I could set the KeyPreview to true on all the sub forms but then they'd also have to have a copy of the KeyDown routine as well, no? Thanks all. Regards, Rocky Stuart McLachlan wrote: > On 16 Mar 2006 at 5:54, Rocky Smolin - Beach Access S wrote: > > >> Tony: >> >> Yes! Full of sub forms. Rats. Is this a known problem? >> >> > > Just replied to Rocky off-list. > If the subforms get focus when you go to another page and they don't have > KeyPreview on, the Keydown doesn't fire. > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From adtp at airtelbroadband.in Thu Mar 16 08:43:12 2006 From: adtp at airtelbroadband.in (A.D.TEJPAL) Date: Thu, 16 Mar 2006 20:13:12 +0530 Subject: [AccessD] Parent form PK changed (VALUE) References: <000001c647d4$2a0901b0$647aa8c0@ColbyM6805> Message-ID: <006a01c64908$01460590$b71165cb@pcadt> Sample code given below, placed in subform's current event, detects and provides an alert whenever master field's value in the parent form changes. It is applicable to both situations i.e. when the master field control on the parent form is a bound one and also when it is unbound. In case of bound master field, each time the parent record changes, current event of subform fires twice (In fact, the child linked control's value gets updated fractionally earlier than that of master liked control). The code as suggested, prevents duplicate alerts on this account, at the same time eliminating redundant message when the form loads initially. A.D.Tejpal --------------- Subform's Code Module (Product_ID is the name of Linked Child Field) ===================================== ' General Declarations Section Private LinkFieldValue As Variant Private Sub Form_Current() If Len(LinkFieldValue) > 0 And _ Product_ID <> LinkFieldValue Then MsgBox "Parent Record Has Changed" End If LinkFieldValue = Product_ID End Sub ===================================== ----- Original Message ----- From: John Colby To: 'Access Developers discussion and problem solving' Sent: Wednesday, March 15, 2006 07:29 Subject: [AccessD] Parent form PK changed (VALUE) Is there a way (built into Access) to tell if the parent form record changed from the subform? IOW, in the case of a M-M table, implemented in a subform, one of the fields of the M-M would be the parent ID. tblCompany CO_ID CO_Name CO_Etc tblPeople PE_ID PE_Lname PE_Fname PE_Etc tblEmployees EM_ID EM_IDPE EM_IDCO If the parent form is the company, the child form is the employee, the "link" is the EM_IDCO with a combo representing the people. I want to monitor when the parent ID changes (CO_ID) from the subform sfrmEmployee. I know that the subform control has a Link Child Field / Link Master Field pair of properties, but is there a property that feeds the VALUE of the Link Master Field into the subform for it's use? The subform filters its recordset based on the Link Master Field VALUE so it must be able to see it. In fact all I want to know is THAT the Link Master Field VALUE changed so that I can requery a dependent combo in the child form. John W. Colby www.ColbyConsulting.com From Patricia.O'Connor at otda.state.ny.us Thu Mar 16 08:54:07 2006 From: Patricia.O'Connor at otda.state.ny.us (O'Connor, Patricia (OTDA)) Date: Thu, 16 Mar 2006 09:54:07 -0500 Subject: [AccessD] OT: Modify Office folder name without re-Installing Message-ID: <01DBAB52E30A9A4AB3D94EF8029EDBE8016B2489@EXCNYSM0A1AI.nysemail.nyenet> Thanks - Oh well will try to uninstall 2k reinstall in a renamed folder. At work they have a "team" that is supposed to do the installs and updates. Right now they are waiting for information from some "tech" place because they don't understand about custom installs. I have been fixing my computer since their last install. I have installed in different folders on my home computer with no problem and I have an older computer. Thanks ************************************************** * Patricia O'Connor * Associate Computer Programmer Analyst ************************************************** > -------------------------------------------------------- This e-mail, including any attachments, may be confidential, privileged or otherwise legally protected. It is intended only for the addressee. If you received this e-mail in error or from someone who was not authorized to send it to you, do not disseminate, copy or otherwise use this e-mail or its attachments. Please notify the sender immediately by reply e-mail and delete the e-mail from your system. -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid > Sent: Wednesday, March 15, 2006 03:29 PM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] OT: Modify Office folder name without > re-Installing > > Patti, > > I don't know how you can rename the existing folders, but you > can change the directory where the new version goes. I have > Access 97, Access 2000, Office XP, and Office 2003 on my > system at home. When I installed office 2003, I changed the > default directory from ...\Microsoft Office\ (or whatever it > is) to ...\MS Office 2003\. That lets the different versions > all work well together. > > Bobby > > From harkinsss at bellsouth.net Thu Mar 16 08:58:45 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Thu, 16 Mar 2006 09:58:45 -0500 Subject: [AccessD] Contest Message-ID: <000801c6490a$210da200$d5b3d6d1@SUSANONE> http://www.madeinexpresscontest.com/ Got this link from Mike G's site -- thought it might inspire someone. :) Susan H. From ecritt1 at alltel.net Thu Mar 16 09:09:41 2006 From: ecritt1 at alltel.net (Penn White) Date: Thu, 16 Mar 2006 10:09:41 -0500 Subject: [AccessD] Key Preview Problem References: <44196C06.1090304@nanaimo.ark.com><4419FF52.26868.12BF11A5@stuart.lexacorp.com.pg> <441976C8.3030806@san.rr.com> Message-ID: <00e501c6490b$a7175570$0302a8c0@pennp4> > I suppose I could set the KeyPreview to true on all the sub forms but > then they'd also have to have a copy of the KeyDown routine as well, no? Congratulations!! I also got it working by copying the KeyDown sub to the subform control that gets the focus when you go to the tabbed page. It didn't work when I used the KeyDown event for the subform itself. I like your way but I also like having the user end up in the correct first control on the form for data entry. If they hit Tab or Enter when the focus is on the Exit button, I'm not sure where the cursor would go to. I'm also not sure the KeyCode=0 is necessary but I haven't tested it. I also use this for PgUp and PgDn to go to the next main record because when you're in a subform, as you know, it just tries to go to the next record in the subform and really gets screwed up. Private Sub FullName_KeyDown(KeyCode As Integer, Shift As Integer) Dim intAltDown As Integer intAltDown = (Shift And acAltMask) > 0 If intAltDown Then Select Case KeyCode Case 76 ' L Me.Parent.Pg1.SetFocus KeyCode = 0 Case 78 ' N Me.Parent.Pg2.SetFocus KeyCode = 0 Case 68 ' D Me.Parent.Pg3.SetFocus KeyCode = 0 Case 83 Me.Parent.Pg4.SetFocus KeyCode = 0 End Select End If End Sub Penn From Lambert.Heenan at AIG.com Thu Mar 16 10:04:45 2006 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Thu, 16 Mar 2006 10:04:45 -0600 Subject: [AccessD] Key Preview Problem Message-ID: <1D7828CDB8350747AFE9D69E0E90DA1F1E889830@xlivmbx21.aig.com> I just threw a quick form together (in Access 2002). Set the property sheet KeyPreview to True and then added this KeyDown event handler... Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode Case vbKeyF6 Text0.SetFocus KeyCode = 0 Case vbKeyF7 Text2.SetFocus KeyCode = 0 Case vbKeyF8 Text4.SetFocus KeyCode = 0 End Select End Sub It works exactly as you'd hope, and there is no calling of the spellchecker on any number of F7 keys. If you are still having troubles then I would say you have a corrupt form. Back up the application and then go through the usual process for getting rid of corruptions... Decompile and if that does not work try importing everything into a new, blank database. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Wednesday, March 15, 2006 6:13 PM To: Access Developers discussion and problem solving Subject: [AccessD] Key Preview Problem Dear List: I have a tab form with four tabs. I want to set the focus in each tab by pressing the functions keys F5, F6, F7, F8. The KeyDown event is coded: Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode Case 116 Me.pgOrderNumber.SetFocus KeyCode = 0 Case 117 Me.pgReceiving.SetFocus KeyCode = 0 Case 118 Me.pgProcessing.SetFocus KeyCode = 0 Case 119 Me.pgShipping.SetFocus KeyCode = 0 End Select End Sub The first time I press one of the four function keys it works. Then, it quits. (Like if I press F7 the first time is sets the focus to pgProcessing, the second time it invokes the spell checker.) Does anyone know why this would happen? MTIA Rocky -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bchacc at san.rr.com Thu Mar 16 10:08:41 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 16 Mar 2006 08:08:41 -0800 Subject: [AccessD] Key Preview Problem In-Reply-To: <00e501c6490b$a7175570$0302a8c0@pennp4> References: <44196C06.1090304@nanaimo.ark.com> <4419FF52.26868.12BF11A5@stuart.lexacorp.com.pg> <441976C8.3030806@san.rr.com> <00e501c6490b$a7175570$0302a8c0@pennp4> Message-ID: <44198D89.2060004@san.rr.com> In my case the tabs are so 'feature rich' (to use a Microsoft phrase) that there's no one starting point on any tab page. It's mostly editing and not new records. In fact, the user didn't even ask for this. I'm just a mousophobe so I always try to make my apps so they can be run from the keyboard as much as possible. Rocky Penn White wrote: >> I suppose I could set the KeyPreview to true on all the sub forms but >> then they'd also have to have a copy of the KeyDown routine as well, no? >> > > Congratulations!! > > I also got it working by copying the KeyDown sub to the subform control that > gets the focus when you go to the tabbed page. It didn't work when I used > the KeyDown event for the subform itself. I like your way but I also like > having the user end up in the correct first control on the form for data > entry. If they hit Tab or Enter when the focus is on the Exit button, I'm > not sure where the cursor would go to. I'm also not sure the KeyCode=0 is > necessary but I haven't tested it. > > I also use this for PgUp and PgDn to go to the next main record because when > you're in a subform, as you know, it just tries to go to the next record in > the subform and really gets screwed up. > > Private Sub FullName_KeyDown(KeyCode As Integer, Shift As Integer) > Dim intAltDown As Integer > intAltDown = (Shift And acAltMask) > 0 > If intAltDown Then > Select Case KeyCode > Case 76 ' L > Me.Parent.Pg1.SetFocus > KeyCode = 0 > Case 78 ' N > Me.Parent.Pg2.SetFocus > KeyCode = 0 > Case 68 ' D > Me.Parent.Pg3.SetFocus > KeyCode = 0 > Case 83 > Me.Parent.Pg4.SetFocus > KeyCode = 0 > End Select > End If > End Sub > > Penn > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From ecritt1 at alltel.net Thu Mar 16 10:48:04 2006 From: ecritt1 at alltel.net (Penn White) Date: Thu, 16 Mar 2006 11:48:04 -0500 Subject: [AccessD] Key Preview Problem References: <44196C06.1090304@nanaimo.ark.com><4419FF52.26868.12BF11A5@stuart.lexacorp.com.pg><441976C8.3030806@san.rr.com><00e501c6490b$a7175570$0302a8c0@pennp4> <44198D89.2060004@san.rr.com> Message-ID: <00f801c64919$657f7620$0302a8c0@pennp4> I share your mouseophobia and my users didn't request it either. I'm not even sure they'll even use the Alt keys and have wondered several times why I was doing this but I do it anyway. Because of the subforms, I don't think Lambert's suggestion will work though. I think I'd still have to put code in each subform that gets the focus but I'll give it a try just to be complete. BTW, I was wrong about putting the KeyDown code in the Form_KeyDown event handler. It works fine. I'd forgotten that I had more than one subform on the tabbed page and was coding the wrong subform...oh well. In any event, I've had a great time exploring this with everyone and have learned a lot. Thanks to all. Penn From cfoust at infostatsystems.com Thu Mar 16 10:58:24 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 16 Mar 2006 08:58:24 -0800 Subject: [AccessD] Key Preview Problem Message-ID: Rocky, Why not just put a hot key in the tab page label? Then they only have to type the shortcut to get to the page, no keydown or remembering which function key goes where. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 16, 2006 8:09 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Key Preview Problem In my case the tabs are so 'feature rich' (to use a Microsoft phrase) that there's no one starting point on any tab page. It's mostly editing and not new records. In fact, the user didn't even ask for this. I'm just a mousophobe so I always try to make my apps so they can be run from the keyboard as much as possible. Rocky Penn White wrote: >> I suppose I could set the KeyPreview to true on all the sub forms but >> then they'd also have to have a copy of the KeyDown routine as well, no? >> > > Congratulations!! > > I also got it working by copying the KeyDown sub to the subform > control that gets the focus when you go to the tabbed page. It didn't > work when I used the KeyDown event for the subform itself. I like > your way but I also like having the user end up in the correct first > control on the form for data entry. If they hit Tab or Enter when the > focus is on the Exit button, I'm not sure where the cursor would go > to. I'm also not sure the KeyCode=0 is necessary but I haven't tested it. > > I also use this for PgUp and PgDn to go to the next main record > because when you're in a subform, as you know, it just tries to go to > the next record in the subform and really gets screwed up. > > Private Sub FullName_KeyDown(KeyCode As Integer, Shift As Integer) > Dim intAltDown As Integer > intAltDown = (Shift And acAltMask) > 0 > If intAltDown Then > Select Case KeyCode > Case 76 ' L > Me.Parent.Pg1.SetFocus > KeyCode = 0 > Case 78 ' N > Me.Parent.Pg2.SetFocus > KeyCode = 0 > Case 68 ' D > Me.Parent.Pg3.SetFocus > KeyCode = 0 > Case 83 > Me.Parent.Pg4.SetFocus > KeyCode = 0 > End Select > End If > End Sub > > Penn > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From ldoering at symphonyinfo.com Thu Mar 16 11:00:07 2006 From: ldoering at symphonyinfo.com (Liz Doering) Date: Thu, 16 Mar 2006 11:00:07 -0600 Subject: [AccessD] Report Setup Problem Message-ID: <855499653F55AD4190B242717DF132BC10C506@dewey.Symphony.local> I'm about to pull out all my hair. I have a nice report that has been running peaceably for years in a database we built for a client. It has 9 subreports that have also been trouble free for ages. The subreports are formatted to beautifully march down one column and then a second column. It began life in Access97, but now it is in Access2000, and I am running WinXP. Recently I borrowed it from the original client's project into a new project for a new client. As I imported it from one .mdb to the other, Access decided that 1-inch margins were more appropriate for the main report and the subreports. No problem, I think, I'll change them back to the original smaller ones. Unfortunately, I can't get Access to agree to this. I open the report in design view, change the margins--and the column settings--save and run the report. All is well. I close the report, run it again, and again, all is well. I close the report, run it again, and behold! The 1-inch margins and single column are back. I cuss and set them all again. After several attempts this is getting old. And my coworkers are getting jumpy, because I am screaming. I have set all the margins on all the subreports down. I have changed default printers. I have reimported the report and given it a new name. I have stood on my head while turning around three times and muttered several incantations. Does any one have any other suggestions? Thanks, Liz Doering Senior Developer Symphony Information Services liz at symphonyinfo.com www.symphonyinfo.com 763-391-7400 From bchacc at san.rr.com Thu Mar 16 11:03:10 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 16 Mar 2006 09:03:10 -0800 Subject: [AccessD] Key Preview Problem In-Reply-To: References: Message-ID: <44199A4E.6000804@san.rr.com> I tried that first and it didn't work. Maybe for the same reason. Now maybe it would if I set the focus to the exit button after the page got the focus. I've labeled tabs like this before though : Receiving (F6) so they know which function button to push. Rocky Charlotte Foust wrote: > Rocky, > > Why not just put a hot key in the tab page label? Then they only have > to type the shortcut to get to the page, no keydown or remembering which > function key goes where. > > > Charlotte Foust > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin > - Beach Access Software > Sent: Thursday, March 16, 2006 8:09 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Key Preview Problem > > In my case the tabs are so 'feature rich' (to use a Microsoft phrase) > that there's no one starting point on any tab page. It's mostly editing > and not new records. In fact, the user didn't even ask for this. I'm > just a mousophobe so I always try to make my apps so they can be run > from the keyboard as much as possible. > > Rocky > > > Penn White wrote: > >>> I suppose I could set the KeyPreview to true on all the sub forms but >>> > > >>> then they'd also have to have a copy of the KeyDown routine as well, >>> > no? > >>> >>> >> Congratulations!! >> >> I also got it working by copying the KeyDown sub to the subform >> control that gets the focus when you go to the tabbed page. It didn't >> > > >> work when I used the KeyDown event for the subform itself. I like >> your way but I also like having the user end up in the correct first >> control on the form for data entry. If they hit Tab or Enter when the >> > > >> focus is on the Exit button, I'm not sure where the cursor would go >> to. I'm also not sure the KeyCode=0 is necessary but I haven't tested >> > it. > >> I also use this for PgUp and PgDn to go to the next main record >> because when you're in a subform, as you know, it just tries to go to >> the next record in the subform and really gets screwed up. >> >> Private Sub FullName_KeyDown(KeyCode As Integer, Shift As Integer) >> Dim intAltDown As Integer >> intAltDown = (Shift And acAltMask) > 0 >> If intAltDown Then >> Select Case KeyCode >> Case 76 ' L >> Me.Parent.Pg1.SetFocus >> KeyCode = 0 >> Case 78 ' N >> Me.Parent.Pg2.SetFocus >> KeyCode = 0 >> Case 68 ' D >> Me.Parent.Pg3.SetFocus >> KeyCode = 0 >> Case 83 >> Me.Parent.Pg4.SetFocus >> KeyCode = 0 >> End Select >> End If >> End Sub >> >> Penn >> >> >> > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From ecritt1 at alltel.net Thu Mar 16 12:21:37 2006 From: ecritt1 at alltel.net (Penn White) Date: Thu, 16 Mar 2006 13:21:37 -0500 Subject: [AccessD] Backup BE Db to CD? - 2nd Request References: <010901c6486e$292b16d0$0302a8c0@pennp4> Message-ID: <001801c64926$76d3ba50$0302a8c0@pennp4> This one got a little lost in the shuffle. Still wondering if anyone has any ideas about it. >I would like to automate (use a command button w/VBA code) backing up of >the > backend database to a CD. I have searched and searched and found nothing > appropriate. Perhaps it's so simple, nobody bothers to talk about it... > > I'm already using Neil Squires' BackupData class for backing up to a hard > drive. > http://www.rogersaccesslibrary.com/Otherdownload.asp?SampleName='AutoBackupDemo.zip' > > Any ideas greatly appreciated. > > Penn From cyx5 at cdc.gov Thu Mar 16 12:25:31 2006 From: cyx5 at cdc.gov (Nicholson, Karen) Date: Thu, 16 Mar 2006 13:25:31 -0500 Subject: [AccessD] Report Setup Problem Message-ID: Easy. It is in the options in database; if the auto correct thingies are checked on, you are hosed. Wait until you move to A2k3 and people can't even preview or print or anything if you develop using a network printer. Those people have to connect to a bogus .pdf or lpt1 printer, then redirect to their own printer before they can do ANYTHING with reports. Sigh. Karen S. Nicholson Programmer Analyst EG&G Technical Services, Inc. Pittsburgh, PA Phone: 412-386-6649 Email: cyx5 at cdc.gov -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Liz Doering Sent: Thursday, March 16, 2006 12:00 PM To: Access Developers discussion and problem solving Subject: [AccessD] Report Setup Problem I'm about to pull out all my hair. I have a nice report that has been running peaceably for years in a database we built for a client. It has 9 subreports that have also been trouble free for ages. The subreports are formatted to beautifully march down one column and then a second column. It began life in Access97, but now it is in Access2000, and I am running WinXP. Recently I borrowed it from the original client's project into a new project for a new client. As I imported it from one .mdb to the other, Access decided that 1-inch margins were more appropriate for the main report and the subreports. No problem, I think, I'll change them back to the original smaller ones. Unfortunately, I can't get Access to agree to this. I open the report in design view, change the margins--and the column settings--save and run the report. All is well. I close the report, run it again, and again, all is well. I close the report, run it again, and behold! The 1-inch margins and single column are back. I cuss and set them all again. After several attempts this is getting old. And my coworkers are getting jumpy, because I am screaming. I have set all the margins on all the subreports down. I have changed default printers. I have reimported the report and given it a new name. I have stood on my head while turning around three times and muttered several incantations. Does any one have any other suggestions? Thanks, Liz Doering Senior Developer Symphony Information Services liz at symphonyinfo.com www.symphonyinfo.com 763-391-7400 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From markamatte at hotmail.com Thu Mar 16 12:55:25 2006 From: markamatte at hotmail.com (Mark A Matte) Date: Thu, 16 Mar 2006 18:55:25 +0000 Subject: [AccessD] Key Preview Problem Message-ID: About 2 years ago I had an experience where I instantly developed the "mouseophobia" disease. I developed an app for around 20 users. On the 3rd day of 5...I was directed to the last machine to load said app. When I got there I was introduced to the user...and the JAWS system. The last user was visually impaired and could not use the mouse. For the next 48 hours I re-engineered all of the functionality to not need a mouse. It was definitely an educational experience, and is always just under the surface as I take on new projects. Mark A. Matte >From: "Penn White" >Reply-To: Access Developers discussion and problem >solving >To: "Access Developers discussion and problem >solving" >Subject: Re: [AccessD] Key Preview Problem >Date: Thu, 16 Mar 2006 11:48:04 -0500 > >I share your mouseophobia and my users didn't request it either. I'm not >even sure they'll even use the Alt keys and have wondered several times why >I was doing this but I do it anyway. > >Because of the subforms, I don't think Lambert's suggestion will work >though. I think I'd still have to put code in each subform that gets the >focus but I'll give it a try just to be complete. > >BTW, I was wrong about putting the KeyDown code in the Form_KeyDown event >handler. It works fine. I'd forgotten that I had more than one subform on >the tabbed page and was coding the wrong subform...oh well. > >In any event, I've had a great time exploring this with everyone and have >learned a lot. Thanks to all. > >Penn > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From shamil at users.mns.ru Thu Mar 16 13:42:41 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Thu, 16 Mar 2006 22:42:41 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant> <001101c64810$f9ad0420$6501a8c0@Nant> Message-ID: <004601c64932$45f25660$6501a8c0@Nant> Hi All, There is newer version of subject test available at http://smsconsulting.spb.ru/download/tests/a2dds.htm If you will have some time when your compute will be free over weekend please run it. I will try to consistently enlarge/improve this test set. Some users report it runs OK, e.g.: <<< Connection = Provider=SQLOLEDB.1; Connection Timeout = 5; Server=\SQLEXPRESS; Database=Northwind; Integrated Security = SSPI; Test successfully finished. Backend: MS SQL Cycles to pass: 2500 Cycles passed: 2500 Forms opened: 12500 Start time: 3/15/2006 5:03:45 PM End time: 3/15/2006 6:11:13 PM >>> It (latest version) currently gives me trouble for MS Access 2003 backend after about 2000+ cycles: <<< ADODB Bound Forms Crash Test v.1.9 [16-MAR-06] Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 3011 - The Microsoft Jet database engine could not find the object ''. Make sure the object exists and that you spell its name and the path name correctly. Backend: MS Access Binding: ADODB Cycles to pass: 2300 Cycles passed: 2012 Forms opened: 10059 Start time: 16.03.2006 20:25:57 End time: 16.03.2006 22:07:35 Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 71639, Disposed = 71639 >>> It would be useful to have more statistics to find stable workarounds and/or define the set of environments where this test doesn't run OK. Thank you in advance for any feedback. Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 15, 2006 12:14 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > New version of tests is now available at > http://smsconsulting.spb.ru/download/tests/a2dds.htm . > It uses library mdb as it was planned and it has some other improvements. > > Some users report they have problems with MS Access XP. > I did test on my main development PC and it worked OK with MS Access XP. > Your additional feedback on this subject would be very useful to fix the > problem and to improve the tests! > > Thank you. > > Shamil > From jimjih at comcast.net Thu Mar 16 14:05:12 2006 From: jimjih at comcast.net (jimjih at comcast.net) Date: Thu, 16 Mar 2006 20:05:12 +0000 Subject: [AccessD] Key Preview Problem Message-ID: <031620062005.13586.4419C4F800007AAC000035122200761438080706030706@comcast.net> Hi all, This is probably a simple problem, but I can't find the answer in Help or several books: I have a form to enter Delivery Tickets. The data can take several avenues as to how it is billed, so I use Option Groups to get that info, and then I make certain blocks visible or not visible. If I close the form and re-open, the option groups will have neither option selected. But if I use the Control to Enter a New Ticket, the option that was last used is still checked. In the "Enter New Ticket" control (Properties or code) can I tell access to uncheck the options. Setting the "No Default" property doesn't do it. TIA, Jim From ldoering at symphonyinfo.com Thu Mar 16 14:07:34 2006 From: ldoering at symphonyinfo.com (Liz Doering) Date: Thu, 16 Mar 2006 14:07:34 -0600 Subject: [AccessD] Report Setup Problem Message-ID: <855499653F55AD4190B242717DF132BC10C50E@dewey.Symphony.local> Thanks Karen. I had had to import all objects to a new mdb recently and forgotten to turn Name Auto Correct off. It is an evil "feature" Thanks, Liz -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Nicholson, Karen Sent: Thursday, March 16, 2006 12:46 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Report Setup Problem Easy. It is in the options in database; if the auto correct thingies are checked on, you are hosed. Wait until you move to A2k3 and people can't even preview or print or anything if you develop using a network printer. Those people have to connect to a bogus .pdf or lpt1 printer, then redirect to their own printer before they can do ANYTHING with reports. Sigh. Karen S. Nicholson Programmer Analyst EG&G Technical Services, Inc. Pittsburgh, PA Phone: 412-386-6649 Email: cyx5 at cdc.gov -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Liz Doering Sent: Thursday, March 16, 2006 12:00 PM To: Access Developers discussion and problem solving Subject: [AccessD] Report Setup Problem I'm about to pull out all my hair. I have a nice report that has been running peaceably for years in a database we built for a client. It has 9 subreports that have also been trouble free for ages. The subreports are formatted to beautifully march down one column and then a second column. It began life in Access97, but now it is in Access2000, and I am running WinXP. Recently I borrowed it from the original client's project into a new project for a new client. As I imported it from one .mdb to the other, Access decided that 1-inch margins were more appropriate for the main report and the subreports. No problem, I think, I'll change them back to the original smaller ones. Unfortunately, I can't get Access to agree to this. I open the report in design view, change the margins--and the column settings--save and run the report. All is well. I close the report, run it again, and again, all is well. I close the report, run it again, and behold! The 1-inch margins and single column are back. I cuss and set them all again. After several attempts this is getting old. And my coworkers are getting jumpy, because I am screaming. I have set all the margins on all the subreports down. I have changed default printers. I have reimported the report and given it a new name. I have stood on my head while turning around three times and muttered several incantations. Does any one have any other suggestions? Thanks, Liz Doering Senior Developer Symphony Information Services liz at symphonyinfo.com www.symphonyinfo.com 763-391-7400 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Thu Mar 16 14:27:05 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Thu, 16 Mar 2006 23:27:05 +0300 Subject: [AccessD] MS Access 2003/XP - Upsizing Wizard Message-ID: <000c01c64938$03eb0d10$6501a8c0@Nant> Hi All, I'm getting this strange message from Upsizing wizard when MS SQL 2000 works well and available from the other development tools and applications: <+ Upsizing WIzard [DBNETLIB] ConnectionOpen (Connect()).]SQL Server does not exist or access denied. -> Have anybody seen something like that? Is there somewhere the sources of upsizing wizard to fix the problem? Yes, I think I enter security attibutes correctly in a login dialog shown by upsizing wizard - I did try to use both Integrated Security and UserName/Password - always fails with different databases, which are available using the same DSN, e.g. to attach tables to MDBs or create ADPs etc. Thank you. Shamil From shamil at users.mns.ru Thu Mar 16 14:51:03 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Thu, 16 Mar 2006 23:51:03 +0300 Subject: [AccessD] MS Access 2003/XP - Upsizing Wizard References: <000c01c64938$03eb0d10$6501a8c0@Nant> Message-ID: <001b01c6493b$586e9ca0$6501a8c0@Nant> FYI: This didn't help - http://support.microsoft.com/kb/838594 I tried. Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "!DBA-MAIN" Sent: Thursday, March 16, 2006 11:27 PM Subject: [AccessD] MS Access 2003/XP - Upsizing Wizard > Hi All, > > I'm getting this strange message from Upsizing wizard when MS SQL 2000 > works > well and available from the other development tools and applications: > > <+ > Upsizing WIzard > [DBNETLIB] ConnectionOpen (Connect()).]SQL Server does not exist or access > denied. > -> > > Have anybody seen something like that? > Is there somewhere the sources of upsizing wizard to fix the problem? > > Yes, I think I enter security attibutes correctly in a login dialog shown > by > upsizing wizard - I did try to use both Integrated Security and > UserName/Password - always fails with different databases, which are > available using the same DSN, e.g. to attach tables to MDBs or create ADPs > etc. > > Thank you. > > Shamil > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From martyconnelly at shaw.ca Thu Mar 16 15:15:44 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Thu, 16 Mar 2006 13:15:44 -0800 Subject: [AccessD] MS Access 2003/XP - Upsizing Wizard References: <000c01c64938$03eb0d10$6501a8c0@Nant> Message-ID: <4419D580.7080103@shaw.ca> Some notes and links for Upsizing to SQL 2000 and 2005 There is a problem which occurs when your Access database and the instance of SQL Server do not exist on the same computer. More so with Express because of TCP and firewalls. Avoid if possible. See blurb further down for fix on SQL 2000, and the Express forums post for SQL Express fix. How to use data transformation services (DTS) to export data from a Microsoft Access database to an SQL Server database http://support.microsoft.com/default.aspx?scid=kb;en-us;285829 Note: DTS is replaced in SQL 2005 by SSIS and is also not available for Express install. Access 2003 troubleshoot upsize wizard http://office.microsoft.com/en-us/assistance/HP030894261033.aspx http://office.microsoft.com/en-us/assistance/CH062526781033.aspx Access 2002 troubleshoot upsize wizard http://support.microsoft.com/kb/325019/EN-US/ Access 2003 Database Upgrade to SQL Server 2005 http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=128444&SiteID=1 Different Machine SQL 2000 upsize problem. This problem occurs when your Access database and the instance of SQL Server do not exist on the same computer. WORKAROUND To work around this problem, use a File DSN to connect to your instance of SQL Server when you upsize your Access database. To do this, follow these steps: Start Access. Open the problem database. On the Tools menu, point to Database Utilities, and then click Upsizing Wizard. In the Upsizing Wizard dialog box, click Use existing database, and then click Next. In the Select Data Source dialog box, select the appropriate DSN to connect to your instance of SQL Server on the File Data Source tab. Click OK. Enter the appropriate authentication information to connect to your instance of SQL Server if the SQL Server Login dialog box appears. Follow the instructions in the Upsizing Wizard. Notice that the Access database is successfully upsized without any errors. MORE INFORMATION Steps to reproduce the problem Start Access. Open the Northwind.mdb sample database. On the Tools menu, point to Database Utilities, and then click Upsizing Wizard. In the Upsizing Wizard dialog box, click Use existing database, and then click Next. In the Select Data Source dialog box, select the appropriate DSN to connect to your instance of SQL Server on the Machine Data Source tab. Click OK. Enter the appropriate authentication information to connect to your instance of SQL Server if the SQL Server Login dialog box appears. Notice that you receive the error messages that are mentioned in the "Symptoms" section, and you cannot continue the upsizing process. REFERENCES For more information about the Upsizing Wizard in Access 2003, click Microsoft Office Access Help on the Help menu, type About upsizing a Microsoft Access database in the Search for box in the Assistance pane, and then click Start searching to view the topic. For more information about the Upsizing Wizard in Access 2002, click Microsoft Access Help on the Help menu, type About upsizing a Microsoft Access database in the Office Assistant or the Answer Wizard, and then click Search to view the topic. For additional information about how to use the Upsizing Wizard in Access 2002, click the following article number to view the article in the Microsoft Knowledge Base: MSKB 330468 HOW TO: Use the Microsoft Access 2002 Upsizing Wizard For additional information about issues with the Upsizing Wizard in Access 2002, click the following article number to view the article in the Microsoft Knowledge Base: MSKB 328319 ACC2002: Issues with the Access 2002 Upsizing Wizard Shamil Salakhetdinov wrote: >Hi All, > >I'm getting this strange message from Upsizing wizard when MS SQL 2000 works >well and available from the other development tools and applications: > ><+ >Upsizing WIzard >[DBNETLIB] ConnectionOpen (Connect()).]SQL Server does not exist or access >denied. >-> > >Have anybody seen something like that? >Is there somewhere the sources of upsizing wizard to fix the problem? > >Yes, I think I enter security attibutes correctly in a login dialog shown by >upsizing wizard - I did try to use both Integrated Security and >UserName/Password - always fails with different databases, which are >available using the same DSN, e.g. to attach tables to MDBs or create ADPs >etc. > >Thank you. > >Shamil > > > -- Marty Connelly Victoria, B.C. Canada From shamil at users.mns.ru Thu Mar 16 15:52:20 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Fri, 17 Mar 2006 00:52:20 +0300 Subject: [AccessD] MS Access 2003/XP - Upsizing Wizard References: <000c01c64938$03eb0d10$6501a8c0@Nant> <4419D580.7080103@shaw.ca> Message-ID: <003001c64943$e807a750$6501a8c0@Nant> Thank you Marty, for your valuable feedback! No, I'm running upsizing Wizard on the same PC where MS SQL 2003 is running. What I did not that a long ago(and MS SQL 200 was installed a long ago) - I did change the name of my development/test Windows 2003 Server PC. This is probably the case but as I wrote - other development tools and applications work OK with MS SQL Server and I can open connectiions via code etc. This upsizing wizard is a strange "beast"... Shamil ----- Original Message ----- From: "MartyConnelly" To: "Access Developers discussion and problem solving" Sent: Friday, March 17, 2006 12:15 AM Subject: Re: [AccessD] MS Access 2003/XP - Upsizing Wizard > Some notes and links for Upsizing to SQL 2000 and 2005 > > There is a problem which occurs when your Access database and the > instance of SQL > Server do not exist on the same computer. More so with Express because > of TCP and firewalls. > Avoid if possible. > > See blurb further down for fix on SQL 2000, and the Express forums post > for SQL Express fix. > > How to use data transformation services (DTS) to export data from a > Microsoft Access database to an SQL Server database > http://support.microsoft.com/default.aspx?scid=kb;en-us;285829 > Note: DTS is replaced in SQL 2005 by SSIS and is also not available for > Express install. > > Access 2003 troubleshoot upsize wizard > > http://office.microsoft.com/en-us/assistance/HP030894261033.aspx > http://office.microsoft.com/en-us/assistance/CH062526781033.aspx > > Access 2002 troubleshoot upsize wizard > http://support.microsoft.com/kb/325019/EN-US/ > > Access 2003 Database Upgrade to SQL Server 2005 > > http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=128444&SiteID=1 > > > Different Machine SQL 2000 upsize problem. > > This problem occurs when your Access database and the instance of SQL > Server do not exist on the same computer. > WORKAROUND > To work around this problem, use a File DSN to connect to your instance of > SQL Server when you upsize your Access database. To do this, follow these > steps: > Start Access. > Open the problem database. > On the Tools menu, point to Database Utilities, and then click Upsizing > Wizard. > In the Upsizing Wizard dialog box, click Use existing database, and then > click Next. > In the Select Data Source dialog box, select the appropriate DSN to > connect > to your instance of SQL Server on the File Data Source tab. > Click OK. > Enter the appropriate authentication information to connect to your > instance of SQL Server if the SQL Server Login dialog box appears. > > > Follow the instructions in the Upsizing Wizard. > > > Notice that the Access database is successfully upsized without any > errors. > MORE INFORMATION > Steps to reproduce the problem > Start Access. > Open the Northwind.mdb sample database. > On the Tools menu, point to Database Utilities, and then click Upsizing > Wizard. > In the Upsizing Wizard dialog box, click Use existing database, and then > click Next. > In the Select Data Source dialog box, select the appropriate DSN to > connect > to your instance of SQL Server on the Machine Data Source tab. > Click OK. > Enter the appropriate authentication information to connect to your > instance of SQL Server if the SQL Server Login dialog box appears. > > > Notice that you receive the error messages that are mentioned in the > "Symptoms" section, and you cannot continue the upsizing process. > REFERENCES > For more information about the Upsizing Wizard in Access 2003, click > Microsoft Office Access Help on the Help menu, type About upsizing a > Microsoft Access database in the Search for box in the Assistance pane, > and > then click Start searching to view the topic. > > > For more information about the Upsizing Wizard in Access 2002, click > Microsoft Access Help on the Help menu, type About upsizing a Microsoft > Access database in the Office Assistant or the Answer Wizard, and then > click Search to view the topic. > > > For additional information about how to use the Upsizing Wizard in Access > 2002, click the following article number to view the article in the > Microsoft Knowledge Base: > MSKB 330468 HOW TO: Use the Microsoft Access 2002 Upsizing Wizard > > > For additional information about issues with the Upsizing Wizard in Access > 2002, click the following article number to view the article in the > Microsoft Knowledge Base: > MSKB 328319 ACC2002: Issues with the Access 2002 Upsizing Wizard > <<< tail skipped>>> From KIsmert at TexasSystems.com Thu Mar 16 15:48:16 2006 From: KIsmert at TexasSystems.com (Ken Ismert) Date: Thu, 16 Mar 2006 15:48:16 -0600 Subject: [AccessD] Dying on Code Here Message-ID: Karen, I'd be tempted to try something like this: . . . Dim rTDef As DAO.TableDef Dim rFld As DAO.Field On Error GoTo HandleErr For i = 0 To CurrentDb.TableDefs.Count - 1 If (CurrentDb.TableDefs(i).Name Like "*SAF") Then Set rTDef = CurrentDb.TableDefs(i) Debug.Print "Table: " & rTDef.Name ' Init SQL string strSQLTest = "" For k = 0 To Me.Controls.Count - 1 On Error Resume Next ' Try to get matching table field Set rFld = rTDef.Fields(Me.Controls(k).Name) If Err.Number <> 0 Then ' Table has field with matching name Debug.Print rFld.Name strFieldNameChg = "Forms![frmRequiredFieldReview]![" & rFld.Name & "chg]" ' Build set list strSQLTest = strSQLTest & IIf(strSQLTest > " ", ", ", "") & rFld.Name & " = " & strFieldNameChg Debug.Print strSQLTest Else ' Table has no field with matching name Debug.Print "Missing Field: " & Me.Controls(k).Name & "; Table: " & rTDef.Name Err.Clear End If Next k On Error GoTo HandleErr ' Add Update statement prefix, suffix strSQLTest = "update " & rTDef.Name & " set " & strSQLTest & ";" Debug.Print strSQLTest Stop ' DoCmd.RunSQL strsqlTest End If Next i Exit Sub HandleErr: MsgBox Err.Number & " - " & Err.Description Exit Sub End Sub I put in a simple error handler. I used On Error Resume Next so I could grab the matching field name using the control name. If no error, I add the field to the set list. I tack on the Update prefix just before executing. This is air code, so double-check before running. -Ken From stuart at lexacorp.com.pg Thu Mar 16 15:50:38 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Fri, 17 Mar 2006 07:50:38 +1000 Subject: [AccessD] Option Boxes - was Key Preview Problem In-Reply-To: <031620062005.13586.4419C4F800007AAC000035122200761438080706030706@comcast.net> Message-ID: <441A6A4E.28202.1460FA72@stuart.lexacorp.com.pg> On 16 Mar 2006 at 20:05, jimjih at comcast.net wrote: > Hi all, > This is probably a simple problem, but I can't find the answer in Help or > several books: I have a form to enter Delivery Tickets. The data can take > several avenues as to how it is billed, so I use Option Groups to get that > info, and then I make certain blocks visible or not visible. If I close the > form and re-open, the option groups will have neither option selected. But > if I use the Control to Enter a New Ticket, the option that was last used is > still checked. In the "Enter New Ticket" control (Properties or code) can I > tell access to uncheck the options. Setting the "No Default" property > doesn't do it. > I presume that the option groups are unbound. You need to set the value of the option group to a number which doesn't correspond to any of the Option Values of it's child buttons. Since re-opening the form does this, it looks like you just need to set them to 0. -- Stuart From martyconnelly at shaw.ca Thu Mar 16 16:15:16 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Thu, 16 Mar 2006 14:15:16 -0800 Subject: [AccessD] MS Access 2003/XP - Upsizing Wizard References: <000c01c64938$03eb0d10$6501a8c0@Nant> <4419D580.7080103@shaw.ca> <003001c64943$e807a750$6501a8c0@Nant> Message-ID: <4419E374.7060206@shaw.ca> Can you directly link to tables on SQL Server 2000 from Access? If you are running WinXP SP2, I wonder if the wizard is using named pipes or TCP/IP sockets network library or you are using WinXP firewall How to configure Windows XP Service Pack 2 (SP2) for use with SQL Server http://support.microsoft.com/?kbid=841249 How to use a script to programmatically open ports for SQL Server to use on systems that are running Windows XP Service Pack 2 http://support.microsoft.com/kb/839980/ Shamil Salakhetdinov wrote: >Thank you Marty, for your valuable feedback! > >No, I'm running upsizing Wizard on the same PC where MS SQL 2003 is running. > >What I did not that a long ago(and MS SQL 200 was installed a long ago) - I >did change the name of my development/test Windows 2003 Server PC. This is >probably the case but as I wrote - other development tools and applications >work OK with MS SQL Server and I can open connectiions via code etc. > >This upsizing wizard is a strange "beast"... > >Shamil > >----- Original Message ----- >From: "MartyConnelly" >To: "Access Developers discussion and problem solving" > >Sent: Friday, March 17, 2006 12:15 AM >Subject: Re: [AccessD] MS Access 2003/XP - Upsizing Wizard > > > > >>Some notes and links for Upsizing to SQL 2000 and 2005 >> >>There is a problem which occurs when your Access database and the >>instance of SQL >>Server do not exist on the same computer. More so with Express because >>of TCP and firewalls. >>Avoid if possible. >> >>See blurb further down for fix on SQL 2000, and the Express forums post >>for SQL Express fix. >> >>How to use data transformation services (DTS) to export data from a >>Microsoft Access database to an SQL Server database >>http://support.microsoft.com/default.aspx?scid=kb;en-us;285829 >>Note: DTS is replaced in SQL 2005 by SSIS and is also not available for >>Express install. >> >>Access 2003 troubleshoot upsize wizard >> >>http://office.microsoft.com/en-us/assistance/HP030894261033.aspx >>http://office.microsoft.com/en-us/assistance/CH062526781033.aspx >> >>Access 2002 troubleshoot upsize wizard >>http://support.microsoft.com/kb/325019/EN-US/ >> >>Access 2003 Database Upgrade to SQL Server 2005 >> >>http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=128444&SiteID=1 >> >> >>Different Machine SQL 2000 upsize problem. >> >>This problem occurs when your Access database and the instance of SQL >>Server do not exist on the same computer. >>WORKAROUND >>To work around this problem, use a File DSN to connect to your instance of >>SQL Server when you upsize your Access database. To do this, follow these >>steps: >>Start Access. >>Open the problem database. >>On the Tools menu, point to Database Utilities, and then click Upsizing >>Wizard. >>In the Upsizing Wizard dialog box, click Use existing database, and then >>click Next. >>In the Select Data Source dialog box, select the appropriate DSN to >>connect >>to your instance of SQL Server on the File Data Source tab. >>Click OK. >>Enter the appropriate authentication information to connect to your >>instance of SQL Server if the SQL Server Login dialog box appears. >> >> >>Follow the instructions in the Upsizing Wizard. >> >> >>Notice that the Access database is successfully upsized without any >>errors. >>MORE INFORMATION >>Steps to reproduce the problem >>Start Access. >>Open the Northwind.mdb sample database. >>On the Tools menu, point to Database Utilities, and then click Upsizing >>Wizard. >>In the Upsizing Wizard dialog box, click Use existing database, and then >>click Next. >>In the Select Data Source dialog box, select the appropriate DSN to >>connect >>to your instance of SQL Server on the Machine Data Source tab. >>Click OK. >>Enter the appropriate authentication information to connect to your >>instance of SQL Server if the SQL Server Login dialog box appears. >> >> >>Notice that you receive the error messages that are mentioned in the >>"Symptoms" section, and you cannot continue the upsizing process. >>REFERENCES >>For more information about the Upsizing Wizard in Access 2003, click >>Microsoft Office Access Help on the Help menu, type About upsizing a >>Microsoft Access database in the Search for box in the Assistance pane, >>and >>then click Start searching to view the topic. >> >> >>For more information about the Upsizing Wizard in Access 2002, click >>Microsoft Access Help on the Help menu, type About upsizing a Microsoft >>Access database in the Office Assistant or the Answer Wizard, and then >>click Search to view the topic. >> >> >>For additional information about how to use the Upsizing Wizard in Access >>2002, click the following article number to view the article in the >>Microsoft Knowledge Base: >>MSKB 330468 HOW TO: Use the Microsoft Access 2002 Upsizing Wizard >> >> >>For additional information about issues with the Upsizing Wizard in Access >>2002, click the following article number to view the article in the >>Microsoft Knowledge Base: >>MSKB 328319 ACC2002: Issues with the Access 2002 Upsizing Wizard >> >> >> > ><<< tail skipped>>> > > > -- Marty Connelly Victoria, B.C. Canada From shamil at users.mns.ru Thu Mar 16 16:42:07 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Fri, 17 Mar 2006 01:42:07 +0300 Subject: [AccessD] MS Access 2003/XP - Upsizing Wizard References: <000c01c64938$03eb0d10$6501a8c0@Nant> <4419D580.7080103@shaw.ca><003001c64943$e807a750$6501a8c0@Nant> <4419E374.7060206@shaw.ca> Message-ID: <000801c6494a$dc28d970$6501a8c0@Nant> Yes, Marty, I can directly link tables from MS SQL Server 2000. I do use MS Windows 2003 Server SP1. I think now it's firewall *Agnitum Outpost) which blocks Upsizing Wizard "talking" to MS SQL. I will check based on your refs.(Currently have to do other urgent work) Thank you! Shamil ----- Original Message ----- From: "MartyConnelly" To: "Access Developers discussion and problem solving" Sent: Friday, March 17, 2006 1:15 AM Subject: Re: [AccessD] MS Access 2003/XP - Upsizing Wizard > Can you directly link to tables on SQL Server 2000 from Access? > > If you are running WinXP SP2, I wonder if the wizard is using named pipes > or TCP/IP sockets network library or you are using WinXP firewall > > How to configure Windows XP Service Pack 2 (SP2) for use with SQL Server > http://support.microsoft.com/?kbid=841249 > How to use a script to programmatically open ports for SQL Server to use > on systems that are running Windows XP Service Pack 2 > http://support.microsoft.com/kb/839980/ > > Shamil Salakhetdinov wrote: > >>Thank you Marty, for your valuable feedback! >> >>No, I'm running upsizing Wizard on the same PC where MS SQL 2003 is >>running. >> >>What I did not that a long ago(and MS SQL 200 was installed a long ago) - >>I >>did change the name of my development/test Windows 2003 Server PC. This >>is >>probably the case but as I wrote - other development tools and >>applications >>work OK with MS SQL Server and I can open connectiions via code etc. >> >>This upsizing wizard is a strange "beast"... >> >>Shamil >> <<< tail skipped >>> From martyconnelly at shaw.ca Thu Mar 16 17:07:37 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Thu, 16 Mar 2006 15:07:37 -0800 Subject: [AccessD] MS Access 2003/XP - Upsizing Wizard References: <000c01c64938$03eb0d10$6501a8c0@Nant> <4419D580.7080103@shaw.ca> <003001c64943$e807a750$6501a8c0@Nant> <4419E374.7060206@shaw.ca> <000801c6494a$dc28d970$6501a8c0@Nant> Message-ID: <4419EFB9.2050707@shaw.ca> If you are still stuck, here is a commercial product UPSizingPro from Sydney Software in Australia The downloadable trial version defaults to a freebie version that only allow 10 tables after 60 uses. http://www.ssw.com.au/SSW/UpsizingPRO/ It creates an output SQL script like the following which can be useful in other situations CREATE DATABASE [add database name here] GO CREATE TABLE [Test2] ( [TestField2] varchar (50) NOT NULL , [TestField3] varchar (6) NOT NULL , [Notes] text NULL ) ON [PRIMARY] GO Shamil Salakhetdinov wrote: >Yes, Marty, I can directly link tables from MS SQL Server 2000. > >I do use MS Windows 2003 Server SP1. > >I think now it's firewall *Agnitum Outpost) which blocks Upsizing Wizard >"talking" to MS SQL. > >I will check based on your refs.(Currently have to do other urgent work) > >Thank you! > >Shamil > >----- Original Message ----- >From: "MartyConnelly" >To: "Access Developers discussion and problem solving" > >Sent: Friday, March 17, 2006 1:15 AM >Subject: Re: [AccessD] MS Access 2003/XP - Upsizing Wizard > > > > >>Can you directly link to tables on SQL Server 2000 from Access? >> >>If you are running WinXP SP2, I wonder if the wizard is using named pipes >>or TCP/IP sockets network library or you are using WinXP firewall >> >>How to configure Windows XP Service Pack 2 (SP2) for use with SQL Server >>http://support.microsoft.com/?kbid=841249 >>How to use a script to programmatically open ports for SQL Server to use >>on systems that are running Windows XP Service Pack 2 >>http://support.microsoft.com/kb/839980/ >> >>Shamil Salakhetdinov wrote: >> >> >> >>>Thank you Marty, for your valuable feedback! >>> >>>No, I'm running upsizing Wizard on the same PC where MS SQL 2003 is >>>running. >>> >>>What I did not that a long ago(and MS SQL 200 was installed a long ago) - >>>I >>>did change the name of my development/test Windows 2003 Server PC. This >>>is >>>probably the case but as I wrote - other development tools and >>>applications >>>work OK with MS SQL Server and I can open connectiions via code etc. >>> >>>This upsizing wizard is a strange "beast"... >>> >>>Shamil >>> >>> >>> ><<< tail skipped >>> > > > -- Marty Connelly Victoria, B.C. Canada From cyx5 at cdc.gov Fri Mar 17 05:37:10 2006 From: cyx5 at cdc.gov (Nicholson, Karen) Date: Fri, 17 Mar 2006 06:37:10 -0500 Subject: [AccessD] Dying on Code Here Message-ID: Exactly. I got it yesterday. I did not know that I could do the (k).name - it is not intellisensed. It works great now. Karen S. Nicholson Programmer Analyst EG&G Technical Services, Inc. Pittsburgh, PA Phone: 412-386-6649 Email: cyx5 at cdc.gov -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Ken Ismert Sent: Thursday, March 16, 2006 4:48 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Dying on Code Here Karen, I'd be tempted to try something like this: . . . Dim rTDef As DAO.TableDef Dim rFld As DAO.Field On Error GoTo HandleErr For i = 0 To CurrentDb.TableDefs.Count - 1 If (CurrentDb.TableDefs(i).Name Like "*SAF") Then Set rTDef = CurrentDb.TableDefs(i) Debug.Print "Table: " & rTDef.Name ' Init SQL string strSQLTest = "" For k = 0 To Me.Controls.Count - 1 On Error Resume Next ' Try to get matching table field Set rFld = rTDef.Fields(Me.Controls(k).Name) If Err.Number <> 0 Then ' Table has field with matching name Debug.Print rFld.Name strFieldNameChg = "Forms![frmRequiredFieldReview]![" & rFld.Name & "chg]" ' Build set list strSQLTest = strSQLTest & IIf(strSQLTest > " ", ", ", "") & rFld.Name & " = " & strFieldNameChg Debug.Print strSQLTest Else ' Table has no field with matching name Debug.Print "Missing Field: " & Me.Controls(k).Name & "; Table: " & rTDef.Name Err.Clear End If Next k On Error GoTo HandleErr ' Add Update statement prefix, suffix strSQLTest = "update " & rTDef.Name & " set " & strSQLTest & ";" Debug.Print strSQLTest Stop ' DoCmd.RunSQL strsqlTest End If Next i Exit Sub HandleErr: MsgBox Err.Number & " - " & Err.Description Exit Sub End Sub I put in a simple error handler. I used On Error Resume Next so I could grab the matching field name using the control name. If no error, I add the field to the set list. I tack on the Update prefix just before executing. This is air code, so double-check before running. -Ken -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cyx5 at cdc.gov Fri Mar 17 05:43:00 2006 From: cyx5 at cdc.gov (Nicholson, Karen) Date: Fri, 17 Mar 2006 06:43:00 -0500 Subject: [AccessD] Key Preview Problem Message-ID: I don't set my options to 0 or -1 on new records on radio buttons, check boxes. I set them to the number 2. Then I can error check to make sure the user has responded to the field instead of accepting a default value. Karen S. Nicholson Programmer Analyst EG&G Technical Services, Inc. Pittsburgh, PA Phone: 412-386-6649 Email: cyx5 at cdc.gov -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of jimjih at comcast.net Sent: Thursday, March 16, 2006 3:05 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Key Preview Problem Hi all, This is probably a simple problem, but I can't find the answer in Help or several books: I have a form to enter Delivery Tickets. The data can take several avenues as to how it is billed, so I use Option Groups to get that info, and then I make certain blocks visible or not visible. If I close the form and re-open, the option groups will have neither option selected. But if I use the Control to Enter a New Ticket, the option that was last used is still checked. In the "Enter New Ticket" control (Properties or code) can I tell access to uncheck the options. Setting the "No Default" property doesn't do it. TIA, Jim -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bchacc at san.rr.com Fri Mar 17 08:16:17 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Fri, 17 Mar 2006 06:16:17 -0800 Subject: [AccessD] KeyDown Problem In-Reply-To: <4419FEB4.10279.12BCA856@stuart.lexacorp.com.pg> References: <4419FEB4.10279.12BCA856@stuart.lexacorp.com.pg> Message-ID: <441AC4B1.4050901@san.rr.com> Stuart: Thanks. That would be the global solution. Had another weird problem occur - one of my events stopped working altogether. It was a click event. Other events continued to work, this one just wouldn't. Eventually I traced it down to a compile error in an unrelated module - it was in another form's code! Once I had a clean compile, the click event worked. Any compile error and this event stopped. Although other events continued to work correctly. Ever seen this behavior before? Regards, Rocky Stuart McLachlan wrote: > On 16 Mar 2006 at 5:58, Rocky Smolin - Beach Access Software wrote: > > >> Stuart: >> >> Thanks for having a look at this. (You might have to relink the back >> end tables.) >> >> Login as Curly - password curly. >> >> The tabbed form and KeyDown routine are in the Orders form off the Main >> Menu. The tabbed form IS full of sub-forms. Someone suggested that might >> be causing problems. >> >> > > Yes, that's it. Once you tab to another page, the subform gets the focus and that subform > doesn't have KeyPreview on. You will need to set keypreview on for all the subforms. Then > call a generic procedure in the keydown to shift focus back to where you want it. > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From cfoust at infostatsystems.com Fri Mar 17 10:27:33 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 17 Mar 2006 08:27:33 -0800 Subject: [AccessD] KeyDown Problem Message-ID: I have, and it drove me crazy! When strange things start occurring, I immediately do a compile. The thing that's making me nuts now is, after installing Office 2003 but keeping Access 2002, this has become even more frequent. Error messages will pop up that occur deep down in the stack but they present an obtuse message that is less than useless and I have to step through layers of code to find the line that blows up. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Friday, March 17, 2006 6:16 AM To: Stuart McLachlan; Access Developers discussion and problem solving Subject: Re: [AccessD] KeyDown Problem Stuart: Thanks. That would be the global solution. Had another weird problem occur - one of my events stopped working altogether. It was a click event. Other events continued to work, this one just wouldn't. Eventually I traced it down to a compile error in an unrelated module - it was in another form's code! Once I had a clean compile, the click event worked. Any compile error and this event stopped. Although other events continued to work correctly. Ever seen this behavior before? Regards, Rocky Stuart McLachlan wrote: > On 16 Mar 2006 at 5:58, Rocky Smolin - Beach Access Software wrote: > > >> Stuart: >> >> Thanks for having a look at this. (You might have to relink the back >> end tables.) >> >> Login as Curly - password curly. >> >> The tabbed form and KeyDown routine are in the Orders form off the >> Main Menu. The tabbed form IS full of sub-forms. Someone suggested >> that might be causing problems. >> >> > > Yes, that's it. Once you tab to another page, the subform gets the > focus and that subform doesn't have KeyPreview on. You will need to > set keypreview on for all the subforms. Then call a generic procedure in the keydown to shift focus back to where you want it. > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From lmrazek at lcm-res.com Fri Mar 17 10:37:27 2006 From: lmrazek at lcm-res.com (Lawrence Mrazek) Date: Fri, 17 Mar 2006 10:37:27 -0600 Subject: [AccessD] Export to Excel via VBA, Naming Cells In-Reply-To: <44196C06.1090304@nanaimo.ark.com> Message-ID: <023501c649e1$14338db0$036fa8c0@hplaptop> Hi: I'm working on a fairly complex routine that exports sales data from Access into Excel. Basically, the Excel report will have multiple worksheets, each containing a salesman's summary sales data (about 15-20 salesmen), plus one worksheet with company totals. The client wants all calculations to happen in Excel, and since I can't predict where the data will end up in Excel, I can't really hard code any formulas that refer to the sales data. I haven't had any trouble creating the worksheets/exporting the raw data via a VBA routine, but I'm stuck on the calculation front. Can I dynamically name cells/ranges as build the Excel report? I I'd like to be able to use named ranges for these calculations, as I'll need to refer to them to build my totals, but have been having a bit of trouble getting them to work. I'd like to be able to assign the names as I build the spreadsheet, but I'm not quite "getting" the syntax of the naming convention or something. I've added a sample below: While Not rsSales.EOF xlWs.Cells(rownum, 1) = rsSales.Fields("SalesRP") xlWs.Cells(rownum, 2) = rsSales.Fields("salesrepName") xlWs.Cells(rownum, 3) = rsSales.Fields("ProductGroup") xlWs.Cells(rownum, 4) = rsSales.Fields("Item") xlWs.Cells(rownum, 5) = rsSales.Fields("itemdescription") xlWs.Cells(rownum, 6) = rsSales.Fields("month") RangeName = rsSales.Fields("SalesRP") & rsSales.Fields("item") & rsSales.Fields("month") CellLocation = rownum & 6 & ":" & rownum & 6 ' Just testing to see if I can get the naming working. xlWb.Names.Add Name:=RangeName, RefersTo:=CellLocation, Visible:=True ' "=" & "!$" & rownum & "$" & 6 & ":" & rownum & "$" & 6 xlWs.Cells(rownum, 7) = rsSales.Fields("KGsLastYr") xlWs.Cells(rownum, 8) = rsSales.Fields("KgsCurrYr") xlWs.Cells(rownum, 9) = rsSales.Fields("SalesCurrYr") xlWs.Cells(rownum, 10) = rsSales.Fields("SalesLastYr") xlWs.Cells(rownum, 11) = rsSales.Fields("marginCurrYr") xlWs.Cells(rownum, 12) = rsSales.Fields("MarginLastYr") rownum = rownum + 1 rsSales.MoveNext Wend Any suggestions? Also, if anyone specializes in this sort of thing (Access to Excel automation), I might need to farm this out. Thanks in advance. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 From lmrazek at lcm-res.com Fri Mar 17 10:43:20 2006 From: lmrazek at lcm-res.com (Lawrence Mrazek) Date: Fri, 17 Mar 2006 10:43:20 -0600 Subject: [AccessD] Export to Excel via VBA, Naming Cells In-Reply-To: <023501c649e1$14338db0$036fa8c0@hplaptop> Message-ID: <023c01c649e1$e6a48a10$036fa8c0@hplaptop> Forgot to add that this is on Access XP, Excel XP. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Lawrence Mrazek Sent: Friday, March 17, 2006 10:37 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Export to Excel via VBA, Naming Cells Hi: I'm working on a fairly complex routine that exports sales data from Access into Excel. Basically, the Excel report will have multiple worksheets, each containing a salesman's summary sales data (about 15-20 salesmen), plus one worksheet with company totals. The client wants all calculations to happen in Excel, and since I can't predict where the data will end up in Excel, I can't really hard code any formulas that refer to the sales data. I haven't had any trouble creating the worksheets/exporting the raw data via a VBA routine, but I'm stuck on the calculation front. Can I dynamically name cells/ranges as build the Excel report? I I'd like to be able to use named ranges for these calculations, as I'll need to refer to them to build my totals, but have been having a bit of trouble getting them to work. I'd like to be able to assign the names as I build the spreadsheet, but I'm not quite "getting" the syntax of the naming convention or something. I've added a sample below: While Not rsSales.EOF xlWs.Cells(rownum, 1) = rsSales.Fields("SalesRP") xlWs.Cells(rownum, 2) = rsSales.Fields("salesrepName") xlWs.Cells(rownum, 3) = rsSales.Fields("ProductGroup") xlWs.Cells(rownum, 4) = rsSales.Fields("Item") xlWs.Cells(rownum, 5) = rsSales.Fields("itemdescription") xlWs.Cells(rownum, 6) = rsSales.Fields("month") RangeName = rsSales.Fields("SalesRP") & rsSales.Fields("item") & rsSales.Fields("month") CellLocation = rownum & 6 & ":" & rownum & 6 ' Just testing to see if I can get the naming working. xlWb.Names.Add Name:=RangeName, RefersTo:=CellLocation, Visible:=True ' "=" & "!$" & rownum & "$" & 6 & ":" & rownum & "$" & 6 xlWs.Cells(rownum, 7) = rsSales.Fields("KGsLastYr") xlWs.Cells(rownum, 8) = rsSales.Fields("KgsCurrYr") xlWs.Cells(rownum, 9) = rsSales.Fields("SalesCurrYr") xlWs.Cells(rownum, 10) = rsSales.Fields("SalesLastYr") xlWs.Cells(rownum, 11) = rsSales.Fields("marginCurrYr") xlWs.Cells(rownum, 12) = rsSales.Fields("MarginLastYr") rownum = rownum + 1 rsSales.MoveNext Wend Any suggestions? Also, if anyone specializes in this sort of thing (Access to Excel automation), I might need to farm this out. Thanks in advance. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jim.Hale at FleetPride.com Fri Mar 17 10:47:11 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Fri, 17 Mar 2006 10:47:11 -0600 Subject: [AccessD] Export to Excel via VBA, Naming Cells Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDACD@corp-es01.fleetpride.com> One slick way to do this is to use dynamic ranges from inside Excel. See http://www.ozgrid.com/Excel/DynamicRanges.htm Basically, using formulas to name the ranges will allow them to expand as you add data. HTH Jim Hale -----Original Message----- From: Lawrence Mrazek [mailto:lmrazek at lcm-res.com] Sent: Friday, March 17, 2006 10:37 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Export to Excel via VBA, Naming Cells Hi: I'm working on a fairly complex routine that exports sales data from Access into Excel. Basically, the Excel report will have multiple worksheets, each containing a salesman's summary sales data (about 15-20 salesmen), plus one worksheet with company totals. The client wants all calculations to happen in Excel, and since I can't predict where the data will end up in Excel, I can't really hard code any formulas that refer to the sales data. I haven't had any trouble creating the worksheets/exporting the raw data via a VBA routine, but I'm stuck on the calculation front. Can I dynamically name cells/ranges as build the Excel report? I I'd like to be able to use named ranges for these calculations, as I'll need to refer to them to build my totals, but have been having a bit of trouble getting them to work. I'd like to be able to assign the names as I build the spreadsheet, but I'm not quite "getting" the syntax of the naming convention or something. I've added a sample below: While Not rsSales.EOF xlWs.Cells(rownum, 1) = rsSales.Fields("SalesRP") xlWs.Cells(rownum, 2) = rsSales.Fields("salesrepName") xlWs.Cells(rownum, 3) = rsSales.Fields("ProductGroup") xlWs.Cells(rownum, 4) = rsSales.Fields("Item") xlWs.Cells(rownum, 5) = rsSales.Fields("itemdescription") xlWs.Cells(rownum, 6) = rsSales.Fields("month") RangeName = rsSales.Fields("SalesRP") & rsSales.Fields("item") & rsSales.Fields("month") CellLocation = rownum & 6 & ":" & rownum & 6 ' Just testing to see if I can get the naming working. xlWb.Names.Add Name:=RangeName, RefersTo:=CellLocation, Visible:=True ' "=" & "!$" & rownum & "$" & 6 & ":" & rownum & "$" & 6 xlWs.Cells(rownum, 7) = rsSales.Fields("KGsLastYr") xlWs.Cells(rownum, 8) = rsSales.Fields("KgsCurrYr") xlWs.Cells(rownum, 9) = rsSales.Fields("SalesCurrYr") xlWs.Cells(rownum, 10) = rsSales.Fields("SalesLastYr") xlWs.Cells(rownum, 11) = rsSales.Fields("marginCurrYr") xlWs.Cells(rownum, 12) = rsSales.Fields("MarginLastYr") rownum = rownum + 1 rsSales.MoveNext Wend Any suggestions? Also, if anyone specializes in this sort of thing (Access to Excel automation), I might need to farm this out. Thanks in advance. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From Gustav at cactus.dk Fri Mar 17 11:04:54 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 17 Mar 2006 18:04:54 +0100 Subject: [AccessD] Export to Excel via VBA, Naming Cells Message-ID: Hi Larry Yes, a 'dynamic named range' is every bit as much a 'named range' as a static one; the only difference is that instead of the Refers To formula looking like: =Sheet1!$A$1:$D$100 it looks more like: =OFFSET(Sheet1!$A$1,0,0,COUNTA(Sheet1!$A:$A),4) or some other formula whose result is a range. However, you cannot link to a dynamic range as a table in Access as Excel needs to be open to get the coordinates of the range. But via code you can do that calculation in many other ways and then create a static named range. /gustav >>> lmrazek at lcm-res.com 17-03-2006 17:37:27 >>> Hi: I'm working on a fairly complex routine that exports sales data from Access into Excel. Basically, the Excel report will have multiple worksheets, each containing a salesman's summary sales data (about 15-20 salesmen), plus one worksheet with company totals. The client wants all calculations to happen in Excel, and since I can't predict where the data will end up in Excel, I can't really hard code any formulas that refer to the sales data. I haven't had any trouble creating the worksheets/exporting the raw data via a VBA routine, but I'm stuck on the calculation front. Can I dynamically name cells/ranges as build the Excel report? I I'd like to be able to use named ranges for these calculations, as I'll need to refer to them to build my totals, but have been having a bit of trouble getting them to work. I'd like to be able to assign the names as I build the spreadsheet, but I'm not quite "getting" the syntax of the naming convention or something. I've added a sample below: While Not rsSales.EOF xlWs.Cells(rownum, 1) = rsSales.Fields("SalesRP") xlWs.Cells(rownum, 2) = rsSales.Fields("salesrepName") xlWs.Cells(rownum, 3) = rsSales.Fields("ProductGroup") xlWs.Cells(rownum, 4) = rsSales.Fields("Item") xlWs.Cells(rownum, 5) = rsSales.Fields("itemdescription") xlWs.Cells(rownum, 6) = rsSales.Fields("month") RangeName = rsSales.Fields("SalesRP") & rsSales.Fields("item") & rsSales.Fields("month") CellLocation = rownum & 6 & ":" & rownum & 6 ' Just testing to see if I can get the naming working. xlWb.Names.Add Name:=RangeName, RefersTo:=CellLocation, Visible:=True ' "=" & "!$" & rownum & "$" & 6 & ":" & rownum & "$" & 6 xlWs.Cells(rownum, 7) = rsSales.Fields("KGsLastYr") xlWs.Cells(rownum, 8) = rsSales.Fields("KgsCurrYr") xlWs.Cells(rownum, 9) = rsSales.Fields("SalesCurrYr") xlWs.Cells(rownum, 10) = rsSales.Fields("SalesLastYr") xlWs.Cells(rownum, 11) = rsSales.Fields("marginCurrYr") xlWs.Cells(rownum, 12) = rsSales.Fields("MarginLastYr") rownum = rownum + 1 rsSales.MoveNext Wend Any suggestions? Also, if anyone specializes in this sort of thing (Access to Excel automation), I might need to farm this out. Thanks in advance. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 From bchacc at san.rr.com Fri Mar 17 11:14:12 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Fri, 17 Mar 2006 09:14:12 -0800 Subject: [AccessD] KeyDown Problem In-Reply-To: References: Message-ID: <441AEE64.60909@san.rr.com> Once again, I find that I am not losing my mind. (Or have company anyway) Rocky Charlotte Foust wrote: > I have, and it drove me crazy! When strange things start occurring, I > immediately do a compile. The thing that's making me nuts now is, after > installing Office 2003 but keeping Access 2002, this has become even > more frequent. Error messages will pop up that occur deep down in the > stack but they present an obtuse message that is less than useless and I > have to step through layers of code to find the line that blows up. > > > Charlotte Foust > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin > - Beach Access Software > Sent: Friday, March 17, 2006 6:16 AM > To: Stuart McLachlan; Access Developers discussion and problem solving > Subject: Re: [AccessD] KeyDown Problem > > Stuart: > > Thanks. That would be the global solution. > > Had another weird problem occur - one of my events stopped working > altogether. It was a click event. Other events continued to work, this > one just wouldn't. Eventually I traced it down to a compile error in an > unrelated module - it was in another form's code! Once I had a clean > compile, the click event worked. Any compile error and this event > stopped. Although other events continued to work correctly. > > Ever seen this behavior before? > > Regards, > > Rocky > > > Stuart McLachlan wrote: > >> On 16 Mar 2006 at 5:58, Rocky Smolin - Beach Access Software wrote: >> >> >> >>> Stuart: >>> >>> Thanks for having a look at this. (You might have to relink the back >>> > > >>> end tables.) >>> >>> Login as Curly - password curly. >>> >>> The tabbed form and KeyDown routine are in the Orders form off the >>> Main Menu. The tabbed form IS full of sub-forms. Someone suggested >>> that might be causing problems. >>> >>> >>> >> Yes, that's it. Once you tab to another page, the subform gets the >> focus and that subform doesn't have KeyPreview on. You will need to >> set keypreview on for all the subforms. Then call a generic procedure >> > in the keydown to shift focus back to where you want it. > >> >> >> > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From jwcolby at ColbyConsulting.com Fri Mar 17 11:21:46 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Fri, 17 Mar 2006 12:21:46 -0500 Subject: [AccessD] KeyDown Problem In-Reply-To: Message-ID: <006e01c649e7$458bca20$647aa8c0@ColbyM6805> Ahhh, but Office 2006 is coming any day now, and that will fix ALL of our problems. BTW, I have an opportunity only for list members. Send me $10,000 and I will invest it and return you 1 MILLION dollars in a month, GUARANTEED. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Friday, March 17, 2006 11:28 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] KeyDown Problem I have, and it drove me crazy! When strange things start occurring, I immediately do a compile. The thing that's making me nuts now is, after installing Office 2003 but keeping Access 2002, this has become even more frequent. Error messages will pop up that occur deep down in the stack but they present an obtuse message that is less than useless and I have to step through layers of code to find the line that blows up. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Friday, March 17, 2006 6:16 AM To: Stuart McLachlan; Access Developers discussion and problem solving Subject: Re: [AccessD] KeyDown Problem Stuart: Thanks. That would be the global solution. Had another weird problem occur - one of my events stopped working altogether. It was a click event. Other events continued to work, this one just wouldn't. Eventually I traced it down to a compile error in an unrelated module - it was in another form's code! Once I had a clean compile, the click event worked. Any compile error and this event stopped. Although other events continued to work correctly. Ever seen this behavior before? Regards, Rocky From cfoust at infostatsystems.com Fri Mar 17 11:25:47 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 17 Mar 2006 09:25:47 -0800 Subject: [AccessD] KeyDown Problem Message-ID: Well, it IS Friday, so we can all go nuts together! LOL Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Friday, March 17, 2006 9:14 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] KeyDown Problem Once again, I find that I am not losing my mind. (Or have company anyway) Rocky Charlotte Foust wrote: > I have, and it drove me crazy! When strange things start occurring, I > immediately do a compile. The thing that's making me nuts now is, > after installing Office 2003 but keeping Access 2002, this has become > even more frequent. Error messages will pop up that occur deep down > in the stack but they present an obtuse message that is less than > useless and I have to step through layers of code to find the line that blows up. > > > Charlotte Foust > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky > Smolin > - Beach Access Software > Sent: Friday, March 17, 2006 6:16 AM > To: Stuart McLachlan; Access Developers discussion and problem solving > Subject: Re: [AccessD] KeyDown Problem > > Stuart: > > Thanks. That would be the global solution. > > Had another weird problem occur - one of my events stopped working > altogether. It was a click event. Other events continued to work, > this one just wouldn't. Eventually I traced it down to a compile > error in an unrelated module - it was in another form's code! Once I > had a clean compile, the click event worked. Any compile error and > this event stopped. Although other events continued to work correctly. > > Ever seen this behavior before? > > Regards, > > Rocky > > > Stuart McLachlan wrote: > >> On 16 Mar 2006 at 5:58, Rocky Smolin - Beach Access Software wrote: >> >> >> >>> Stuart: >>> >>> Thanks for having a look at this. (You might have to relink the >>> back >>> > > >>> end tables.) >>> >>> Login as Curly - password curly. >>> >>> The tabbed form and KeyDown routine are in the Orders form off the >>> Main Menu. The tabbed form IS full of sub-forms. Someone suggested >>> that might be causing problems. >>> >>> >>> >> Yes, that's it. Once you tab to another page, the subform gets the >> focus and that subform doesn't have KeyPreview on. You will need to >> set keypreview on for all the subforms. Then call a generic procedure >> > in the keydown to shift focus back to where you want it. > >> >> >> > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Fri Mar 17 11:47:59 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Fri, 17 Mar 2006 20:47:59 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant> <004601c64932$45f25660$6501a8c0@Nant> Message-ID: <000801c649ea$ef906370$6501a8c0@Nant> Hi All, New version ob subject tests is available at http://smsconsulting.spb.ru/download/tests/a2dds.htm Currently there is a weird problem when running in "usual binding mode" with MS Access backend and no any data updates - GPF http://smsconsulting.spb.ru/download/tests/gpf.jpg. It would be very useful if somebody approved/disapproved this problem by running the tests on their PC. Thank you. Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Thursday, March 16, 2006 10:42 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > There is newer version of subject test available at > http://smsconsulting.spb.ru/download/tests/a2dds.htm > > If you will have some time when your compute will be free over weekend > please run it. > > I will try to consistently enlarge/improve this test set. > > Some users report it runs OK, e.g.: > > <<< > Connection = Provider=SQLOLEDB.1; > Connection Timeout = 5; > Server=\SQLEXPRESS; > Database=Northwind; > Integrated Security = SSPI; > > Test successfully finished. > Backend: MS SQL > Cycles to pass: 2500 > Cycles passed: 2500 > Forms opened: 12500 > Start time: 3/15/2006 5:03:45 PM > End time: 3/15/2006 6:11:13 PM >>>> > > It (latest version) currently gives me trouble for MS Access 2003 backend > after about 2000+ cycles: > > <<< > ADODB Bound Forms Crash Test v.1.9 [16-MAR-06] > > Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 3011 - The Microsoft Jet > database engine could not find the object ''. Make sure the object exists > and that you spell its name and the path name correctly. > > Backend: MS Access > Binding: ADODB > Cycles to pass: 2300 > Cycles passed: 2012 > Forms opened: 10059 > Start time: 16.03.2006 20:25:57 > End time: 16.03.2006 22:07:35 > > Object statistics: > ClassName = CTestForm, Created = 6, Disposed = 6 > ClassName = CFormDataset, Created = 71639, Disposed = 71639 >>>> > > It would be useful to have more statistics to find stable workarounds > and/or > define the set of environments where this test doesn't run OK. > > Thank you in advance for any feedback. > Shamil <<< tail skipped >>> From jwcolby at ColbyConsulting.com Fri Mar 17 11:57:54 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Fri, 17 Mar 2006 12:57:54 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <000801c649ea$ef906370$6501a8c0@Nant> Message-ID: <007301c649ec$5225b430$647aa8c0@ColbyM6805> I would like to look at this over the weekend. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Friday, March 17, 2006 12:48 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Hi All, New version ob subject tests is available at http://smsconsulting.spb.ru/download/tests/a2dds.htm Currently there is a weird problem when running in "usual binding mode" with MS Access backend and no any data updates - GPF http://smsconsulting.spb.ru/download/tests/gpf.jpg. It would be very useful if somebody approved/disapproved this problem by running the tests on their PC. Thank you. Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Thursday, March 16, 2006 10:42 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > There is newer version of subject test available at > http://smsconsulting.spb.ru/download/tests/a2dds.htm > > If you will have some time when your compute will be free over weekend > please run it. > > I will try to consistently enlarge/improve this test set. > > Some users report it runs OK, e.g.: > > <<< > Connection = Provider=SQLOLEDB.1; > Connection Timeout = 5; > Server=\SQLEXPRESS; > Database=Northwind; > Integrated Security = SSPI; > > Test successfully finished. > Backend: MS SQL > Cycles to pass: 2500 > Cycles passed: 2500 > Forms opened: 12500 > Start time: 3/15/2006 5:03:45 PM > End time: 3/15/2006 6:11:13 PM >>>> > > It (latest version) currently gives me trouble for MS Access 2003 backend > after about 2000+ cycles: > > <<< > ADODB Bound Forms Crash Test v.1.9 [16-MAR-06] > > Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 3011 - The Microsoft Jet > database engine could not find the object ''. Make sure the object exists > and that you spell its name and the path name correctly. > > Backend: MS Access > Binding: ADODB > Cycles to pass: 2300 > Cycles passed: 2012 > Forms opened: 10059 > Start time: 16.03.2006 20:25:57 > End time: 16.03.2006 22:07:35 > > Object statistics: > ClassName = CTestForm, Created = 6, Disposed = 6 > ClassName = CFormDataset, Created = 71639, Disposed = 71639 >>>> > > It would be useful to have more statistics to find stable workarounds > and/or > define the set of environments where this test doesn't run OK. > > Thank you in advance for any feedback. > Shamil <<< tail skipped >>> -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bchacc at san.rr.com Fri Mar 17 11:59:15 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Fri, 17 Mar 2006 09:59:15 -0800 Subject: [AccessD] KeyDown Problem In-Reply-To: References: Message-ID: <441AF8F3.3030603@san.rr.com> It just happened again. I'm beginning to think there's a setting or something not set correctly. I copied an existing subform, made some mods to the new one (since it was similar to the old one) and dropped it onto a tab form. A double click event in a text box on the tab form but NOT in the sub form refused to fire. Went to code. Compiled. Clean! Eventually I figured out that I had forgotten to delete all the code behind sub form when I copied the old sub form to the new one. The new one was referencing controls on the old sub form which weren't on the new one. But no compile error. Deleted all the code behind the new sub form and everything worked. But the compile was clean. And yes I do have OPTION EXPLICIT in every page of code I write. Any ideas what's causing this? Regards, Rocky Charlotte Foust wrote: > Well, it IS Friday, so we can all go nuts together! LOL > > > Charlotte > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin > - Beach Access Software > Sent: Friday, March 17, 2006 9:14 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] KeyDown Problem > > Once again, I find that I am not losing my mind. (Or have company > anyway) > > Rocky > > > Charlotte Foust wrote: > >> I have, and it drove me crazy! When strange things start occurring, I >> > > >> immediately do a compile. The thing that's making me nuts now is, >> after installing Office 2003 but keeping Access 2002, this has become >> even more frequent. Error messages will pop up that occur deep down >> in the stack but they present an obtuse message that is less than >> useless and I have to step through layers of code to find the line >> > that blows up. > >> Charlotte Foust >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky >> Smolin >> - Beach Access Software >> Sent: Friday, March 17, 2006 6:16 AM >> To: Stuart McLachlan; Access Developers discussion and problem solving >> Subject: Re: [AccessD] KeyDown Problem >> >> Stuart: >> >> Thanks. That would be the global solution. >> >> Had another weird problem occur - one of my events stopped working >> altogether. It was a click event. Other events continued to work, >> this one just wouldn't. Eventually I traced it down to a compile >> error in an unrelated module - it was in another form's code! Once I >> had a clean compile, the click event worked. Any compile error and >> this event stopped. Although other events continued to work >> > correctly. > >> Ever seen this behavior before? >> >> Regards, >> >> Rocky >> >> >> Stuart McLachlan wrote: >> >> >>> On 16 Mar 2006 at 5:58, Rocky Smolin - Beach Access Software wrote: >>> >>> >>> >>> >>>> Stuart: >>>> >>>> Thanks for having a look at this. (You might have to relink the >>>> back >>>> >>>> >> >> >>>> end tables.) >>>> >>>> Login as Curly - password curly. >>>> >>>> The tabbed form and KeyDown routine are in the Orders form off the >>>> Main Menu. The tabbed form IS full of sub-forms. Someone suggested >>>> > > >>>> that might be causing problems. >>>> >>>> >>>> >>>> >>> Yes, that's it. Once you tab to another page, the subform gets the >>> focus and that subform doesn't have KeyPreview on. You will need to >>> set keypreview on for all the subforms. Then call a generic procedure >>> >>> >> in the keydown to shift focus back to where you want it. >> >> >>> >>> >>> >>> >> -- >> Rocky Smolin >> Beach Access Software >> 858-259-4334 >> www.e-z-mrp.com >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> >> > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From cfoust at infostatsystems.com Fri Mar 17 12:15:20 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 17 Mar 2006 10:15:20 -0800 Subject: [AccessD] KeyDown Problem Message-ID: The nearest I've been able to figure is that some of the recent updates have affected compiler. It is completely maddening, but not nearly as much as the similar behavior in VS 2005! :oS Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Friday, March 17, 2006 9:59 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] KeyDown Problem It just happened again. I'm beginning to think there's a setting or something not set correctly. I copied an existing subform, made some mods to the new one (since it was similar to the old one) and dropped it onto a tab form. A double click event in a text box on the tab form but NOT in the sub form refused to fire. Went to code. Compiled. Clean! Eventually I figured out that I had forgotten to delete all the code behind sub form when I copied the old sub form to the new one. The new one was referencing controls on the old sub form which weren't on the new one. But no compile error. Deleted all the code behind the new sub form and everything worked. But the compile was clean. And yes I do have OPTION EXPLICIT in every page of code I write. Any ideas what's causing this? Regards, Rocky Charlotte Foust wrote: > Well, it IS Friday, so we can all go nuts together! LOL > > > Charlotte > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky > Smolin > - Beach Access Software > Sent: Friday, March 17, 2006 9:14 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] KeyDown Problem > > Once again, I find that I am not losing my mind. (Or have company > anyway) > > Rocky > > > Charlotte Foust wrote: > >> I have, and it drove me crazy! When strange things start occurring, >> I >> > > >> immediately do a compile. The thing that's making me nuts now is, >> after installing Office 2003 but keeping Access 2002, this has become >> even more frequent. Error messages will pop up that occur deep down >> in the stack but they present an obtuse message that is less than >> useless and I have to step through layers of code to find the line >> > that blows up. > >> Charlotte Foust >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky >> Smolin >> - Beach Access Software >> Sent: Friday, March 17, 2006 6:16 AM >> To: Stuart McLachlan; Access Developers discussion and problem >> solving >> Subject: Re: [AccessD] KeyDown Problem >> >> Stuart: >> >> Thanks. That would be the global solution. >> >> Had another weird problem occur - one of my events stopped working >> altogether. It was a click event. Other events continued to work, >> this one just wouldn't. Eventually I traced it down to a compile >> error in an unrelated module - it was in another form's code! Once I >> had a clean compile, the click event worked. Any compile error and >> this event stopped. Although other events continued to work >> > correctly. > >> Ever seen this behavior before? >> >> Regards, >> >> Rocky >> >> >> Stuart McLachlan wrote: >> >> >>> On 16 Mar 2006 at 5:58, Rocky Smolin - Beach Access Software wrote: >>> >>> >>> >>> >>>> Stuart: >>>> >>>> Thanks for having a look at this. (You might have to relink the >>>> back >>>> >>>> >> >> >>>> end tables.) >>>> >>>> Login as Curly - password curly. >>>> >>>> The tabbed form and KeyDown routine are in the Orders form off the >>>> Main Menu. The tabbed form IS full of sub-forms. Someone >>>> suggested >>>> > > >>>> that might be causing problems. >>>> >>>> >>>> >>>> >>> Yes, that's it. Once you tab to another page, the subform gets the >>> focus and that subform doesn't have KeyPreview on. You will need to >>> set keypreview on for all the subforms. Then call a generic >>> procedure >>> >>> >> in the keydown to shift focus back to where you want it. >> >> >>> >>> >>> >>> >> -- >> Rocky Smolin >> Beach Access Software >> 858-259-4334 >> www.e-z-mrp.com >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> >> > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Fri Mar 17 12:34:43 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Fri, 17 Mar 2006 21:34:43 +0300 Subject: [AccessD] KeyDown Problem References: <441AF8F3.3030603@san.rr.com> Message-ID: <003101c649f1$76fb1430$6501a8c0@Nant> > Any ideas what's causing this? Rocky, These are probably "VBA blues" - when you work for a long time with a (large) program database something "gets stuck" inside VBA forms'/reports'/standard/class modules. Usual solution is to create a new program database and to import everything from the old(current) one into it. Please keep old program database in archives after this transition. Shamil ----- Original Message ----- From: "Rocky Smolin - Beach Access Software" To: "Access Developers discussion and problem solving" Sent: Friday, March 17, 2006 8:59 PM Subject: Re: [AccessD] KeyDown Problem > It just happened again. I'm beginning to think there's a setting or > something not set correctly. > > I copied an existing subform, made some mods to the new one (since it > was similar to the old one) and dropped it onto a tab form. A double > click event in a text box on the tab form but NOT in the sub form > refused to fire. Went to code. Compiled. Clean! > > Eventually I figured out that I had forgotten to delete all the code > behind sub form when I copied the old sub form to the new one. The new > one was referencing controls on the old sub form which weren't on the > new one. But no compile error. > > Deleted all the code behind the new sub form and everything worked. But > the compile was clean. And yes I do have OPTION EXPLICIT in every page > of code I write. > > Any ideas what's causing this? > > Regards, > > Rocky > > > Charlotte Foust wrote: >> Well, it IS Friday, so we can all go nuts together! LOL >> >> >> Charlotte >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin >> - Beach Access Software >> Sent: Friday, March 17, 2006 9:14 AM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] KeyDown Problem >> >> Once again, I find that I am not losing my mind. (Or have company >> anyway) >> >> Rocky >> >> >> Charlotte Foust wrote: >> >>> I have, and it drove me crazy! When strange things start occurring, I >>> >> >> >>> immediately do a compile. The thing that's making me nuts now is, >>> after installing Office 2003 but keeping Access 2002, this has become >>> even more frequent. Error messages will pop up that occur deep down >>> in the stack but they present an obtuse message that is less than >>> useless and I have to step through layers of code to find the line >>> >> that blows up. >> >>> Charlotte Foust >>> >>> -----Original Message----- >>> From: accessd-bounces at databaseadvisors.com >>> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky >>> Smolin >>> - Beach Access Software >>> Sent: Friday, March 17, 2006 6:16 AM >>> To: Stuart McLachlan; Access Developers discussion and problem solving >>> Subject: Re: [AccessD] KeyDown Problem >>> >>> Stuart: >>> >>> Thanks. That would be the global solution. >>> >>> Had another weird problem occur - one of my events stopped working >>> altogether. It was a click event. Other events continued to work, >>> this one just wouldn't. Eventually I traced it down to a compile >>> error in an unrelated module - it was in another form's code! Once I >>> had a clean compile, the click event worked. Any compile error and >>> this event stopped. Although other events continued to work >>> >> correctly. >> >>> Ever seen this behavior before? >>> >>> Regards, >>> >>> Rocky >>> >>> >>> Stuart McLachlan wrote: >>> >>> >>>> On 16 Mar 2006 at 5:58, Rocky Smolin - Beach Access Software wrote: >>>> >>>> >>>> >>>> >>>>> Stuart: >>>>> >>>>> Thanks for having a look at this. (You might have to relink the >>>>> back >>>>> >>>>> >>> >>> >>>>> end tables.) >>>>> >>>>> Login as Curly - password curly. >>>>> >>>>> The tabbed form and KeyDown routine are in the Orders form off the >>>>> Main Menu. The tabbed form IS full of sub-forms. Someone suggested >>>>> >> >> >>>>> that might be causing problems. >>>>> >>>>> >>>>> >>>>> >>>> Yes, that's it. Once you tab to another page, the subform gets the >>>> focus and that subform doesn't have KeyPreview on. You will need to >>>> set keypreview on for all the subforms. Then call a generic procedure >>>> >>>> >>> in the keydown to shift focus back to where you want it. >>> >>> >>>> >>>> >>>> >>>> >>> -- >>> Rocky Smolin >>> Beach Access Software >>> 858-259-4334 >>> www.e-z-mrp.com >>> >>> -- >>> AccessD mailing list >>> AccessD at databaseadvisors.com >>> http://databaseadvisors.com/mailman/listinfo/accessd >>> Website: http://www.databaseadvisors.com >>> >>> >> >> -- >> Rocky Smolin >> Beach Access Software >> 858-259-4334 >> www.e-z-mrp.com >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From lmrazek at lcm-res.com Fri Mar 17 12:31:38 2006 From: lmrazek at lcm-res.com (Lawrence Mrazek) Date: Fri, 17 Mar 2006 12:31:38 -0600 Subject: [AccessD] Export to Excel via VBA, Naming Cells In-Reply-To: Message-ID: <027101c649f1$07876ea0$036fa8c0@hplaptop> Thanks Gustav & Jim: I guess I'm just having trouble with the syntax of creating a named range from VBA. For example, using my code (below), how would I assign a name? Right now, the names are getting added to the sheet, but the references to the cells are messed up. Something is not working when I set the CellLocation variable ... While Not rsSales.EOF xlWs.Cells(rownum, 1) = rsSales.Fields("SalesRep") xlWs.Cells(rownum, 6) = rsSales.Fields("month") xlWs.Cells(rownum, 7) = rsSales.Fields("KGsLastYr") RangeName = rsSales.Fields("SalesRep") & rsSales.Fields("itemtype") & rsSales.Fields("month") CellLocation = "'" & WrkSheetName & "'" & "!$" & "f" & "$" & rownum xlWb.Names.Add Name:=RangeName, RefersTo:=CellLocation, Visible:=True ' rownum = rownum + 1 rsSales.MoveNext Wend Thanks! Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Friday, March 17, 2006 11:05 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Export to Excel via VBA, Naming Cells Hi Larry Yes, a 'dynamic named range' is every bit as much a 'named range' as a static one; the only difference is that instead of the Refers To formula looking like: =Sheet1!$A$1:$D$100 it looks more like: =OFFSET(Sheet1!$A$1,0,0,COUNTA(Sheet1!$A:$A),4) or some other formula whose result is a range. However, you cannot link to a dynamic range as a table in Access as Excel needs to be open to get the coordinates of the range. But via code you can do that calculation in many other ways and then create a static named range. /gustav >>> lmrazek at lcm-res.com 17-03-2006 17:37:27 >>> Hi: I'm working on a fairly complex routine that exports sales data from Access into Excel. Basically, the Excel report will have multiple worksheets, each containing a salesman's summary sales data (about 15-20 salesmen), plus one worksheet with company totals. The client wants all calculations to happen in Excel, and since I can't predict where the data will end up in Excel, I can't really hard code any formulas that refer to the sales data. I haven't had any trouble creating the worksheets/exporting the raw data via a VBA routine, but I'm stuck on the calculation front. Can I dynamically name cells/ranges as build the Excel report? I I'd like to be able to use named ranges for these calculations, as I'll need to refer to them to build my totals, but have been having a bit of trouble getting them to work. I'd like to be able to assign the names as I build the spreadsheet, but I'm not quite "getting" the syntax of the naming convention or something. I've added a sample below: While Not rsSales.EOF xlWs.Cells(rownum, 1) = rsSales.Fields("SalesRP") xlWs.Cells(rownum, 2) = rsSales.Fields("salesrepName") xlWs.Cells(rownum, 3) = rsSales.Fields("ProductGroup") xlWs.Cells(rownum, 4) = rsSales.Fields("Item") xlWs.Cells(rownum, 5) = rsSales.Fields("itemdescription") xlWs.Cells(rownum, 6) = rsSales.Fields("month") RangeName = rsSales.Fields("SalesRP") & rsSales.Fields("item") & rsSales.Fields("month") CellLocation = rownum & 6 & ":" & rownum & 6 ' Just testing to see if I can get the naming working. xlWb.Names.Add Name:=RangeName, RefersTo:=CellLocation, Visible:=True ' "=" & "!$" & rownum & "$" & 6 & ":" & rownum & "$" & 6 xlWs.Cells(rownum, 7) = rsSales.Fields("KGsLastYr") xlWs.Cells(rownum, 8) = rsSales.Fields("KgsCurrYr") xlWs.Cells(rownum, 9) = rsSales.Fields("SalesCurrYr") xlWs.Cells(rownum, 10) = rsSales.Fields("SalesLastYr") xlWs.Cells(rownum, 11) = rsSales.Fields("marginCurrYr") xlWs.Cells(rownum, 12) = rsSales.Fields("MarginLastYr") rownum = rownum + 1 rsSales.MoveNext Wend Any suggestions? Also, if anyone specializes in this sort of thing (Access to Excel automation), I might need to farm this out. Thanks in advance. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From prodevmg at yahoo.com Fri Mar 17 13:03:01 2006 From: prodevmg at yahoo.com (Lonnie Johnson) Date: Fri, 17 Mar 2006 11:03:01 -0800 (PST) Subject: [AccessD] How do I query Active Directory? Message-ID: <20060317190301.94458.qmail@web33104.mail.mud.yahoo.com> Does anyone have code or a model of a procedure that will allow me to query members of the Active Directory? May God bless you beyond your imagination! Lonnie Johnson ProDev, Professional Development of MS Access Databases Visit me at ==> http://www.prodev.us --------------------------------- Yahoo! Travel Find great deals to the top 10 hottest destinations! From ehughes at grtusa.com Fri Mar 17 13:51:49 2006 From: ehughes at grtusa.com (Erin Hughes) Date: Fri, 17 Mar 2006 14:51:49 -0500 Subject: [AccessD] Creating Tables from Queries A00 Message-ID: I am very new to Access, in fact I am in my third week of an intermediate course, and I am creating a database that stores information about wells and elevations. Once the information is in the database I would like to be able to access certain information to put into an ArchView program. From what I understand, you can only bring tables into ArchVeiw and I don't necessarily need all of the information I have stored to be brought in, so I need to figure out a way to make a query into a table for such purposes. If you have a suggestion please let me know. Thanks, Erin Hughes From bheid at appdevgrp.com Fri Mar 17 13:54:02 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Fri, 17 Mar 2006 14:54:02 -0500 Subject: [AccessD] Single vs. double issue... Message-ID: <916187228923D311A6FE00A0CC3FAA30D3511C@ADGSERVER> Hey, I always thought that the main difference between a single and a double was that the single had 7 digits and the double had 15 digits of precision AFTER the decimal point. Normally, I store decimal values as double. But for some reason, this particular field was set to single. Our client found an issue with that field today. They had entered 666,656,666 into the field. When you look at the table, it is 666,656,600. As a test, I changed the field to double, entered 666,656,666, and saved it. The value stuck. Then I changed it to single, got the smaller field size warning, and saved it. When I looked at the table, the value was 666,656,600. So, I think the issue is that I misunderstood what the precision meant in the single vs. double declaration. I wanted to be sure that this was the issue before I just blindly convert them to doubles. Am I correct? Thanks, Bobby From martyconnelly at shaw.ca Fri Mar 17 14:10:29 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Fri, 17 Mar 2006 12:10:29 -0800 Subject: [AccessD] How do I query Active Directory? References: <20060317190301.94458.qmail@web33104.mail.mud.yahoo.com> Message-ID: <441B17B5.3020901@shaw.ca> You could try code samples like this. Most of this type of code using LDAP, ADSI and WMI is written in VBScript but is easily modifiable into VBA. Just define the objects and variants. Look around this site with 100's of sample vbscripts http://www.activexperts.com/activmonitor/windowsmanagement/scripts/activedirectory/computer/#ListAllComputer.htm Sub testnames() 'List All Computer Accounts in Active Directory 'Returns the name and location for all the computer accounts in Active Directory. Const ADS_SCOPE_SUBTREE = 2 Dim objConnection As Object Dim objCommand As Object Dim objrecordset As Object 'points at domain fabrikam.com Set objConnection = CreateObject("ADODB.Connection") Set objCommand = CreateObject("ADODB.Command") objConnection.Provider = "ADsDSOObject" objConnection.Open "Active Directory Provider" Set objCommand.ActiveConnection = objConnection 'note sample domain below is fabrikam.com objCommand.CommandText = _ "Select Name, Location from 'LDAP://DC=fabrikam,DC=com' " _ & "Where objectClass='computer'" objCommand.Properties("Page Size") = 1000 objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE Set objrecordset = objCommand.Execute objrecordset.MoveFirst Do Until objrecordset.EOF Debug.Print "Computer Name: " & objrecordset.Fields("Name").Value Debug.Print "Location: " & objrecordset.Fields("Location").Value objrecordset.MoveNext Loop Set objrecordset = Nothing Set objConnection = Nothing Set objCommand = Nothing End Sub Sub test() ' You can get the creation date for each account from Active 'Directory. Every AD object has a WhenCreated and WhenChanged 'attribute. You can dump these attributes into a flat file using 'the LDIFDE utility, or you can dump them into a comma-delimited 'file using CSVDE (both utilities come with Windows 2000). 'Here 's the syntax to dump the two attributes for the user 'objects in an OU called Phoenix in a domain called Company.com 'to the console for viewing (the entire entry should typed as a 'single line): ' ldifde -d ou=phoenix,dc=company,dc=com -l whencreated, ' whenchanged -p onelevel -r "(ObjectCategory=user)" ' -f con 'If you wanted to save the dump to a file, change the "-f" switch 'from "con" to a file name. 'The last logon timestamp uses this format: YYYYMMDDHHMMSS, with 'the hour shown in Universal Coordinated Time. A time stamp of '20040115182937.0Z corresponds to Jan 15 2004 18:29:37 UCT. 'USRSTAT is slow, and the report you get has to be merged with 'the LDIFDE dump. So, I put together a script that searches for 'user objects at each domain controller, then lists the local 'logon time and the creation time. The user logon timestamp 'requires conversion from a long integer. I borrowed the 'conversion code comes from Richard L. Mueller '( http://www.rlmueller.net/Programs ). Richard's full script 'also takes the local time zone from the Registry and converts 'the time from UCT to local time. Nifty. 'Establish ADO Constants Const ADS_CHASE_REFERRALS_NEVER = &O0 Const ADS_CHASE_REFERRALS_SUBORDINATE = &O20 Const ADS_CHASE_REFERRALS_EXTERNAL = &O40 Const ADS_CHASE_REFERRALS_ALWAYS = &O60 Const ADS_SCOPE_BASE = 0 Const ADS_SCOPE_ONELEVEL = 1 Const ADS_SCOPE_SUBTREE = 2 Dim RootDSE As Object Dim domainDN As Object Dim Connection As Object Dim dc As Object Dim dcList As Object Dim rs As ADODB.Recordset Dim adoLastLogon As Object Dim logondate As Object Dim longdate As Object Dim longDateHigh As Long Dim longDateLow As Long Dim oNet As Object Set oNet = CreateObject("Wscript.Network") Debug.Print oNet.UserName 'Get Distinguished Name for local domain 'Set RootDSE = GetObject("LDAP://RootDSE") 'Set RootDSE = GetObject("LDAP://MARTIN") Set RootDSE = GetObject("LDAP://marty") domainDN = RootDSE.Get("DefaultNamingContext") 'Initialize ADO connection Set Connection = CreateObject("ADODB.Connection") Connection.Provider = "ADsDSOObject" Connection.Open Set Command = CreateObject("ADODB.Command") Set Command.ActiveConnection = Connection Command.Properties("Page Size") = 1000 Command.Properties("Timeout") = 30 Command.Properties("searchscope") = ADS_SCOPE_SUBTREE Command.Properties("Chase referrals") = ADS_CHASE_REFERRALS_NEVER Command.Properties("Cache Results") = False 'Get list of domain controllers for the domain Set dcList = GetObject("LDAP://ou=domain controllers," & _ domainDN) 'Walk each domain controller for logons For Each dc In dcList Debug.Print String(40, "=") Debug.Print "Logon dates at " & dc.DNSHostName Command.CommandText = "SELECT name,lastlogon," & _ "whencreated,whenchanged FROM " & _ "'LDAP://" & dc.DNSHostName & "/" & _ domainDN & "' WHERE objectcategory = 'user'" Set rs = Command.Execute Do Until rs.EOF adoLastLogon = rs.Fields("lastlogon") On Error Resume Next Err.Clear Set longdate = adoLastLogon If Err.Number <> 0 Then Err.Clear logondate = "No Local Logon" Else longDateHigh = longdate.HighPart longDateLow = longdate.LowPart If (longDateLow = 0) And (longDateHigh = 0) Then logondate = "No Local Logon" Else If longDateLow < 0 Then longDateHigh = longDateHigh + 1 logondate = #1/1/1601# + (((longDateHigh * (2 ^ 32)) _ + longDateLow) / 600000000 / 1440) End If End If Debug.Print "User Name: " & rs.Fields("name") Debug.Print " Last logon: " & logondate Debug.Print " Object Created: " & rs.Fields("WhenCreated") Debug.Print " Object Modified: " & rs.Fields("WhenChanged") rs.MoveNext Loop 'Debug.Print vbNL Next ' WScript.Quit() 'As you mentioned, Zev, Windows Server 2003 has an additional 'attribute called LastLogonTimestamp that replicates to every 'domain controller once you shift to a Windows Server 2003 'functional level. You can rewrite this script to search for 'the contents of LastLogonTimestamp on any domain controller. End Sub Lonnie Johnson wrote: >Does anyone have code or a model of a procedure that will allow me to query members of the Active Directory? > > >May God bless you beyond your imagination! >Lonnie Johnson >ProDev, Professional Development of MS Access Databases >Visit me at ==> http://www.prodev.us > > > > > > > > > > > > >--------------------------------- >Yahoo! Travel > Find great deals to the top 10 hottest destinations! > > -- Marty Connelly Victoria, B.C. Canada From Lambert.Heenan at AIG.com Fri Mar 17 14:17:28 2006 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Fri, 17 Mar 2006 14:17:28 -0600 Subject: [AccessD] Single vs. double issue... Message-ID: <1D7828CDB8350747AFE9D69E0E90DA1F1EE08D7C@xlivmbx21.aig.com> The difference between Single and Double is not just the number of decimal places, but also the range of values to the left of the decimal point. A Single can store -3.402823E38 to -1.401298E-45 for negative values and from 1.401298E-45 to 3.402823E38 for positive values. A Double can store -1.79769313486231E308 to -4.94065645841247E-324 for negative values and from 4.94065645841247E-324 to 1.79769313486232E308 for positive values. That's the official word. I just tested what you report and can confirm that singles in a table are doing this very strange 'rounding'. It also happened when you use Single type variables in code. It makes no sense at all to me as 666,656,666 is only ~6.66E8, well within the supposed range of a Single. So at first blush this is a VERY SERIOUS bug in the Single data type!!!!!!! Anyone care to ring the bell at M$? Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Friday, March 17, 2006 2:54 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Single vs. double issue... Hey, I always thought that the main difference between a single and a double was that the single had 7 digits and the double had 15 digits of precision AFTER the decimal point. Normally, I store decimal values as double. But for some reason, this particular field was set to single. Our client found an issue with that field today. They had entered 666,656,666 into the field. When you look at the table, it is 666,656,600. As a test, I changed the field to double, entered 666,656,666, and saved it. The value stuck. Then I changed it to single, got the smaller field size warning, and saved it. When I looked at the table, the value was 666,656,600. So, I think the issue is that I misunderstood what the precision meant in the single vs. double declaration. I wanted to be sure that this was the issue before I just blindly convert them to doubles. Am I correct? Thanks, Bobby -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jim.Hale at FleetPride.com Fri Mar 17 14:50:17 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Fri, 17 Mar 2006 14:50:17 -0600 Subject: [AccessD] Export to Excel via VBA, Naming Cells Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDAD2@corp-es01.fleetpride.com> This works: ActiveWorkbook.Names.Add Name:="test1", RefersTo:="=Sheet1!$a$1:$b$3" Are you missing a : after the f? Jim Hale -----Original Message----- From: Lawrence Mrazek [mailto:lmrazek at lcm-res.com] Sent: Friday, March 17, 2006 12:32 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Export to Excel via VBA, Naming Cells Thanks Gustav & Jim: I guess I'm just having trouble with the syntax of creating a named range from VBA. For example, using my code (below), how would I assign a name? Right now, the names are getting added to the sheet, but the references to the cells are messed up. Something is not working when I set the CellLocation variable ... While Not rsSales.EOF xlWs.Cells(rownum, 1) = rsSales.Fields("SalesRep") xlWs.Cells(rownum, 6) = rsSales.Fields("month") xlWs.Cells(rownum, 7) = rsSales.Fields("KGsLastYr") RangeName = rsSales.Fields("SalesRep") & rsSales.Fields("itemtype") & rsSales.Fields("month") CellLocation = "'" & WrkSheetName & "'" & "!$" & "f" & "$" & rownum xlWb.Names.Add Name:=RangeName, RefersTo:=CellLocation, Visible:=True ' rownum = rownum + 1 rsSales.MoveNext Wend Thanks! Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Friday, March 17, 2006 11:05 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Export to Excel via VBA, Naming Cells Hi Larry Yes, a 'dynamic named range' is every bit as much a 'named range' as a static one; the only difference is that instead of the Refers To formula looking like: =Sheet1!$A$1:$D$100 it looks more like: =OFFSET(Sheet1!$A$1,0,0,COUNTA(Sheet1!$A:$A),4) or some other formula whose result is a range. However, you cannot link to a dynamic range as a table in Access as Excel needs to be open to get the coordinates of the range. But via code you can do that calculation in many other ways and then create a static named range. /gustav >>> lmrazek at lcm-res.com 17-03-2006 17:37:27 >>> *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From lmrazek at lcm-res.com Fri Mar 17 14:50:56 2006 From: lmrazek at lcm-res.com (Lawrence Mrazek) Date: Fri, 17 Mar 2006 14:50:56 -0600 Subject: [AccessD] Export to Excel via VBA, Naming Cells In-Reply-To: <027101c649f1$07876ea0$036fa8c0@hplaptop> Message-ID: <02ad01c64a04$7d3aadc0$036fa8c0@hplaptop> Solved my syntax issue: The following worked to assign a name to single cell RangeName = rsSales.Fields("SalesRep") & rsSales.Fields("itemtype") & rsSales.Fields("month") CellLocation = "=" & WrkSheetName & "!$" & "f" & "$" & rownum xlWb.Names.Add Name:=RangeName, RefersTo:=CellLocation, Visible:=True Now comes the fun part ... Adding calculations to the mix. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Lawrence Mrazek Sent: Friday, March 17, 2006 12:32 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Export to Excel via VBA, Naming Cells Thanks Gustav & Jim: I guess I'm just having trouble with the syntax of creating a named range from VBA. For example, using my code (below), how would I assign a name? Right now, the names are getting added to the sheet, but the references to the cells are messed up. Something is not working when I set the CellLocation variable ... While Not rsSales.EOF xlWs.Cells(rownum, 1) = rsSales.Fields("SalesRep") xlWs.Cells(rownum, 6) = rsSales.Fields("month") xlWs.Cells(rownum, 7) = rsSales.Fields("KGsLastYr") RangeName = rsSales.Fields("SalesRep") & rsSales.Fields("itemtype") & rsSales.Fields("month") CellLocation = "'" & WrkSheetName & "'" & "!$" & "f" & "$" & rownum xlWb.Names.Add Name:=RangeName, RefersTo:=CellLocation, Visible:=True ' rownum = rownum + 1 rsSales.MoveNext Wend Thanks! Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Friday, March 17, 2006 11:05 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Export to Excel via VBA, Naming Cells Hi Larry Yes, a 'dynamic named range' is every bit as much a 'named range' as a static one; the only difference is that instead of the Refers To formula looking like: =Sheet1!$A$1:$D$100 it looks more like: =OFFSET(Sheet1!$A$1,0,0,COUNTA(Sheet1!$A:$A),4) or some other formula whose result is a range. However, you cannot link to a dynamic range as a table in Access as Excel needs to be open to get the coordinates of the range. But via code you can do that calculation in many other ways and then create a static named range. /gustav >>> lmrazek at lcm-res.com 17-03-2006 17:37:27 >>> Hi: I'm working on a fairly complex routine that exports sales data from Access into Excel. Basically, the Excel report will have multiple worksheets, each containing a salesman's summary sales data (about 15-20 salesmen), plus one worksheet with company totals. The client wants all calculations to happen in Excel, and since I can't predict where the data will end up in Excel, I can't really hard code any formulas that refer to the sales data. I haven't had any trouble creating the worksheets/exporting the raw data via a VBA routine, but I'm stuck on the calculation front. Can I dynamically name cells/ranges as build the Excel report? I I'd like to be able to use named ranges for these calculations, as I'll need to refer to them to build my totals, but have been having a bit of trouble getting them to work. I'd like to be able to assign the names as I build the spreadsheet, but I'm not quite "getting" the syntax of the naming convention or something. I've added a sample below: While Not rsSales.EOF xlWs.Cells(rownum, 1) = rsSales.Fields("SalesRP") xlWs.Cells(rownum, 2) = rsSales.Fields("salesrepName") xlWs.Cells(rownum, 3) = rsSales.Fields("ProductGroup") xlWs.Cells(rownum, 4) = rsSales.Fields("Item") xlWs.Cells(rownum, 5) = rsSales.Fields("itemdescription") xlWs.Cells(rownum, 6) = rsSales.Fields("month") RangeName = rsSales.Fields("SalesRP") & rsSales.Fields("item") & rsSales.Fields("month") CellLocation = rownum & 6 & ":" & rownum & 6 ' Just testing to see if I can get the naming working. xlWb.Names.Add Name:=RangeName, RefersTo:=CellLocation, Visible:=True ' "=" & "!$" & rownum & "$" & 6 & ":" & rownum & "$" & 6 xlWs.Cells(rownum, 7) = rsSales.Fields("KGsLastYr") xlWs.Cells(rownum, 8) = rsSales.Fields("KgsCurrYr") xlWs.Cells(rownum, 9) = rsSales.Fields("SalesCurrYr") xlWs.Cells(rownum, 10) = rsSales.Fields("SalesLastYr") xlWs.Cells(rownum, 11) = rsSales.Fields("marginCurrYr") xlWs.Cells(rownum, 12) = rsSales.Fields("MarginLastYr") rownum = rownum + 1 rsSales.MoveNext Wend Any suggestions? Also, if anyone specializes in this sort of thing (Access to Excel automation), I might need to farm this out. Thanks in advance. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jim.Hale at FleetPride.com Fri Mar 17 15:06:10 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Fri, 17 Mar 2006 15:06:10 -0600 Subject: [AccessD] KeyDown Problem Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDAD4@corp-es01.fleetpride.com> I often run into a problem where, after many changes, Access just refuses to "see" the changed code and only runs the previous old code. It goes on coffee break/strike or something. I have to decompile and import into a new container. Very frustrating. I wouldn't be surprised if the two problems are similar. No solutions, just commiseration since misery loves company. Jim Hale -----Original Message----- From: Rocky Smolin - Beach Access Software [mailto:bchacc at san.rr.com] Sent: Friday, March 17, 2006 11:59 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] KeyDown Problem It just happened again. I'm beginning to think there's a setting or something not set correctly. I copied an existing subform, made some mods to the new one (since it was similar to the old one) and dropped it onto a tab form. A double click event in a text box on the tab form but NOT in the sub form refused to fire. Went to code. Compiled. Clean! Eventually I figured out that I had forgotten to delete all the code behind sub form when I copied the old sub form to the new one. The new one was referencing controls on the old sub form which weren't on the new one. But no compile error. Deleted all the code behind the new sub form and everything worked. But the compile was clean. And yes I do have OPTION EXPLICIT in every page of code I write. Any ideas what's causing this? Regards, Rocky -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From DWUTKA at marlow.com Fri Mar 17 15:15:45 2006 From: DWUTKA at marlow.com (DWUTKA at marlow.com) Date: Fri, 17 Mar 2006 15:15:45 -0600 Subject: [AccessD] How do I query Active Directory? Message-ID: <17724746D360394AA3BFE5B8D40A9C1BD976@main2.marlow.com> Sent you something off list for this. Drew -----Original Message----- From: Lonnie Johnson [mailto:prodevmg at yahoo.com] Sent: Friday, March 17, 2006 1:03 PM To: AccessD solving' Subject: [AccessD] How do I query Active Directory? Does anyone have code or a model of a procedure that will allow me to query members of the Active Directory? May God bless you beyond your imagination! Lonnie Johnson ProDev, Professional Development of MS Access Databases Visit me at ==> http://www.prodev.us --------------------------------- Yahoo! Travel Find great deals to the top 10 hottest destinations! -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jim.Hale at FleetPride.com Fri Mar 17 15:27:21 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Fri, 17 Mar 2006 15:27:21 -0600 Subject: [AccessD] Export to Excel via VBA, Naming Cells Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDAD5@corp-es01.fleetpride.com> Maybe this will give you some ideas. Starting at the top of the range e5 it finds the last number in the column and places a sum formula underneath. Jim Hale Function test() Dim rng As Range, i As Integer, strAddressBottom As String, strAddressTop As String Set rng = Range("e5") strAddressTop = rng.Address For i = 1 To 25 If rng.Offset(i, 0).Value = "" Then strAddressBottom = rng.Offset(i - 1, 0).Cells.Address rng.Offset(i, 0).Formula = "=sum(" & strAddressTop & ":" & strAddressBottom & ")" GoTo The_End End If Next The_End: Set rng = Nothing End Function -----Original Message----- From: Lawrence Mrazek [mailto:lmrazek at lcm-res.com] Sent: Friday, March 17, 2006 2:51 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Export to Excel via VBA, Naming Cells Solved my syntax issue: The following worked to assign a name to single cell RangeName = rsSales.Fields("SalesRep") & rsSales.Fields("itemtype") & rsSales.Fields("month") CellLocation = "=" & WrkSheetName & "!$" & "f" & "$" & rownum xlWb.Names.Add Name:=RangeName, RefersTo:=CellLocation, Visible:=True Now comes the fun part ... Adding calculations to the mix. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314-432-5886 fx. 314-432-3304 *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From djkr at msn.com Fri Mar 17 16:13:36 2006 From: djkr at msn.com (DJK(John) Robinson) Date: Fri, 17 Mar 2006 22:13:36 -0000 Subject: [AccessD] Single vs. double issue... In-Reply-To: <1D7828CDB8350747AFE9D69E0E90DA1F1EE08D7C@xlivmbx21.aig.com> Message-ID: Nothing to do with MS - time to ring *your* bell, guys! :-) A single has 32 bits: 24 for the mantissa, 8 for the exponent. The exponent determines the *range* of values you can have, while the mantissa determines the *precision*, and each has effectively to use one bit for its sign. So, with 23 bits of mantissa to provide the precision, how many significant decimal digits does that represent? About 7. (Strictly speaking, a little less than 7, since 2**23 = 8,388,608, not 9,999,999.) So a 32-bit floating-point number (a 'single') CANNOT represent 666,656,666 in all its *nine*-significant-digit glory. Nothing to do with Access, nor even MS: just math. (The 24/8 split could in theory be chosen differently, but 24/8 is the IEEE standard, widely used.) The Access documentation alludes to this degree of precision in the number of significant digits it shows in its definition of single: just 7. Incidentally, Bobby, it's not decimal *values* you're storing, just values - which you may think of in decimal representation. There's a serious question here: are your actual values here integers, or do they have a fractional part? If integers, then of course you should not be using floating-point at all, both for efficiency of storage and speed of calculation. The 64 bits of a double are split 52/11. HTH John -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert Sent: 17 March 2006 20:17 To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Single vs. double issue... The difference between Single and Double is not just the number of decimal places, but also the range of values to the left of the decimal point. A Single can store -3.402823E38 to -1.401298E-45 for negative values and from 1.401298E-45 to 3.402823E38 for positive values. A Double can store -1.79769313486231E308 to -4.94065645841247E-324 for negative values and from 4.94065645841247E-324 to 1.79769313486232E308 for positive values. That's the official word. I just tested what you report and can confirm that singles in a table are doing this very strange 'rounding'. It also happened when you use Single type variables in code. It makes no sense at all to me as 666,656,666 is only ~6.66E8, well within the supposed range of a Single. So at first blush this is a VERY SERIOUS bug in the Single data type!!!!!!! Anyone care to ring the bell at M$? Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Friday, March 17, 2006 2:54 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Single vs. double issue... Hey, I always thought that the main difference between a single and a double was that the single had 7 digits and the double had 15 digits of precision AFTER the decimal point. Normally, I store decimal values as double. But for some reason, this particular field was set to single. Our client found an issue with that field today. They had entered 666,656,666 into the field. When you look at the table, it is 666,656,600. As a test, I changed the field to double, entered 666,656,666, and saved it. The value stuck. Then I changed it to single, got the smaller field size warning, and saved it. When I looked at the table, the value was 666,656,600. So, I think the issue is that I misunderstood what the precision meant in the single vs. double declaration. I wanted to be sure that this was the issue before I just blindly convert them to doubles. Am I correct? Thanks, Bobby -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Lambert.Heenan at AIG.com Fri Mar 17 16:29:07 2006 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Fri, 17 Mar 2006 17:29:07 -0500 Subject: [AccessD] Is this a bug in Access' implementation of the Single data ty pe? Message-ID: <1D7828CDB8350747AFE9D69E0E90DA1F1EE08DF1@xlivmbx21.aig.com> But according to the on-line help (which I quoted) a Single can hold numbers in the range "-3.402823E38 to -1.401298E-45 for negative values and from 1.401298E-45 to 3.402823E38 for positive values". And this range is confirmed by http://msdn2.microsoft.com/en-us/library/xay7978z(VS.80).aspx PowerBasic uses a similar (but different) range http://www.powerbasic.com/support/help/pbcc/single-precision_floating-point_ (!).htm ... Cogitate...cogitate... Ah, I see. So you only get 7 significant decimal digits in value, and when you enter more (up to the limit of x^38) it will be rounded. Thanks. Lambert -----Original Message----- From: Microsoft Access Database Discussion List [mailto:ACCESS-L at PEACH.EASE.LSOFT.COM] On Behalf Of ysiebeneck at UPS.COM Sent: Friday, March 17, 2006 4:58 PM To: ACCESS-L at PEACH.EASE.LSOFT.COM Subject: Re: Is this a bug in Access' implementation of the Single data type? This is the standard and expected behavior of a single data type. To be more precise, a single-precision 32-bit data type. 666,656,666 = 6.66656666E+08. However, the single data type can only store 6.666566E+08, which is 666,656,600 - which is what was observed. You have to remember to account for the precision part of the single-precision data type. Single data types are stored in the 0.000000E+-00 format, with 8 of the bits storing the exponent, one the sign, and the remaining 23 bits the fraction. If you want a more in depth explanation, do a google search with "IEEE 32-bit single-precision floating-point". Yon-Paul -----Original Message----- From: Microsoft Access Database Discussion List [mailto:ACCESS-L at PEACH.EASE.LSOFT.COM] On Behalf Of Heenan, Lambert Sent: Friday, March 17, 2006 2:01 PM To: ACCESS-L at PEACH.EASE.LSOFT.COM Subject: Is this a bug in Access' implementation of the Single data type? I've forwarded this message from the AccessD list for your information and comments. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert Sent: Friday, March 17, 2006 3:17 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Single vs. double issue... The difference between Single and Double is not just the number of decimal places, but also the range of values to the left of the decimal point. A Single can store -3.402823E38 to -1.401298E-45 for negative values and from 1.401298E-45 to 3.402823E38 for positive values. A Double can store -1.79769313486231E308 to -4.94065645841247E-324 for negative values and from 4.94065645841247E-324 to 1.79769313486232E308 for positive values. That's the official word. I just tested what you report and can confirm that singles in a table are doing this very strange 'rounding'. It also happened when you use Single type variables in code. It makes no sense at all to me as 666,656,666 is only ~6.66E8, well within the supposed range of a Single. So at first blush this is a VERY SERIOUS bug in the Single data type!!!!!!! Anyone care to ring the bell at M$? Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Friday, March 17, 2006 2:54 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Single vs. double issue... Hey, I always thought that the main difference between a single and a double was that the single had 7 digits and the double had 15 digits of precision AFTER the decimal point. Normally, I store decimal values as double. But for some reason, this particular field was set to single. Our client found an issue with that field today. They had entered 666,656,666 into the field. When you look at the table, it is 666,656,600. As a test, I changed the field to double, entered 666,656,666, and saved it. The value stuck. Then I changed it to single, got the smaller field size warning, and saved it. When I looked at the table, the value was 666,656,600. So, I think the issue is that I misunderstood what the precision meant in the single vs. double declaration. I wanted to be sure that this was the issue before I just blindly convert them to doubles. Am I correct? Thanks, Bobby -------------------------------------------------------------------------- The ACCESS-L list is hosted on a Windows(R) 2000 Server running L-Soft international's LISTSERV(R) software. For subscription/signoff info and archives, see http://peach.ease.lsoft.com/archives/access-l.html . COPYRIGHT INFO: http://peach.ease.lsoft.com/scripts/wa.exe?SHOWTPL=COPYRIGHT&L=ACCESS-L From karenr7 at oz.net Fri Mar 17 16:55:54 2006 From: karenr7 at oz.net (Karen Rosenstiel) Date: Fri, 17 Mar 2006 14:55:54 -0800 Subject: [AccessD] Key Preview Problem In-Reply-To: <00f801c64919$657f7620$0302a8c0@pennp4> Message-ID: <000501c64a15$f2b896f0$6401a8c0@bigmama> Disabled people DO use alt keys, folks that may have a tremor that interferes with mousing or who may not have full use of their hands/arms. Regards, Karen Rosenstiel Seattle WA USA -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Penn White Sent: Thursday, March 16, 2006 8:48 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Key Preview Problem I share your mouseophobia and my users didn't request it either. I'm not even sure they'll even use the Alt keys and have wondered several times why I was doing this but I do it anyway. Because of the subforms, I don't think Lambert's suggestion will work though. I think I'd still have to put code in each subform that gets the focus but I'll give it a try just to be complete. BTW, I was wrong about putting the KeyDown code in the Form_KeyDown event handler. It works fine. I'd forgotten that I had more than one subform on the tabbed page and was coding the wrong subform...oh well. In any event, I've had a great time exploring this with everyone and have learned a lot. Thanks to all. Penn -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From martyconnelly at shaw.ca Fri Mar 17 18:40:48 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Fri, 17 Mar 2006 16:40:48 -0800 Subject: [AccessD] Single vs. double issue... References: Message-ID: <441B5710.4040008@shaw.ca> MS adheres to IEEE 745 Standard (well mostly) for floating point numbers. In some older compilers they used BCD arithmetic or MSF binary storage format. There is a formula for number of significant digits obtainable from the mantissa size It is log base 10 (2^ bits in mantissa) or using vba calculation with natural logs Debug.Print (Log(2 ^ 52) / Log(10)) ' double word number of significant digits 52 bit mantissa = 15 real*4 sign bit, 8-bit exponent, 23-bit mantissa real*8 sign bit, 11-bit exponent, 52-bit mantissa real*10 sign bit, 15-bit exponent, 64-bit mantissa http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dv_vccelng4/html/elconTypedouble.asp DJK(John) Robinson wrote: >Nothing to do with MS - time to ring *your* bell, guys! :-) > >A single has 32 bits: 24 for the mantissa, 8 for the exponent. The exponent >determines the *range* of values you can have, while the mantissa determines >the *precision*, and each has effectively to use one bit for its sign. So, >with 23 bits of mantissa to provide the precision, how many significant >decimal digits does that represent? About 7. (Strictly speaking, a little >less than 7, since 2**23 = 8,388,608, not 9,999,999.) > >So a 32-bit floating-point number (a 'single') CANNOT represent 666,656,666 >in all its *nine*-significant-digit glory. Nothing to do with Access, nor >even MS: just math. (The 24/8 split could in theory be chosen differently, >but 24/8 is the IEEE standard, widely used.) > >The Access documentation alludes to this degree of precision in the number >of significant digits it shows in its definition of single: just 7. > >Incidentally, Bobby, it's not decimal *values* you're storing, just values - >which you may think of in decimal representation. There's a serious >question here: are your actual values here integers, or do they have a >fractional part? If integers, then of course you should not be using >floating-point at all, both for efficiency of storage and speed of >calculation. > >The 64 bits of a double are split 52/11. > >HTH >John > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert >Sent: 17 March 2006 20:17 >To: 'Access Developers discussion and problem solving' >Subject: Re: [AccessD] Single vs. double issue... > > >The difference between Single and Double is not just the number of decimal >places, but also the range of values to the left of the decimal point. > >A Single can store -3.402823E38 to -1.401298E-45 for negative values and >from 1.401298E-45 to 3.402823E38 for positive values. > >A Double can store -1.79769313486231E308 to -4.94065645841247E-324 for >negative values and from 4.94065645841247E-324 to 1.79769313486232E308 for >positive values. > >That's the official word. I just tested what you report and can confirm that >singles in a table are doing this very strange 'rounding'. It also happened >when you use Single type variables in code. It makes no sense at all to me >as 666,656,666 is only ~6.66E8, well within the supposed range of a Single. > >So at first blush this is a VERY SERIOUS bug in the Single data type!!!!!!! > >Anyone care to ring the bell at M$? > >Lambert > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid >Sent: Friday, March 17, 2006 2:54 PM >To: 'Access Developers discussion and problem solving' >Subject: [AccessD] Single vs. double issue... > > >Hey, > >I always thought that the main difference between a single and a double was >that the single had 7 digits and the double had 15 digits of precision >AFTER the decimal point. > >Normally, I store decimal values as double. But for some reason, this >particular field was set to single. Our client found an issue with that >field today. They had entered 666,656,666 into the field. When you look at >the table, it is 666,656,600. > >As a test, I changed the field to double, entered 666,656,666, and saved it. >The value stuck. Then I changed it to single, got the smaller field size >warning, and saved it. When I looked at the table, the value was >666,656,600. > >So, I think the issue is that I misunderstood what the precision meant in >the single vs. double declaration. I wanted to be sure that this was the >issue before I just blindly convert them to doubles. Am I correct? > >Thanks, >Bobby > > > -- Marty Connelly Victoria, B.C. Canada From darsant at gmail.com Fri Mar 17 19:02:32 2006 From: darsant at gmail.com (Josh McFarlane) Date: Fri, 17 Mar 2006 19:02:32 -0600 Subject: [AccessD] Single vs. double issue... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D3511C@ADGSERVER> References: <916187228923D311A6FE00A0CC3FAA30D3511C@ADGSERVER> Message-ID: <53c8e05a0603171702r5a143880ged80ef5c9b2baabe@mail.gmail.com> On 3/17/06, Bobby Heid wrote: > I always thought that the main difference between a single and a double was > that the single had 7 digits and the double had 15 digits of precision > AFTER the decimal point. > > So, I think the issue is that I misunderstood what the precision meant in > the single vs. double declaration. I wanted to be sure that this was the > issue before I just blindly convert them to doubles. Am I correct? Think significant figures and it might make more sense: Basically 666,656,666 can also be represnted as 6.66656666 x 10^9, which is typically how it's stored in floating point numbers (two parts, the first part, and then the exponent), so you end up with 6.666566 x 10 ^ 9 as you saw. Due to the number of bytes used to store the value, certain amounts will be rounded to the nearest possible precision value, as you can only represent so much data in the space provided for the first part. You've really got two seperate bounds on the numbers: One for the exponent on the base 10, and the one for the multiple. For single it's about 7 significant digits as you said. When you go up to a double, you get a bigger range for both values. So, while it may be misleading to say that singles have a range form some number to negative some number, there are various values in between that cannot be accurately represented by the single / double precision because you have two many significant figures. -- Josh McFarlane "Peace cannot be kept by force. It can only be achieved by understanding." -Albert Einstein From wdhindman at bellsouth.net Fri Mar 17 19:17:11 2006 From: wdhindman at bellsouth.net (William Hindman) Date: Fri, 17 Mar 2006 20:17:11 -0500 Subject: [AccessD] Paradox/Sybase to Access Message-ID: <000301c64a29$af268690$6101a8c0@50NM721> ...I have a client db that I need to get the table data out of ...the normal import conversions all give a data format incorrect error ...my hex editor shows Sybase in the code with a paradox .db extension. ...should be just a single table with name address type data. ...anyone with an idea on how to go about this? William From stuart at lexacorp.com.pg Fri Mar 17 19:26:55 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Sat, 18 Mar 2006 11:26:55 +1000 Subject: [AccessD] Single vs. double issue... In-Reply-To: <53c8e05a0603171702r5a143880ged80ef5c9b2baabe@mail.gmail.com> References: <916187228923D311A6FE00A0CC3FAA30D3511C@ADGSERVER> Message-ID: <441BEE7F.11346.485254F@stuart.lexacorp.com.pg> On 17 Mar 2006 at 19:02, Josh McFarlane wrote: > > So, while it may be misleading to say that singles have a range form > some number to negative some number, there are various values in > between that cannot be accurately represented by the single / double > precision... In fact, there are an *infinite* number of values within the quoted ranges of single/double precision numbers that can't be accurately represented by those storage methods. And it's not just an Aleph-0 infinity either , it's an Aleph-1 infinity. :-) -- Stuart From lembit.dbamail at t-online.de Sat Mar 18 05:59:21 2006 From: lembit.dbamail at t-online.de (Lembit Soobik) Date: Sat, 18 Mar 2006 12:59:21 +0100 Subject: [AccessD] Creating Tables from Queries A00 References: Message-ID: <009401c64a83$65111f70$1400a8c0@v1000> Erin, use a 'make table query' Lembit ----- Original Message ----- From: "Erin Hughes" To: Sent: Friday, March 17, 2006 8:51 PM Subject: [AccessD] Creating Tables from Queries A00 >I am very new to Access, in fact I am in my third week of an > intermediate course, and I am creating a database that stores > information about wells and elevations. Once the information is in the > database I would like to be able to access certain information to put > into an ArchView program. From what I understand, you can only bring > tables into ArchVeiw and I don't necessarily need all of the information > I have stored to be brought in, so I need to figure out a way to make a > query into a table for such purposes. If you have a suggestion please > let me know. > > Thanks, > Erin Hughes > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > > -- > No virus found in this incoming message. > Checked by AVG Free Edition. > Version: 7.1.385 / Virus Database: 268.2.5/284 - Release Date: 17.03.2006 > > From erbachs at gmail.com Sat Mar 18 07:23:38 2006 From: erbachs at gmail.com (Steve Erbach) Date: Sat, 18 Mar 2006 07:23:38 -0600 Subject: [AccessD] Paradox/Sybase to Access In-Reply-To: <000301c64a29$af268690$6101a8c0@50NM721> References: <000301c64a29$af268690$6101a8c0@50NM721> Message-ID: <39cb22f30603180523p243e22dfh2065036b565905ba@mail.gmail.com> William, Does anybody there have a copy of Paradox to see if it will actually open the table? I've seen files with a .db extension that weren't Paradox tables at all. Steve Erbach On 3/17/06, William Hindman wrote: > ...I have a client db that I need to get the table data out of ...the normal > import conversions all give a data format incorrect error ...my hex editor > shows Sybase in the code with a paradox .db extension. > > ...should be just a single table with name address type data. > > ...anyone with an idea on how to go about this? > > William > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Regards, Steve Erbach Scientific Marketing Neenah, WI www.swerbach.com Security Page: www.swerbach.com/security From dwaters at usinternet.com Sat Mar 18 07:41:28 2006 From: dwaters at usinternet.com (Dan Waters) Date: Sat, 18 Mar 2006 07:41:28 -0600 Subject: [AccessD] Help Files Message-ID: <000001c64a91$a9360180$0200a8c0@danwaters> Hello to All! Does anyone create Help Files as part of your work? I'm going to be writing these, and because I've simply used Word in the past I want to take a step up and use something like a Help file. There are several applications you can buy, of varying prices, and I don't know which to go with because I haven't used them. Also, I was thinking an alternative might be to create a set of web pages (I use a little of FrontPage) and put them together as a 'site' that has Help content. Does anyone have any thoughts on this? Dan From erbachs at gmail.com Sat Mar 18 07:52:39 2006 From: erbachs at gmail.com (Steve Erbach) Date: Sat, 18 Mar 2006 07:52:39 -0600 Subject: [AccessD] Acquiring subform's subform object name Message-ID: <39cb22f30603180552s31f50417k6adb2e850b4365e3@mail.gmail.com> Dear Group, I have a form, frmMainMenu, that contains a Tab Control. The 8 tabs in the Tab Control are generically named Tab1, Tab2, etc. Each of the Tabs has one Subform Control "embedded" in it; each Subform is also generically named: Subform1, Subform2, etc. The reason for this is that frmMainMenu is set up with another Subform Control "outside" the Tab Control. This subform acts like the vertical menu in an Access database window. Once a menu item is clicked, then all the tabs change, sometimes fewer tabs visible, sometimes more, depending on which vertical menu item is selected. Anyway my problem is this: Say that Tab3's subform control, Subform3, has the form frmCustomers as the subform's Source Object. From the code within frmCustomers I would like to be able to determine the name of it's subform control "container". Me.Parent.Name gives me the name of the "master" form, frmMainMenu. I've tried all sorts of things short of enumerating the collection of controls to simply find the name of the subform control that "contains" frmCustomers. Could you give me an idea? Regards, Steve Erbach Scientific Marketing Neenah, WI http://TheTownCrank/blogspot.com Security Page: www.swerbach.com/security From bhjohnson at verizon.net Sat Mar 18 09:10:35 2006 From: bhjohnson at verizon.net (Bruce H. Johnson) Date: Sat, 18 Mar 2006 07:10:35 -0800 Subject: [AccessD] Help Files In-Reply-To: <000001c64a91$a9360180$0200a8c0@danwaters> Message-ID: <001801c64a9e$1bf224e0$6500a8c0@HALSR> I've done Help for years. You will need a Help Authoring Tool or HAT; here's a link to a comparison of the various tools: http://www.helpstuff.com/downloads/tools.pdf Depending on how your application is distributed, e.g., stand-alone, networked users etc., you would generally try to use the appropriate output type. There is: - Traditional Help, both stand-alone and context-sensitive in the form of .hlp files. - Compiled HTML Help, stand-alone and context-sensitive as .chm files - Web-based help which produces HTML pages for a central server. Each HAT tends to have its own brand of this. Most HATs will produce all three types, plus frequently printed output. You can also check out sourceforge.net (open-source); they may have something for no cost. Some HATs are Word-based, such as RoboHelp (now going by the wayside), others on Frame, and others with their own input/source methods. Most anything using .chm or web-based uses a custom input editor of some sort. Bruce H. Johnson Sylmar, CA -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Dan Waters Sent: Saturday, March 18, 2006 5:41 AM To: AccessD Subject: [AccessD] Help Files Hello to All! Does anyone create Help Files as part of your work? I'm going to be writing these, and because I've simply used Word in the past I want to take a step up and use something like a Help file. There are several applications you can buy, of varying prices, and I don't know which to go with because I haven't used them. Also, I was thinking an alternative might be to create a set of web pages (I use a little of FrontPage) and put them together as a 'site' that has Help content. Does anyone have any thoughts on this? Dan -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From john at winhaven.net Sat Mar 18 09:31:05 2006 From: john at winhaven.net (John Bartow) Date: Sat, 18 Mar 2006 09:31:05 -0600 Subject: [AccessD] Paradox/Sybase to Access In-Reply-To: <000301c64a29$af268690$6101a8c0@50NM721> Message-ID: <032601c64aa0$f92852b0$6402a8c0@ScuzzPaq> Hi William, There are many programs that use .db extension for data storage but from your description I believe you are working with an Sybase SQL Anywhere .db data file. There are ODBC drivers available. HTH John B. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of William Hindman Sent: Friday, March 17, 2006 7:17 PM To: Access Developers discussion and problem solving Subject: [AccessD] Paradox/Sybase to Access ...I have a client db that I need to get the table data out of ...the normal import conversions all give a data format incorrect error ...my hex editor shows Sybase in the code with a paradox .db extension. ...should be just a single table with name address type data. ...anyone with an idea on how to go about this? William -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Sat Mar 18 10:22:21 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Sat, 18 Mar 2006 19:22:21 +0300 Subject: [AccessD] Help Files References: <000001c64a91$a9360180$0200a8c0@danwaters> Message-ID: <004e01c64aa8$25723280$6501a8c0@Nant> Dan at all and especially moderators: I'm participating in the development of the set of original help authoring tools. Currently MS Access 2000/XP/2003, VB6 and Visual Studio 2003/2005 are supported There is a very positive feedback from several MS Access developers. Question to moderators: This is a commercial shareware tool and I do not own it - may I mention its web site here or such mentioning - a kind of advertising/promotion is forbidden here? Shamil ----- Original Message ----- From: "Dan Waters" To: "AccessD" Sent: Saturday, March 18, 2006 4:41 PM Subject: [AccessD] Help Files > Hello to All! > > Does anyone create Help Files as part of your work? I'm going to be > writing > these, and because I've simply used Word in the past I want to take a step > up and use something like a Help file. There are several applications you > can buy, of varying prices, and I don't know which to go with because I > haven't used them. > > Also, I was thinking an alternative might be to create a set of web pages > (I > use a little of FrontPage) and put them together as a 'site' that has Help > content. > > Does anyone have any thoughts on this? > > Dan > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From carbonnb at gmail.com Sat Mar 18 10:26:21 2006 From: carbonnb at gmail.com (Bryan Carbonnell) Date: Sat, 18 Mar 2006 11:26:21 -0500 Subject: [AccessD] Help Files In-Reply-To: <004e01c64aa8$25723280$6501a8c0@Nant> References: <000001c64a91$a9360180$0200a8c0@danwaters> <004e01c64aa8$25723280$6501a8c0@Nant> Message-ID: On 3/18/06, Shamil Salakhetdinov wrote: > Question to moderators: > This is a commercial shareware tool and I do not own it - may I mention its > web site here or such mentioning - a kind of advertising/promotion is > forbidden here? Yes, I don't see why not. -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" From shamil at users.mns.ru Sat Mar 18 10:46:30 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Sat, 18 Mar 2006 19:46:30 +0300 Subject: [AccessD] Acquiring subform's subform object name References: <39cb22f30603180552s31f50417k6adb2e850b4365e3@mail.gmail.com> Message-ID: <005301c64aab$83e34310$6501a8c0@Nant> Steve, Here is the code to call from subform: Dim ectl As Access.Control Dim fsub As Access.SubForm For Each ectl In Me.Parent.Controls If ectl.ControlType = acSubform Then Set fsub = ectl If Len(fsub.SourceObject) > 0 Then If Not fsub.Form Is Nothing Then If fsub.Form Is Me.Form Then MsgBox "My subform control name is " & fsub.Name, _ vbInformation + vbOKOnly End If End If End If End If Next ectl Be careful with calling this code from subform's Open or Load event, especially in the case when on main form there are several subform controls using the same form.... HTH, Shamil ----- Original Message ----- From: "Steve Erbach" To: "Access Developers discussion and problem solving" Sent: Saturday, March 18, 2006 4:52 PM Subject: [AccessD] Acquiring subform's subform object name > Dear Group, > > I have a form, frmMainMenu, that contains a Tab Control. The 8 tabs > in the Tab Control are generically named Tab1, Tab2, etc. > > Each of the Tabs has one Subform Control "embedded" in it; each > Subform is also generically named: Subform1, Subform2, etc. The > reason for this is that frmMainMenu is set up with another Subform > Control "outside" the Tab Control. This subform acts like the > vertical menu in an Access database window. Once a menu item is > clicked, then all the tabs change, sometimes fewer tabs visible, > sometimes more, depending on which vertical menu item is selected. > > Anyway my problem is this: > > Say that Tab3's subform control, Subform3, has the form frmCustomers > as the subform's Source Object. From the code within frmCustomers I > would like to be able to determine the name of it's subform control > "container". > > Me.Parent.Name gives me the name of the "master" form, frmMainMenu. > I've tried all sorts of things short of enumerating the collection of > controls to simply find the name of the subform control that > "contains" frmCustomers. > > Could you give me an idea? > > Regards, > > Steve Erbach > Scientific Marketing > Neenah, WI > http://TheTownCrank/blogspot.com > Security Page: www.swerbach.com/security > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From shamil at users.mns.ru Sat Mar 18 10:51:58 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Sat, 18 Mar 2006 19:51:58 +0300 Subject: [AccessD] Help Files References: <000001c64a91$a9360180$0200a8c0@danwaters><004e01c64aa8$25723280$6501a8c0@Nant> Message-ID: <006a01c64aac$66489160$6501a8c0@Nant> Thank you, Bryan! Here it is: http://www.htmlhelpgenerator.net/help_and_documentation_for_microsoft_access.htm Shamil ----- Original Message ----- From: "Bryan Carbonnell" To: "Access Developers discussion and problem solving" Sent: Saturday, March 18, 2006 7:26 PM Subject: Re: [AccessD] Help Files > On 3/18/06, Shamil Salakhetdinov wrote: > >> Question to moderators: >> This is a commercial shareware tool and I do not own it - may I mention >> its >> web site here or such mentioning - a kind of advertising/promotion is >> forbidden here? > > Yes, I don't see why not. > > -- > Bryan Carbonnell - carbonnb at gmail.com > Life's journey is not to arrive at the grave safely in a well > preserved body, but rather to skid in sideways, totally worn out, > shouting "What a great ride!" > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From tewald at wowway.com Sat Mar 18 12:57:34 2006 From: tewald at wowway.com (Thomas F. Ewald) Date: Sat, 18 Mar 2006 13:57:34 -0500 Subject: [AccessD] Converting from Excel to Access In-Reply-To: Message-ID: <003401c64abd$d12ab830$6401a8c0@64bit> Does anyone have a list of items to watch out for when converting a database from Excel (multiple worksheets) to Access? I can do it all right, but a checklist, some instructions, some hints, etc., could certainly be helpful. TIA, Tom Ewald -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.1.385 / Virus Database: 268.2.5/284 - Release Date: 3/17/2006 From tewald at wowway.com Sat Mar 18 12:59:53 2006 From: tewald at wowway.com (Thomas F. Ewald) Date: Sat, 18 Mar 2006 13:59:53 -0500 Subject: [AccessD] ADO and ADO.NET In-Reply-To: Message-ID: <003501c64abe$242f5040$6401a8c0@64bit> In using Access XP, how much does it matter if you use ADO or ADO.NET? I believe that ADO.NET began with XP; please let me know if I am inaccurate with that belief. If I am correct, is there much to gain by studying ADO.NET? I'm still working on learning ADO (never did learn DAO very well, I have to admit), and I'm trying to put my study time to good use. TIA, Tom Ewald -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.1.385 / Virus Database: 268.2.5/284 - Release Date: 3/17/2006 From harkinsss at bellsouth.net Sat Mar 18 13:33:44 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Sat, 18 Mar 2006 14:33:44 -0500 Subject: [AccessD] Converting from Excel to Access In-Reply-To: <003401c64abd$d12ab830$6401a8c0@64bit> Message-ID: <000001c64ac2$df5fb4a0$92b3d6d1@SUSANONE> By convert, do you mean import? The biggest gotcha I've found when importing Excel data into an Access database is data type problems. Susan H. Does anyone have a list of items to watch out for when converting a database from Excel (multiple worksheets) to Access? I can do it all right, but a checklist, some instructions, some hints, etc., could certainly be helpful. From shamil at users.mns.ru Sat Mar 18 17:23:10 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Sun, 19 Mar 2006 02:23:10 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <007301c649ec$5225b430$647aa8c0@ColbyM6805> Message-ID: <002601c64ae2$ee4bd7d0$6501a8c0@Nant> John, Be careful - it may "eat" all your weekend - better spend a few minutes every day - still a lot to do there and a very detailed testing is needed. Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Friday, March 17, 2006 8:57 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >I would like to look at this over the weekend. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Friday, March 17, 2006 12:48 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > Hi All, > > New version ob subject tests is available at > http://smsconsulting.spb.ru/download/tests/a2dds.htm > Currently there is a weird problem when running in "usual binding mode" > with > MS Access backend and no any data updates - GPF > http://smsconsulting.spb.ru/download/tests/gpf.jpg. > > It would be very useful if somebody approved/disapproved this problem by > running the tests on their PC. > > Thank you. > > Shamil > <<< tail skipped >>> From erbachs at gmail.com Sat Mar 18 17:24:43 2006 From: erbachs at gmail.com (Steve Erbach) Date: Sat, 18 Mar 2006 17:24:43 -0600 Subject: [AccessD] Acquiring subform's subform object name In-Reply-To: <005301c64aab$83e34310$6501a8c0@Nant> References: <39cb22f30603180552s31f50417k6adb2e850b4365e3@mail.gmail.com> <005301c64aab$83e34310$6501a8c0@Nant> Message-ID: <39cb22f30603181524n18316ee1qfd8a1ff3f88e0a5b@mail.gmail.com> Shamil, Interesting. When I was experimenting with this I was flabbergasted that a subform control's SourceObject could not directly tell the name of its subform control. In my case the Me.Parent.Name skipped right past the Subform, the Page, and the Tab controls to the main Form as if those three intervening "containers" weren't even there. Your code does the trick but it sure looks like a game of Blind Man's Bluff to me. Thank you very much for taking time to help me, Shamil. Steve Erbach Neenah, WI http://TheTownCrank.blogspot.com On 3/18/06, Shamil Salakhetdinov wrote: > Steve, > > Here is the code to call from subform: > > Dim ectl As Access.Control > Dim fsub As Access.SubForm > For Each ectl In Me.Parent.Controls > If ectl.ControlType = acSubform Then > Set fsub = ectl > If Len(fsub.SourceObject) > 0 Then > If Not fsub.Form Is Nothing Then > If fsub.Form Is Me.Form Then > MsgBox "My subform control name is " & fsub.Name, _ > vbInformation + vbOKOnly > End If > End If > End If > End If > Next ectl > > Be careful with calling this code from subform's Open or Load event, > especially in the case when on main form there are several subform controls > using the same form.... > > HTH, > Shamil > > ----- Original Message ----- > From: "Steve Erbach" > To: "Access Developers discussion and problem solving" > > Sent: Saturday, March 18, 2006 4:52 PM > Subject: [AccessD] Acquiring subform's subform object name > > > > Dear Group, > > > > I have a form, frmMainMenu, that contains a Tab Control. The 8 tabs > > in the Tab Control are generically named Tab1, Tab2, etc. > > > > Each of the Tabs has one Subform Control "embedded" in it; each > > Subform is also generically named: Subform1, Subform2, etc. The > > reason for this is that frmMainMenu is set up with another Subform > > Control "outside" the Tab Control. This subform acts like the > > vertical menu in an Access database window. Once a menu item is > > clicked, then all the tabs change, sometimes fewer tabs visible, > > sometimes more, depending on which vertical menu item is selected. > > > > Anyway my problem is this: > > > > Say that Tab3's subform control, Subform3, has the form frmCustomers > > as the subform's Source Object. From the code within frmCustomers I > > would like to be able to determine the name of it's subform control > > "container". > > > > Me.Parent.Name gives me the name of the "master" form, frmMainMenu. > > I've tried all sorts of things short of enumerating the collection of > > controls to simply find the name of the subform control that > > "contains" frmCustomers. > > > > Could you give me an idea? > > > > Regards, > > > > Steve Erbach From bchacc at san.rr.com Sun Mar 19 09:25:27 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Sun, 19 Mar 2006 07:25:27 -0800 Subject: [AccessD] MAny-To-May Message-ID: <441D77E7.4000805@san.rr.com> Dear List: This is a preventive maintenance application. There is a table of Jobs and a table of Equipment. Since one job can do many equipments and one equipment can be called out in many jobs there is a table that sits between them - tblJobsEquipment which has the PK from tblJobs and the PK from tblEquipment as FKs. The equipment table is relatively static. The job table changes all the time. On the form where jobs are created and maintained, the user selects the equipment from a combo box. The jobs for that equipment are then displayed in a sub-form. The problem comes when trying to create a new job. Since there's no PK yet for the job I get an error "cannot create record; join key (to the JobEquipment table) is not in the recordset. Indeed if I put a debug statement in the BeforeInsert event of the sub-form the PK of the Jobs table is still null. How does one work around this problem? MTIA Rocky -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From harkinsss at bellsouth.net Sun Mar 19 10:18:16 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Sun, 19 Mar 2006 11:18:16 -0500 Subject: [AccessD] MAny-To-May In-Reply-To: <441D77E7.4000805@san.rr.com> Message-ID: <000d01c64b70$bc740be0$ceb3d6d1@SUSANONE> Rocky, check the updateable query article. There's a rule in there about a one-to-many-to-one, or it may be many-to-one-to-many -- I don't remember. Susan H. Dear List: The problem comes when trying to create a new job. Since there's no PK yet for the job I get an error "cannot create record; join key (to the JobEquipment table) is not in the recordset. Indeed if I put a debug statement in the BeforeInsert event of the sub-form the PK of the Jobs table is still null. How does one work around this problem? From mwp.reid at qub.ac.uk Sun Mar 19 10:18:53 2006 From: mwp.reid at qub.ac.uk (Martin Reid) Date: Sun, 19 Mar 2006 16:18:53 -0000 Subject: [AccessD] MAny-To-May References: <441D77E7.4000805@san.rr.com> Message-ID: Rocky Would you not create the Job first and then the equipment required to do the job? Martin Martin WP Reid Training and Assessment Unit Riddle Hall Belfast tel: 02890 974477 ________________________________ From: accessd-bounces at databaseadvisors.com on behalf of Rocky Smolin - Beach Access Software Sent: Sun 19/03/2006 15:25 To: Access Developers discussion and problem solving Subject: [AccessD] MAny-To-May Dear List: This is a preventive maintenance application. There is a table of Jobs and a table of Equipment. Since one job can do many equipments and one equipment can be called out in many jobs there is a table that sits between them - tblJobsEquipment which has the PK from tblJobs and the PK from tblEquipment as FKs. The equipment table is relatively static. The job table changes all the time. On the form where jobs are created and maintained, the user selects the equipment from a combo box. The jobs for that equipment are then displayed in a sub-form. The problem comes when trying to create a new job. Since there's no PK yet for the job I get an error "cannot create record; join key (to the JobEquipment table) is not in the recordset. Indeed if I put a debug statement in the BeforeInsert event of the sub-form the PK of the Jobs table is still null. How does one work around this problem? MTIA Rocky -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Sun Mar 19 10:49:09 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Sun, 19 Mar 2006 19:49:09 +0300 Subject: [AccessD] MAny-To-May References: <441D77E7.4000805@san.rr.com> Message-ID: <002901c64b75$15176770$6501a8c0@Nant> > How does one work around this problem? Rocky, This works in MS Access 2003: - create join query of relation table and Jobs - use this query as the recordsource of subform - use BOTH relation table's and job table's JobId field in this subform; - make this subform a datasheet form (not necessary - just to better see test results); - open main form in normal view; - enter new job information in subform's row and save it - watch how new autonumber Ids are assigned to relation table's row and to new job row. You can now hide autonumber IDs. Shamil ----- Original Message ----- From: "Rocky Smolin - Beach Access Software" To: "Access Developers discussion and problem solving" Sent: Sunday, March 19, 2006 6:25 PM Subject: [AccessD] MAny-To-May > Dear List: > > This is a preventive maintenance application. > > There is a table of Jobs and a table of Equipment. Since one job can do > many equipments and one equipment can be called out in many jobs there > is a table that sits between them - tblJobsEquipment which has the PK > from tblJobs and the PK from tblEquipment as FKs. > > The equipment table is relatively static. The job table changes all the > time. > > On the form where jobs are created and maintained, the user selects the > equipment from a combo box. The jobs for that equipment are then > displayed in a sub-form. > > The problem comes when trying to create a new job. Since there's no PK > yet for the job I get an error "cannot create record; join key (to the > JobEquipment table) is not in the recordset. > > Indeed if I put a debug statement in the BeforeInsert event of the > sub-form the PK of the Jobs table is still null. > > How does one work around this problem? > > MTIA > > Rocky > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Sun Mar 19 10:54:52 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Sun, 19 Mar 2006 11:54:52 -0500 Subject: [AccessD] MAny-To-May In-Reply-To: <441D77E7.4000805@san.rr.com> Message-ID: <00ac01c64b75$d84bf030$647aa8c0@ColbyM6805> Make them create the job first. Make the job the main form and the equipment a subform child to jobs. Then set the equipment subform locked while on the new record of the job form. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Sunday, March 19, 2006 10:25 AM To: Access Developers discussion and problem solving Subject: [AccessD] MAny-To-May Dear List: This is a preventive maintenance application. There is a table of Jobs and a table of Equipment. Since one job can do many equipments and one equipment can be called out in many jobs there is a table that sits between them - tblJobsEquipment which has the PK from tblJobs and the PK from tblEquipment as FKs. The equipment table is relatively static. The job table changes all the time. On the form where jobs are created and maintained, the user selects the equipment from a combo box. The jobs for that equipment are then displayed in a sub-form. The problem comes when trying to create a new job. Since there's no PK yet for the job I get an error "cannot create record; join key (to the JobEquipment table) is not in the recordset. Indeed if I put a debug statement in the BeforeInsert event of the sub-form the PK of the Jobs table is still null. How does one work around this problem? MTIA Rocky -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From harkinsss at bellsouth.net Sun Mar 19 11:20:29 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Sun, 19 Mar 2006 12:20:29 -0500 Subject: [AccessD] report sorting problem Message-ID: <000001c64b79$6c7ac8f0$ceb3d6d1@SUSANONE> I have a grouped report based on the following query: SELECT tblTopics.Title, tblTopics.DateDue, tblPublishersContacts.Contact, tblPartners.LastName, tblTopics.EstimatedFee, =IIf(IsNull([LastName]),[EstimatedFee],[EstimatedFee]/2) As SplitFee FROM tblPartners INNER JOIN (tblPublishersContacts INNER JOIN tblTopics ON tblPublishersContacts.PublisherContactID = tblTopics.PublisherContactID) ON tblPartners.PartnerID = tblTopics.PartnerID WHERE (((tblTopics.DateDue) Is Not Null) AND ((tblTopics.DateSubmitted) Is Null)) ORDER BY tblTopics.DateDue UNION SELECT Title, DateDue, Contact, LastName, EstimatedFee, 0 FROM tblScheduledItems ORDER BY tblTopics.DateDue; The report is grouped on the DateDue field and I use the report's grouping properties to group by the week. When I run the query, it sorts by the DateDue values, but the grouped report loses that sort. The records group properly, I just can't get them to sort properly within the group. Any help? Susan H. From Gustav at cactus.dk Sun Mar 19 12:05:03 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Sun, 19 Mar 2006 19:05:03 +0100 Subject: [AccessD] report sorting problem Message-ID: Hi Susan Remove the sorting from the query. Add (move from the query) any sorting to the report. /gustav >>> harkinsss at bellsouth.net 19-03-2006 18:20:29 >>> I have a grouped report based on the following query: SELECT tblTopics.Title, tblTopics.DateDue, tblPublishersContacts.Contact, tblPartners.LastName, tblTopics.EstimatedFee, =IIf(IsNull([LastName]),[EstimatedFee],[EstimatedFee]/2) As SplitFee FROM tblPartners INNER JOIN (tblPublishersContacts INNER JOIN tblTopics ON tblPublishersContacts.PublisherContactID = tblTopics.PublisherContactID) ON tblPartners.PartnerID = tblTopics.PartnerID WHERE (((tblTopics.DateDue) Is Not Null) AND ((tblTopics.DateSubmitted) Is Null)) ORDER BY tblTopics.DateDue UNION SELECT Title, DateDue, Contact, LastName, EstimatedFee, 0 FROM tblScheduledItems ORDER BY tblTopics.DateDue; The report is grouped on the DateDue field and I use the report's grouping properties to group by the week. When I run the query, it sorts by the DateDue values, but the grouped report loses that sort. The records group properly, I just can't get them to sort properly within the group. Any help? Susan H. From harkinsss at bellsouth.net Sun Mar 19 12:27:08 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Sun, 19 Mar 2006 13:27:08 -0500 Subject: [AccessD] report sorting problem In-Reply-To: Message-ID: <000001c64b82$bbceed10$ceb3d6d1@SUSANONE> Hmmmmmm... Tried it and that alone didn't work. I added a second group on DateDue and that did it -- thanks Gustav. Susan H. Hi Susan Remove the sorting from the query. Add (move from the query) any sorting to the report. From tewald at wowway.com Sun Mar 19 12:50:33 2006 From: tewald at wowway.com (Thomas F. Ewald) Date: Sun, 19 Mar 2006 13:50:33 -0500 Subject: [AccessD] Converting from Excel to Access In-Reply-To: Message-ID: <000b01c64b86$00d2e580$6401a8c0@64bit> No, I mean taking a complex workbook, which should have been in Access in the first place, and recreating it as an Access database, complete with relationships, forms, reports, etc. Of course this depends on how it's been used and will be used; I was looking for a generic list of things to watch out for. Data types would be on the list, I would expect. Thanks, Tom Ewald Date: Sat, 18 Mar 2006 14:33:44 -0500 From: "Susan Harkins" Subject: Re: [AccessD] Converting from Excel to Access To: "'Access Developers discussion and problem solving'" Message-ID: <000001c64ac2$df5fb4a0$92b3d6d1 at SUSANONE> Content-Type: text/plain; charset="us-ascii" By convert, do you mean import? The biggest gotcha I've found when importing Excel data into an Access database is data type problems. Susan H. Does anyone have a list of items to watch out for when converting a database from Excel (multiple worksheets) to Access? I can do it all right, but a checklist, some instructions, some hints, etc., could certainly be helpful. -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.1.385 / Virus Database: 268.2.5/284 - Release Date: 3/17/2006 From bchacc at san.rr.com Sun Mar 19 12:57:04 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Sun, 19 Mar 2006 10:57:04 -0800 Subject: [AccessD] MAny-To-May In-Reply-To: References: <441D77E7.4000805@san.rr.com> Message-ID: <441DA980.5000701@san.rr.com> Martin: I actually had it that way - job in the header, equipment in the sub-form. But we had to change the way the jobs are created because of the way the job is actually looked at by users. You pick the equipment first now and see the list of jobs for that piece of equipment in the sub-form. Rocky Martin Reid wrote: > Rocky > > Would you not create the Job first and then the equipment required to do the job? > > Martin > > Martin WP Reid > Training and Assessment Unit > Riddle Hall > Belfast > > tel: 02890 974477 > > > ________________________________ > > From: accessd-bounces at databaseadvisors.com on behalf of Rocky Smolin - Beach Access Software > Sent: Sun 19/03/2006 15:25 > To: Access Developers discussion and problem solving > Subject: [AccessD] MAny-To-May > > > > Dear List: > > This is a preventive maintenance application. > > There is a table of Jobs and a table of Equipment. Since one job can do > many equipments and one equipment can be called out in many jobs there > is a table that sits between them - tblJobsEquipment which has the PK > from tblJobs and the PK from tblEquipment as FKs. > > The equipment table is relatively static. The job table changes all the > time. > > On the form where jobs are created and maintained, the user selects the > equipment from a combo box. The jobs for that equipment are then > displayed in a sub-form. > > The problem comes when trying to create a new job. Since there's no PK > yet for the job I get an error "cannot create record; join key (to the > JobEquipment table) is not in the recordset. > > Indeed if I put a debug statement in the BeforeInsert event of the > sub-form the PK of the Jobs table is still null. > > How does one work around this problem? > > MTIA > > Rocky > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From bchacc at san.rr.com Sun Mar 19 12:58:32 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Sun, 19 Mar 2006 10:58:32 -0800 Subject: [AccessD] MAny-To-May In-Reply-To: <00ac01c64b75$d84bf030$647aa8c0@ColbyM6805> References: <00ac01c64b75$d84bf030$647aa8c0@ColbyM6805> Message-ID: <441DA9D8.7000004@san.rr.com> John: Unfortunately, I had it that way but the the users actually look at it the other way - they want to select a piece of equipment and then see all the jobs for that piece. So I have to change the job form. Rocky John Colby wrote: > Make them create the job first. Make the job the main form and the > equipment a subform child to jobs. Then set the equipment subform locked > while on the new record of the job form. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - > Beach Access Software > Sent: Sunday, March 19, 2006 10:25 AM > To: Access Developers discussion and problem solving > Subject: [AccessD] MAny-To-May > > Dear List: > > This is a preventive maintenance application. > > There is a table of Jobs and a table of Equipment. Since one job can do many > equipments and one equipment can be called out in many jobs there is a table > that sits between them - tblJobsEquipment which has the PK from tblJobs and > the PK from tblEquipment as FKs. > > The equipment table is relatively static. The job table changes all the > time. > > On the form where jobs are created and maintained, the user selects the > equipment from a combo box. The jobs for that equipment are then displayed > in a sub-form. > > The problem comes when trying to create a new job. Since there's no PK yet > for the job I get an error "cannot create record; join key (to the > JobEquipment table) is not in the recordset. > > Indeed if I put a debug statement in the BeforeInsert event of the sub-form > the PK of the Jobs table is still null. > > How does one work around this problem? > > MTIA > > Rocky > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From bchacc at san.rr.com Sun Mar 19 13:28:09 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Sun, 19 Mar 2006 11:28:09 -0800 Subject: [AccessD] MAny-To-May In-Reply-To: <002901c64b75$15176770$6501a8c0@Nant> References: <441D77E7.4000805@san.rr.com> <002901c64b75$15176770$6501a8c0@Nant> Message-ID: <441DB0C9.60402@san.rr.com> Shamil: Beautiful! I had the join query already set up as the record source of the subform. All I needed to do was to drop the FK of the relation table into the grid, add it as an invisible field on the subform (not sure if that was really necessary) and viola! it worked. But it probably would have taken me a month to figure it out. Thank you. I think I'll take the rest of the day off now. With best regards, Rocky Shamil Salakhetdinov wrote: >> How does one work around this problem? >> > Rocky, > > This works in MS Access 2003: > > - create join query of relation table and Jobs > - use this query as the recordsource of subform > - use BOTH relation table's and job table's JobId field in this subform; > - make this subform a datasheet form (not necessary - just to better see > test results); > - open main form in normal view; > - enter new job information in subform's row and save it > - watch how new autonumber Ids are assigned to relation table's row and to > new job row. > > You can now hide autonumber IDs. > > Shamil > > ----- Original Message ----- > From: "Rocky Smolin - Beach Access Software" > To: "Access Developers discussion and problem solving" > > Sent: Sunday, March 19, 2006 6:25 PM > Subject: [AccessD] MAny-To-May > > > >> Dear List: >> >> This is a preventive maintenance application. >> >> There is a table of Jobs and a table of Equipment. Since one job can do >> many equipments and one equipment can be called out in many jobs there >> is a table that sits between them - tblJobsEquipment which has the PK >> from tblJobs and the PK from tblEquipment as FKs. >> >> The equipment table is relatively static. The job table changes all the >> time. >> >> On the form where jobs are created and maintained, the user selects the >> equipment from a combo box. The jobs for that equipment are then >> displayed in a sub-form. >> >> The problem comes when trying to create a new job. Since there's no PK >> yet for the job I get an error "cannot create record; join key (to the >> JobEquipment table) is not in the recordset. >> >> Indeed if I put a debug statement in the BeforeInsert event of the >> sub-form the PK of the Jobs table is still null. >> >> How does one work around this problem? >> >> MTIA >> >> Rocky >> >> -- >> Rocky Smolin >> Beach Access Software >> 858-259-4334 >> www.e-z-mrp.com >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From shamil at users.mns.ru Sun Mar 19 14:48:18 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Sun, 19 Mar 2006 23:48:18 +0300 Subject: [AccessD] MAny-To-May References: <441D77E7.4000805@san.rr.com> <002901c64b75$15176770$6501a8c0@Nant> <441DB0C9.60402@san.rr.com> Message-ID: <002501c64b96$76ac9fc0$6501a8c0@Nant> Rocky, This is MS Access, which does this trick. Good feature, thanks MS Access developers team! I remember when "young chicken" programmer/researcher I read an article about updatable joins and how to make a real DBMS supporting them(not easy stuff in a generic case) - just 20 years after I found that feature implemented in MS Access :) But be careful if you have any plans to upsize your app to MS SQL or other backend DBs - this trick/feature may stop working. And then the usual/standard way of first creating Job record and then using it in subform to define the link with Equipment record. I do it usually using popup form, which can be activated by double clicking on a combo-box of subform (it would be Job combobox in your case) and when the new data entered in the popup form and this form is closed then a message/call is done to subform to requery combo-box tho have new value(s) in it. > Thank you. My pleasure! > I think I'll take the rest of the day off now. Yes, that's a weekend - time to go swimming I guess there in California :) And I will go skiing tomorrow here - we have got some snow fall today - nice spring time weather, still good for everyday skiing! :) Shamil ----- Original Message ----- From: "Rocky Smolin - Beach Access Software" To: "Access Developers discussion and problem solving" Sent: Sunday, March 19, 2006 10:28 PM Subject: Re: [AccessD] MAny-To-May > Shamil: > > Beautiful! I had the join query already set up as the record source of > the subform. All I needed to do was to drop the FK of the relation > table into the grid, add it as an invisible field on the subform (not > sure if that was really necessary) and viola! it worked. But it > probably would have taken me a month to figure it out. > > Thank you. I think I'll take the rest of the day off now. > > > With best regards, > > Rocky > > > Shamil Salakhetdinov wrote: >>> How does one work around this problem? >>> >> Rocky, >> >> This works in MS Access 2003: >> >> - create join query of relation table and Jobs >> - use this query as the recordsource of subform >> - use BOTH relation table's and job table's JobId field in this subform; >> - make this subform a datasheet form (not necessary - just to better see >> test results); >> - open main form in normal view; >> - enter new job information in subform's row and save it >> - watch how new autonumber Ids are assigned to relation table's row and >> to >> new job row. >> >> You can now hide autonumber IDs. >> >> Shamil >> <<< tail skipped>>> From darrend at nimble.com.au Sun Mar 19 15:52:29 2006 From: darrend at nimble.com.au (Darren DICK) Date: Mon, 20 Mar 2006 08:52:29 +1100 Subject: [AccessD] MAny-To-May In-Reply-To: <441D77E7.4000805@san.rr.com> Message-ID: <20060319215253.GCUG24931.omta02sl.mx.bigpond.com@DENZILLAP> Hi Rocky General Rule of thumb (Biologically as well) Can't have kids without parents Get 'em to create 'the job' first then allow then to add/remove Equipment etc Maybe even 'disable' the equipment list until they have created a job HTH See ya Darren -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Monday, 20 March 2006 2:25 AM To: Access Developers discussion and problem solving Subject: [AccessD] MAny-To-May Dear List: This is a preventive maintenance application. There is a table of Jobs and a table of Equipment. Since one job can do many equipments and one equipment can be called out in many jobs there is a table that sits between them - tblJobsEquipment which has the PK from tblJobs and the PK from tblEquipment as FKs. The equipment table is relatively static. The job table changes all the time. On the form where jobs are created and maintained, the user selects the equipment from a combo box. The jobs for that equipment are then displayed in a sub-form. The problem comes when trying to create a new job. Since there's no PK yet for the job I get an error "cannot create record; join key (to the JobEquipment table) is not in the recordset. Indeed if I put a debug statement in the BeforeInsert event of the sub-form the PK of the Jobs table is still null. How does one work around this problem? MTIA Rocky -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Mon Mar 20 00:42:25 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Mon, 20 Mar 2006 01:42:25 -0500 Subject: [AccessD] Too many messages in the que Message-ID: <001a01c64be9$7429d6c0$647aa8c0@ColbyM6805> If we have a list member with an email of bill_s at web.de.. You have too many messages on the server. Someone is attempting to sign up on my web site and I am getting a delivery failure notification for this individual when I try to send him a key for his signup. John W. Colby www.ColbyConsulting.com From bheid at appdevgrp.com Mon Mar 20 06:38:31 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Mon, 20 Mar 2006 07:38:31 -0500 Subject: [AccessD] [SPAM SUSPECT] Re: Single vs. double issue... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D6B526@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D35120@ADGSERVER> Everyone, thanks for all of the information posted. John, They are not storing integers, they just happened to be using one in the example. I have changed the field to a double. Thanks again, Bobby From shamil at users.mns.ru Mon Mar 20 08:04:45 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Mon, 20 Mar 2006 17:04:45 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant><004601c64932$45f25660$6501a8c0@Nant> <000801c649ea$ef906370$6501a8c0@Nant> Message-ID: <000a01c64c27$65ddfb80$6501a8c0@Nant> Hi All, New version of the subject test released at http://smsconsulting.spb.ru/download/tests/a2dds.htm Previous one didn't work well with Customers table/form because of some "dirty" data rows in Northwind sample database. Problem fixed by workarounding these "dirty" rows' data values. I did also add RSS 1.0 feed at http://smsconsulting.spb.ru/download/tests/a2dds_rss10.xml (Code to generate this feed is in the sample database.) Test application can be executed in background as I'm doing now while writing this message. The roadmap of this test is to make it more advanced/test more features as well as make its installation, running and statistics reporting automated based on RSS/Atom and other technologies and standards... Thank you in advance for testing! Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Friday, March 17, 2006 8:47 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > New version ob subject tests is available at > http://smsconsulting.spb.ru/download/tests/a2dds.htm > Currently there is a weird problem when running in "usual binding mode" > with > MS Access backend and no any data updates - GPF > http://smsconsulting.spb.ru/download/tests/gpf.jpg. > > It would be very useful if somebody approved/disapproved this problem by > running the tests on their PC. > > Thank you. > > Shamil > <<< tail skipped >>> From Jim.Hale at FleetPride.com Mon Mar 20 09:21:53 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Mon, 20 Mar 2006 09:21:53 -0600 Subject: [AccessD] Converting from Excel to Access Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDAD7@corp-es01.fleetpride.com> Just some quick thoughts. If you are importing from an Excel table with sums be careful Excel doesn't suck in the totals as a separate garbage record. Generally I import the unnormalized tables without keys into Access first before creating all the required normalized tables with indexes and keys from inside Access. Importing the data first allows me to quickly determine if there are any issues with the data- nulls, data conversion problems, etc. If you are importing ranges make sure the ranges include all the data. You would be surprised how often this turns out to not be the case. Jim Hale -----Original Message----- From: Thomas F. Ewald [mailto:tewald at wowway.com] Sent: Sunday, March 19, 2006 12:51 PM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Converting from Excel to Access No, I mean taking a complex workbook, which should have been in Access in the first place, and recreating it as an Access database, complete with relationships, forms, reports, etc. Of course this depends on how it's been used and will be used; I was looking for a generic list of things to watch out for. Data types would be on the list, I would expect. Thanks, Tom Ewald Date: Sat, 18 Mar 2006 14:33:44 -0500 From: "Susan Harkins" Subject: Re: [AccessD] Converting from Excel to Access To: "'Access Developers discussion and problem solving'" Message-ID: <000001c64ac2$df5fb4a0$92b3d6d1 at SUSANONE> Content-Type: text/plain; charset="us-ascii" By convert, do you mean import? The biggest gotcha I've found when importing Excel data into an Access database is data type problems. Susan H. Does anyone have a list of items to watch out for when converting a database from Excel (multiple worksheets) to Access? I can do it all right, but a checklist, some instructions, some hints, etc., could certainly be helpful. -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.1.385 / Virus Database: 268.2.5/284 - Release Date: 3/17/2006 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From Jim.Hale at FleetPride.com Mon Mar 20 09:53:09 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Mon, 20 Mar 2006 09:53:09 -0600 Subject: [AccessD] Manipulating Excel Cells Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDAD8@corp-es01.fleetpride.com> look at the cell function in Excel (which you can manipulate through code) ex the formula =cell("col",D1) returns 4; =cell("row",D1) returns 1 Jim Hale -----Original Message----- From: John Colby [mailto:jwcolby at colbyconsulting.com] Sent: Wednesday, February 01, 2006 9:51 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Manipulating Excel Cells I'm baaaack. ;-) Here's the deal. I am working with a spreadsheet that has columns of systems and rows of documents. Therefore each cell represents a system-document. BTW, this was a "source" for me to build a pair of tables - tblSystem and tblDocument. I then added a field to tblDocument called SpreadsheetRow and a field to tblSystem called SpreadsheetColumn. We are tracking the receipt of these documents. The client now wants to see, back in his original spreadsheet, the "status" of a given system document using colors to express the status - white = not assigned, red = not received, yellow = partial receipt, green = received. So... I have to go "poke colors" out into the spreadsheet. I have discovered the "area" property which has a color attribute. What I need now is a translation from the column LETTERS to a column number since for some bizarre reason the columns have letter names but cells are referenced by column numbers. "Brain damaged children" as Bill Cosby would say. Does anyone have code for manipulating cells by cell(intRowNumbers, strColNames)? John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From Jim.Hale at FleetPride.com Mon Mar 20 10:14:54 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Mon, 20 Mar 2006 10:14:54 -0600 Subject: [AccessD] Manipulating Excel Cells Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDADA@corp-es01.fleetpride.com> This code was posted by Stuart McLachlan on 2/1. Is this what you were looking for? Jim Hale functions to change column numbers to name and vice versa Function ColNumToName(ColNum As Long) As String If ColNum < 27 Then ColNumToName = Chr$(ColNum + 64) Else ColNumToName = _ Chr$(Int((ColNum - 1) \ 26) + 64) _ + Chr$((ColNum - 1) Mod 26 + 65) End If End Function Function ColNameToNum(ColName As String) As Long If Len(ColName) = 1 Then ColNameToNum = Asc(UCase$(ColName)) - 64 Else ColNameToNum = 26 * (Asc(UCase$(Left$(ColName, 1))) _ - 64) + Asc(UCase$(Right$(ColName, 1))) - 64 End If End Function -----Original Message----- From: John Colby [mailto:jwcolby at colbyconsulting.com] Sent: Wednesday, February 01, 2006 9:51 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Manipulating Excel Cells I'm baaaack. ;-) Here's the deal. I am working with a spreadsheet that has columns of systems and rows of documents. Therefore each cell represents a system-document. BTW, this was a "source" for me to build a pair of tables - tblSystem and tblDocument. I then added a field to tblDocument called SpreadsheetRow and a field to tblSystem called SpreadsheetColumn. We are tracking the receipt of these documents. The client now wants to see, back in his original spreadsheet, the "status" of a given system document using colors to express the status - white = not assigned, red = not received, yellow = partial receipt, green = received. So... I have to go "poke colors" out into the spreadsheet. I have discovered the "area" property which has a color attribute. What I need now is a translation from the column LETTERS to a column number since for some bizarre reason the columns have letter names but cells are referenced by column numbers. "Brain damaged children" as Bill Cosby would say. Does anyone have code for manipulating cells by cell(intRowNumbers, strColNames)? John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From bheygood at abestsystems.com Mon Mar 20 11:26:11 2006 From: bheygood at abestsystems.com (Bob Heygood) Date: Mon, 20 Mar 2006 09:26:11 -0800 Subject: [AccessD] numbers in DLookup In-Reply-To: <001a01c64be9$7429d6c0$647aa8c0@ColbyM6805> Message-ID: Hello to the list! I am trying to use a DLookup function in some code. It uses two string variable values for the Expr and the Domain arguments. And a third string variable for the part of the Where clause. This works fine until the value of the Expr string contains digits anywhere but at the end of the string. Hard to believe, but when I remove the records from the table from which I derive the string, works fine. But if I leave in those records that contain a one or more digits except at the end, it give the error message: Syntax error(missing operator) in query expression '2004TotalTurnoverED207'. Sure enough, 2004TotalTurnoverED207 is the correct value. Other values such as TotalHours, TotalMan201 and AveUnits45 all work fine in the DLookup as values for the Expr, just not when the digits occur anywhere but at the end of the string. Any help would prevent further head banging. TIA bob From cfoust at infostatsystems.com Mon Mar 20 11:27:05 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Mon, 20 Mar 2006 09:27:05 -0800 Subject: [AccessD] ADO and ADO.NET Message-ID: Nope, ADO.Net began with 2003. ADO.Net is a different language with a definite .Net tilt to it. If you're going to interact with Visual Studio, learn ADO.Net. If you're going to play just in Access, you might as well learn DAO. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Thomas F. Ewald Sent: Saturday, March 18, 2006 11:00 AM To: accessd at databaseadvisors.com Subject: [AccessD] ADO and ADO.NET In using Access XP, how much does it matter if you use ADO or ADO.NET? I believe that ADO.NET began with XP; please let me know if I am inaccurate with that belief. If I am correct, is there much to gain by studying ADO.NET? I'm still working on learning ADO (never did learn DAO very well, I have to admit), and I'm trying to put my study time to good use. TIA, Tom Ewald -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.1.385 / Virus Database: 268.2.5/284 - Release Date: 3/17/2006 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Mon Mar 20 11:33:32 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Mon, 20 Mar 2006 09:33:32 -0800 Subject: [AccessD] Acquiring subform's subform object name Message-ID: The sourceobject is a pointer to an object viewed in the control. Tab controls aren't containers in the same sense as are forms and subforms so they always get ignored. How you acquire the name depends on where you do it from. The subform itself always knows who it is, but the parent doesn't need to know as long as the sourceobject is set, and it doesn't necessarily have to be set to the same sourceobject all the time. From the parent form you should always be able to use Me.subformcontrol.Form.name to get the name of the subform object itself, once you know that a sourceobject exists. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Erbach Sent: Saturday, March 18, 2006 3:25 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Acquiring subform's subform object name Shamil, Interesting. When I was experimenting with this I was flabbergasted that a subform control's SourceObject could not directly tell the name of its subform control. In my case the Me.Parent.Name skipped right past the Subform, the Page, and the Tab controls to the main Form as if those three intervening "containers" weren't even there. Your code does the trick but it sure looks like a game of Blind Man's Bluff to me. Thank you very much for taking time to help me, Shamil. Steve Erbach Neenah, WI http://TheTownCrank.blogspot.com On 3/18/06, Shamil Salakhetdinov wrote: > Steve, > > Here is the code to call from subform: > > Dim ectl As Access.Control > Dim fsub As Access.SubForm > For Each ectl In Me.Parent.Controls > If ectl.ControlType = acSubform Then > Set fsub = ectl > If Len(fsub.SourceObject) > 0 Then > If Not fsub.Form Is Nothing Then > If fsub.Form Is Me.Form Then > MsgBox "My subform control name is " & fsub.Name, _ > vbInformation + vbOKOnly > End If > End If > End If > End If > Next ectl > > Be careful with calling this code from subform's Open or Load event, > especially in the case when on main form there are several subform > controls using the same form.... > > HTH, > Shamil > > ----- Original Message ----- > From: "Steve Erbach" > To: "Access Developers discussion and problem solving" > > Sent: Saturday, March 18, 2006 4:52 PM > Subject: [AccessD] Acquiring subform's subform object name > > > > Dear Group, > > > > I have a form, frmMainMenu, that contains a Tab Control. The 8 tabs > > in the Tab Control are generically named Tab1, Tab2, etc. > > > > Each of the Tabs has one Subform Control "embedded" in it; each > > Subform is also generically named: Subform1, Subform2, etc. The > > reason for this is that frmMainMenu is set up with another Subform > > Control "outside" the Tab Control. This subform acts like the > > vertical menu in an Access database window. Once a menu item is > > clicked, then all the tabs change, sometimes fewer tabs visible, > > sometimes more, depending on which vertical menu item is selected. > > > > Anyway my problem is this: > > > > Say that Tab3's subform control, Subform3, has the form frmCustomers > > as the subform's Source Object. From the code within frmCustomers I > > would like to be able to determine the name of it's subform control > > "container". > > > > Me.Parent.Name gives me the name of the "master" form, frmMainMenu. > > I've tried all sorts of things short of enumerating the collection > > of controls to simply find the name of the subform control that > > "contains" frmCustomers. > > > > Could you give me an idea? > > > > Regards, > > > > Steve Erbach -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Mon Mar 20 11:38:47 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Mon, 20 Mar 2006 09:38:47 -0800 Subject: [AccessD] MAny-To-May Message-ID: Rocky, No matter how they look at it, that doesn't make a lot of sense when trying to create a new job. Obviously, you can't see a new job for the equipment because they haven't created it yet. If they insist on that arrangement, then you need a "New Job" button or something similar to do the necessary work in the background. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Sunday, March 19, 2006 10:57 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] MAny-To-May Martin: I actually had it that way - job in the header, equipment in the sub-form. But we had to change the way the jobs are created because of the way the job is actually looked at by users. You pick the equipment first now and see the list of jobs for that piece of equipment in the sub-form. Rocky Martin Reid wrote: > Rocky > > Would you not create the Job first and then the equipment required to do the job? > > Martin > > Martin WP Reid > Training and Assessment Unit > Riddle Hall > Belfast > > tel: 02890 974477 > > > ________________________________ > > From: accessd-bounces at databaseadvisors.com on behalf of Rocky Smolin - > Beach Access Software > Sent: Sun 19/03/2006 15:25 > To: Access Developers discussion and problem solving > Subject: [AccessD] MAny-To-May > > > > Dear List: > > This is a preventive maintenance application. > > There is a table of Jobs and a table of Equipment. Since one job can > do many equipments and one equipment can be called out in many jobs > there is a table that sits between them - tblJobsEquipment which has > the PK from tblJobs and the PK from tblEquipment as FKs. > > The equipment table is relatively static. The job table changes all > the time. > > On the form where jobs are created and maintained, the user selects > the equipment from a combo box. The jobs for that equipment are then > displayed in a sub-form. > > The problem comes when trying to create a new job. Since there's no > PK yet for the job I get an error "cannot create record; join key (to > the JobEquipment table) is not in the recordset. > > Indeed if I put a debug statement in the BeforeInsert event of the > sub-form the PK of the Jobs table is still null. > > How does one work around this problem? > > MTIA > > Rocky > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Mon Mar 20 11:41:51 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Mon, 20 Mar 2006 09:41:51 -0800 Subject: [AccessD] numbers in DLookup Message-ID: Put the value with numbers at the front in square brackets, same as you would for a name with a space in it, and see if that makes a difference. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bob Heygood Sent: Monday, March 20, 2006 9:26 AM To: Access Developers discussion and problem solving Subject: [AccessD] numbers in DLookup Hello to the list! I am trying to use a DLookup function in some code. It uses two string variable values for the Expr and the Domain arguments. And a third string variable for the part of the Where clause. This works fine until the value of the Expr string contains digits anywhere but at the end of the string. Hard to believe, but when I remove the records from the table from which I derive the string, works fine. But if I leave in those records that contain a one or more digits except at the end, it give the error message: Syntax error(missing operator) in query expression '2004TotalTurnoverED207'. Sure enough, 2004TotalTurnoverED207 is the correct value. Other values such as TotalHours, TotalMan201 and AveUnits45 all work fine in the DLookup as values for the Expr, just not when the digits occur anywhere but at the end of the string. Any help would prevent further head banging. TIA bob -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bchacc at san.rr.com Mon Mar 20 12:05:16 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Mon, 20 Mar 2006 10:05:16 -0800 Subject: [AccessD] Many-To-Many In-Reply-To: References: Message-ID: <441EEEDC.8070103@san.rr.com> You're right from the programmer's view. But from the user's view (according to the guy I'm designing this with - and since it's a preventive maintenance app and he's a preventive maintenance veteran, I have to go with his judgment) they select equipment and want to see a list of jobs associated with that piece. However, Shamil's elegant little trick solved the problem so I can go ahead and create the job in the subform and the keys all get resolved OK. Otherwise the "New Job" modal popup form seems to be the consensus. Rocky Charlotte Foust wrote: > Rocky, > > No matter how they look at it, that doesn't make a lot of sense when > trying to create a new job. Obviously, you can't see a new job for the > equipment because they haven't created it yet. If they insist on that > arrangement, then you need a "New Job" button or something similar to do > the necessary work in the background. > > > Charlotte Foust > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin > - Beach Access Software > Sent: Sunday, March 19, 2006 10:57 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] MAny-To-May > > Martin: > > I actually had it that way - job in the header, equipment in the > sub-form. But we had to change the way the jobs are created because of > the way the job is actually looked at by users. You pick the equipment > first now and see the list of jobs for that piece of equipment in the > sub-form. > > Rocky > > > Martin Reid wrote: > >> Rocky >> >> Would you not create the Job first and then the equipment required to >> > do the job? > >> >> Martin >> >> Martin WP Reid >> Training and Assessment Unit >> Riddle Hall >> Belfast >> >> tel: 02890 974477 >> >> >> ________________________________ >> >> From: accessd-bounces at databaseadvisors.com on behalf of Rocky Smolin - >> > > >> Beach Access Software >> Sent: Sun 19/03/2006 15:25 >> To: Access Developers discussion and problem solving >> Subject: [AccessD] MAny-To-May >> >> >> >> Dear List: >> >> This is a preventive maintenance application. >> >> There is a table of Jobs and a table of Equipment. Since one job can >> do many equipments and one equipment can be called out in many jobs >> there is a table that sits between them - tblJobsEquipment which has >> the PK from tblJobs and the PK from tblEquipment as FKs. >> >> The equipment table is relatively static. The job table changes all >> the time. >> >> On the form where jobs are created and maintained, the user selects >> the equipment from a combo box. The jobs for that equipment are then >> displayed in a sub-form. >> >> The problem comes when trying to create a new job. Since there's no >> PK yet for the job I get an error "cannot create record; join key (to >> the JobEquipment table) is not in the recordset. >> >> Indeed if I put a debug statement in the BeforeInsert event of the >> sub-form the PK of the Jobs table is still null. >> >> How does one work around this problem? >> >> MTIA >> >> Rocky >> >> -- >> Rocky Smolin >> Beach Access Software >> 858-259-4334 >> www.e-z-mrp.com >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> >> >> >> > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From KIsmert at TexasSystems.com Mon Mar 20 12:06:26 2006 From: KIsmert at TexasSystems.com (Ken Ismert) Date: Mon, 20 Mar 2006 12:06:26 -0600 Subject: [AccessD] report sorting problem Message-ID: Susan, Ditch the report's grouping properties. Use something like this in the query: Year([tblTopics].[DateDue]) * 100 + DatePart("ww",[tblTopics].[DateDue]) AS GroupSort You can then group by GroupSort, and still order your records by DateDue. I lost my patience with Access' report grouping properties a long time ago. -Ken -----Original Message----- From: Susan Harkins [mailto:harkinsss at bellsouth.net] Sent: Sunday, March 19, 2006 11:20 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] report sorting problem I have a grouped report based on the following query: SELECT tblTopics.Title, tblTopics.DateDue, tblPublishersContacts.Contact, tblPartners.LastName, tblTopics.EstimatedFee, =IIf(IsNull([LastName]),[EstimatedFee],[EstimatedFee]/2) As SplitFee FROM tblPartners INNER JOIN (tblPublishersContacts INNER JOIN tblTopics ON tblPublishersContacts.PublisherContactID = tblTopics.PublisherContactID) ON tblPartners.PartnerID = tblTopics.PartnerID WHERE (((tblTopics.DateDue) Is Not Null) AND ((tblTopics.DateSubmitted) Is Null)) ORDER BY tblTopics.DateDue UNION SELECT Title, DateDue, Contact, LastName, EstimatedFee, 0 FROM tblScheduledItems ORDER BY tblTopics.DateDue; The report is grouped on the DateDue field and I use the report's grouping properties to group by the week. When I run the query, it sorts by the DateDue values, but the grouped report loses that sort. The records group properly, I just can't get them to sort properly within the group. Any help? Susan H. From Gustav at cactus.dk Mon Mar 20 12:11:52 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Mon, 20 Mar 2006 19:11:52 +0100 Subject: [AccessD] Access XP forms bound to ADO recordsets Message-ID: Hi all If you have a few spare moments I could recommend to download and run this test. It's very easy to do - Shamil has prepared everything - you just need a copy of Nortwind.mdb for A2000. You should select a loop count beyond 2011 as Shamil experiences an error at that loop ... /gustav >>> shamil at users.mns.ru 20-03-2006 15:04:45 >>> Hi All, New version of the subject test released at http://smsconsulting.spb.ru/download/tests/a2dds.htm Previous one didn't work well with Customers table/form because of some "dirty" data rows in Northwind sample database. Problem fixed by workarounding these "dirty" rows' data values. I did also add RSS 1.0 feed at http://smsconsulting.spb.ru/download/tests/a2dds_rss10.xml (Code to generate this feed is in the sample database.) Test application can be executed in background as I'm doing now while writing this message. The roadmap of this test is to make it more advanced/test more features as well as make its installation, running and statistics reporting automated based on RSS/Atom and other technologies and standards... Thank you in advance for testing! Shamil From adtp at hotmail.com Mon Mar 20 12:41:22 2006 From: adtp at hotmail.com (A.D.TEJPAL) Date: Tue, 21 Mar 2006 00:11:22 +0530 Subject: [AccessD] MAny-To-May References: <441D77E7.4000805@san.rr.com> Message-ID: Rocky, My sample db named MedicalDiagnosis might be of interest to you. It is available at Rogers Access Library (other developers library). Link - http://www.rogersaccesslibrary.com/OtherLibraries.asp#Tejpal,A.D. The db demonstrates a user friendly, integrated interface for data entry, facilitating smooth population of junction table bridging the many to many relationship between diseases & symptoms. Best wishes, A.D.Tejpal --------------- ----- Original Message ----- From: Rocky Smolin - Beach Access Software To: Access Developers discussion and problem solving Sent: Sunday, March 19, 2006 20:55 Subject: [AccessD] MAny-To-May Dear List: This is a preventive maintenance application. There is a table of Jobs and a table of Equipment. Since one job can do many equipments and one equipment can be called out in many jobs there is a table that sits between them - tblJobsEquipment which has the PK from tblJobs and the PK from tblEquipment as FKs. The equipment table is relatively static. The job table changes all the time. On the form where jobs are created and maintained, the user selects the equipment from a combo box. The jobs for that equipment are then displayed in a sub-form. The problem comes when trying to create a new job. Since there's no PK yet for the job I get an error "cannot create record; join key (to the JobEquipment table) is not in the recordset. Indeed if I put a debug statement in the BeforeInsert event of the sub-form the PK of the Jobs table is still null. How does one work around this problem? MTIA Rocky From ewaldt at gdls.com Mon Mar 20 14:32:10 2006 From: ewaldt at gdls.com (ewaldt at gdls.com) Date: Mon, 20 Mar 2006 15:32:10 -0500 Subject: [AccessD] Combo Box Won't Find Record In-Reply-To: Message-ID: I've done this many times before with no problems. Create a simple combo box using the wizard. Tell it to select a record based on the combo box. Save it. Use the combo box to find a record. However, there is no effect whatsover on the rest of the form...no record is chosen. Anything to look for? I'm using Access XP. TIA, Tom Ewald This is an e-mail from General Dynamics Land Systems. It is for the intended recipient only and may contain confidential and privileged information. No one else may read, print, store, copy, forward or act in reliance on it or its attachments. If you are not the intended recipient, please return this message to the sender and delete the message and any attachments from your computer. Your cooperation is appreciated. From darrend at nimble.com.au Mon Mar 20 15:14:27 2006 From: darrend at nimble.com.au (Darren DICK) Date: Tue, 21 Mar 2006 08:14:27 +1100 Subject: [AccessD] Combo Box Won't Find Record In-Reply-To: Message-ID: <20060320211456.ZVFK19070.omta01ps.mx.bigpond.com@DENZILLAP> Hi Tom This is how I find a record using a combo on a form In the afterrupdate of the combo Dim intEditedRecord as integer intEditedRecord= Me.SomeComboOnYourForm Me.RecordsetClone.FindFirst "YourPK_ID=" & intEditedRecord Me.Bookmark = Me.RecordsetClone.Bookmark Or even skip the declarations... In the after update of the combo Me.RecordsetClone.FindFirst "YourPK_ID=" & Me.SomeComboOnYourForm Me.Bookmark = Me.RecordsetClone.Bookmark _______________________________ Hope this helps Darren ------------------------------ T: 0424 696 433 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of ewaldt at gdls.com Sent: Tuesday, 21 March 2006 7:32 AM To: accessd at databaseadvisors.com Subject: [AccessD] Combo Box Won't Find Record I've done this many times before with no problems. Create a simple combo box using the wizard. Tell it to select a record based on the combo box. Save it. Use the combo box to find a record. However, there is no effect whatsover on the rest of the form...no record is chosen. Anything to look for? I'm using Access XP. TIA, Tom Ewald This is an e-mail from General Dynamics Land Systems. It is for the intended recipient only and may contain confidential and privileged information. No one else may read, print, store, copy, forward or act in reliance on it or its attachments. If you are not the intended recipient, please return this message to the sender and delete the message and any attachments from your computer. Your cooperation is appreciated. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From garykjos at gmail.com Mon Mar 20 15:17:32 2006 From: garykjos at gmail.com (Gary Kjos) Date: Mon, 20 Mar 2006 15:17:32 -0600 Subject: [AccessD] Combo Box Won't Find Record In-Reply-To: References: Message-ID: Hi Tom, Normally the wizard will create a bit of code for you that fires on AFTER UPDATE event of the combo box control that has some code like this in it.... ' Find the record that matches the control. Dim RS As Object Set RS = Me.Recordset.Clone RS.FindFirst "[SR #] = " & Str(Me![cmbSRNbr]) Me.Bookmark = RS.Bookmark Did you perhaps have the wizard not active when you created the combo box?? Or perhaps you changed the name of the control after you created it so the code got "lost". GK On 3/20/06, ewaldt at gdls.com wrote: > I've done this many times before with no problems. Create a simple combo > box using the wizard. Tell it to select a record based on the combo box. > Save it. Use the combo box to find a record. However, there is no effect > whatsover on the rest of the form...no record is chosen. > > Anything to look for? I'm using Access XP. > > TIA, > > Tom Ewald > > > > This is an e-mail from General Dynamics Land Systems. It is for the intended recipient only and may contain confidential and privileged information. No one else may read, print, store, copy, forward or act in reliance on it or its attachments. If you are not the intended recipient, please return this message to the sender and delete the message and any attachments from your computer. Your cooperation is appreciated. > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Gary Kjos garykjos at gmail.com From bheygood at abestsystems.com Mon Mar 20 15:27:19 2006 From: bheygood at abestsystems.com (Bob Heygood) Date: Mon, 20 Mar 2006 13:27:19 -0800 Subject: [AccessD] Numbers in DLookup In-Reply-To: <001a01c64be9$7429d6c0$647aa8c0@ColbyM6805> Message-ID: Sure enough, the brackets make the difference. Works: varData = Nz(DLookup("[" & strFieldName & "]", strTableName, "CoID =" & intCoID)) No Work: varData = Nz(DLookup(strFieldName, strTableName, "CoID =" & intCoID)) Thanks Charlotte bob Put the value with numbers at the front in square brackets, same as you would for a name with a space in it, and see if that makes a difference. Charlotte Foust Hello to the list! I am trying to use a DLookup function in some code. It uses two string variable values for the Expr and the Domain arguments. And a third string variable for the part of the Where clause. This works fine until the value of the Expr string contains digits anywhere but at the end of the string. Hard to believe, but when I remove the records from the table from which I derive the string, works fine. But if I leave in those records that contain a one or more digits except at the end, it give the error message: Syntax error(missing operator) in query expression '2004TotalTurnoverED207'. Sure enough, 2004TotalTurnoverED207 is the correct value. Other values such as TotalHours, TotalMan201 and AveUnits45 all work fine in the DLookup as values for the Expr, just not when the digits occur anywhere but at the end of the string. Any help would prevent further head banging. TIA bob From cfoust at infostatsystems.com Mon Mar 20 15:50:21 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Mon, 20 Mar 2006 13:50:21 -0800 Subject: [AccessD] Numbers in DLookup Message-ID: Glad to help. That's the first thing to try when Access starts objecting to the name of an object. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bob Heygood Sent: Monday, March 20, 2006 1:27 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Numbers in DLookup Sure enough, the brackets make the difference. Works: varData = Nz(DLookup("[" & strFieldName & "]", strTableName, "CoID =" & intCoID)) No Work: varData = Nz(DLookup(strFieldName, strTableName, "CoID =" & intCoID)) Thanks Charlotte bob Put the value with numbers at the front in square brackets, same as you would for a name with a space in it, and see if that makes a difference. Charlotte Foust Hello to the list! I am trying to use a DLookup function in some code. It uses two string variable values for the Expr and the Domain arguments. And a third string variable for the part of the Where clause. This works fine until the value of the Expr string contains digits anywhere but at the end of the string. Hard to believe, but when I remove the records from the table from which I derive the string, works fine. But if I leave in those records that contain a one or more digits except at the end, it give the error message: Syntax error(missing operator) in query expression '2004TotalTurnoverED207'. Sure enough, 2004TotalTurnoverED207 is the correct value. Other values such as TotalHours, TotalMan201 and AveUnits45 all work fine in the DLookup as values for the Expr, just not when the digits occur anywhere but at the end of the string. Any help would prevent further head banging. TIA bob -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Tue Mar 21 06:41:13 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Tue, 21 Mar 2006 15:41:13 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: Message-ID: <000d01c64ce4$c2107230$6501a8c0@Nant> > You should select a loop count beyond 2011 as Shamil experiences an error > at that loop ... Thank yoy, Gustav, Yes the error happens on loop count = 2010 - 2012 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< ADODB Bound Forms Crash Test v.1.9.2 [20-MAR-06] Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 3011 - The Microsoft Jet database engine could not find the object ''. Make sure the object exists and that you spell its name and the path name correctly. Backend: MS Access Binding: ADODB Cycles to pass: 5000 Cycles passed: 2012 Total errors: 1 Forms opened: 10059 Start time: 20.03.2006 16:46:38 End time: 20.03.2006 19:55:32 Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 71988, Disposed = 71988 >>>>>>>>> When I'm then trying to close and to reopen database window without quitting MS Access I'm getting this weird message: <<< Microsoft Office Access was unable to create the Database window Please upgrade to a newer version of Microsoft Internet Explorer >>> System statistics do not show that some of the resource exhausted or something like that: <<< MS Access: 36MB Northwind mdb size: Start: ~4MB On error: ~67MB Total Paging File Size on all drives: 1536MB CPU usage: 4% PF Usage: 890 MB Totals: Handles: 14590 Threads 664 Processes: 57 Commit Change (K) Total 912084 Limit 2532840 Peak 990096 Physical Memory (K) Total 1048020 Available 163200 System Cache 352524 Kernel Memory Total 78276 Paged 59564 Nonpaged 18712 Test application HDD:: Total: 7.99GB Free 3.87GB System HDD: Total 31.2GB Free 4.41GB >>>> Strange, very strange. I did set breakpoint on error and I did check are there any hidden non-closed forms in the Forms collection or (occasionally) non closed databases in dbengine(0).Databases collection etc. - all seems to be clean.... Shamil ----- Original Message ----- From: "Gustav Brock" To: Sent: Monday, March 20, 2006 9:11 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi all > > If you have a few spare moments I could recommend to download and run this > test. It's very easy to do - Shamil has prepared everything - you just > need a copy of Nortwind.mdb for A2000. > You should select a loop count beyond 2011 as Shamil experiences an error > at that loop ... > > /gustav > <<< tail skipped >>> From bheid at appdevgrp.com Tue Mar 21 07:06:13 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Tue, 21 Mar 2006 08:06:13 -0500 Subject: [AccessD] ADO and ADO.NET In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D788D1@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D35131@ADGSERVER> Access 2003 has ADO.Net in it? Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Monday, March 20, 2006 12:27 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] ADO and ADO.NET Nope, ADO.Net began with 2003. ADO.Net is a different language with a definite .Net tilt to it. If you're going to interact with Visual Studio, learn ADO.Net. If you're going to play just in Access, you might as well learn DAO. Charlotte Foust From bheid at appdevgrp.com Tue Mar 21 07:10:29 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Tue, 21 Mar 2006 08:10:29 -0500 Subject: [AccessD] Export to Excel via VBA, Naming Cells In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D6B519@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D35132@ADGSERVER> Jim, Nice example. But I'd like to point out one thing, if I may. I think it is a better practice to exit a for loop with an Exit For statement instead of jumping out of the loop. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Friday, March 17, 2006 4:27 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Export to Excel via VBA, Naming Cells Maybe this will give you some ideas. Starting at the top of the range e5 it finds the last number in the column and places a sum formula underneath. Jim Hale Function test() Dim rng As Range, i As Integer, strAddressBottom As String, strAddressTop As String Set rng = Range("e5") strAddressTop = rng.Address For i = 1 To 25 If rng.Offset(i, 0).Value = "" Then strAddressBottom = rng.Offset(i - 1, 0).Cells.Address rng.Offset(i, 0).Formula = "=sum(" & strAddressTop & ":" & strAddressBottom & ")" GoTo The_End End If Next The_End: Set rng = Nothing End Function From shamil at users.mns.ru Tue Mar 21 07:35:02 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Tue, 21 Mar 2006 16:35:02 +0300 Subject: [AccessD] ADO and ADO.NET References: <916187228923D311A6FE00A0CC3FAA30D35131@ADGSERVER> Message-ID: <001c01c64cec$4e74ad20$6501a8c0@Nant> No, Bobby, it hasn't. Shamil ----- Original Message ----- From: "Bobby Heid" To: "'Access Developers discussion and problem solving'" Sent: Tuesday, March 21, 2006 4:06 PM Subject: Re: [AccessD] ADO and ADO.NET > Access 2003 has ADO.Net in it? > > Bobby > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust > Sent: Monday, March 20, 2006 12:27 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] ADO and ADO.NET > > > Nope, ADO.Net began with 2003. ADO.Net is a different language with a > definite .Net tilt to it. If you're going to interact with Visual > Studio, learn ADO.Net. If you're going to play just in Access, you > might as well learn DAO. > > > Charlotte Foust > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From Jim.Hale at FleetPride.com Tue Mar 21 09:00:59 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Tue, 21 Mar 2006 09:00:59 -0600 Subject: [AccessD] Export to Excel via VBA, Naming Cells Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDADD@corp-es01.fleetpride.com> Guilty as charged. I knew I would get called on it as soon as I hit the send button. I have already had a stern talking to myself. :-) Jim Hale -----Original Message----- From: Bobby Heid [mailto:bheid at appdevgrp.com] Sent: Tuesday, March 21, 2006 7:10 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Export to Excel via VBA, Naming Cells Jim, Nice example. But I'd like to point out one thing, if I may. I think it is a better practice to exit a for loop with an Exit For statement instead of jumping out of the loop. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Friday, March 17, 2006 4:27 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Export to Excel via VBA, Naming Cells Maybe this will give you some ideas. Starting at the top of the range e5 it finds the last number in the column and places a sum formula underneath. Jim Hale Function test() Dim rng As Range, i As Integer, strAddressBottom As String, strAddressTop As String Set rng = Range("e5") strAddressTop = rng.Address For i = 1 To 25 If rng.Offset(i, 0).Value = "" Then strAddressBottom = rng.Offset(i - 1, 0).Cells.Address rng.Offset(i, 0).Formula = "=sum(" & strAddressTop & ":" & strAddressBottom & ")" GoTo The_End End If Next The_End: Set rng = Nothing End Function -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From cfoust at infostatsystems.com Tue Mar 21 10:21:28 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Tue, 21 Mar 2006 08:21:28 -0800 Subject: [AccessD] ADO and ADO.NET Message-ID: No, just some support for using things built in it I believe. I would be a lot more enthusiastic about the future of Access if it did have ADO.Net in it. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Tuesday, March 21, 2006 5:06 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] ADO and ADO.NET Access 2003 has ADO.Net in it? Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Monday, March 20, 2006 12:27 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] ADO and ADO.NET Nope, ADO.Net began with 2003. ADO.Net is a different language with a definite .Net tilt to it. If you're going to interact with Visual Studio, learn ADO.Net. If you're going to play just in Access, you might as well learn DAO. Charlotte Foust -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From scapistrant at symphonyinfo.com Tue Mar 21 10:44:11 2006 From: scapistrant at symphonyinfo.com (Steve Capistrant) Date: Tue, 21 Mar 2006 10:44:11 -0600 Subject: [AccessD] 2003 over 64 bit Message-ID: <855499653F55AD4190B242717DF132BC10C53F@dewey.Symphony.local> Hi folks. I'm stuck, and have had no luck casting about the internet for an answer... Last week I had to upgrade my PC when the motherboard melted. The new one carries Access 2003 running over the Windows 64 bit version. Problem: Some of my old apps (built in Access 2000) are taking 20 minutes to load. Gives all appearances of hanging, with 100% RAM utilization during that time, but EVENTUALLY it swallows whatever big bite it was trying to take. Note that 2003 will open 2000 apps and edit them without forcing you to upgrade their format to 2003. The loading problem doesn't happen to all my mdbs. Seems to happen after a session where I make some coding changes. Other tidbits: ~ I've got all the nasty defaults disabled (autocorrect, auto name change, etc). ~ The old apps have DAO references (no ADO) ~ After any coding session, I compile and compact. Ideas? Steve Capistrant Symphony Information Services scapistrant at symphonyinfo.com 763-391-7400 www.symphonyinfo.com From bchacc at san.rr.com Tue Mar 21 11:17:56 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Tue, 21 Mar 2006 09:17:56 -0800 Subject: [AccessD] 2003 over 64 bit In-Reply-To: <855499653F55AD4190B242717DF132BC10C53F@dewey.Symphony.local> References: <855499653F55AD4190B242717DF132BC10C53F@dewey.Symphony.local> Message-ID: <44203544.3030601@san.rr.com> Steve: I'd try: 1. Decompile 2. Create a new db container in 2003 and import all the objects. Compile. Compact. Just a shot in the dark. Rocky Steve Capistrant wrote: > Hi folks. > I'm stuck, and have had no luck casting about the internet for an > answer... > Last week I had to upgrade my PC when the motherboard melted. The new > one carries Access 2003 running over the Windows 64 bit version. > > Problem: Some of my old apps (built in Access 2000) are taking 20 > minutes to load. Gives all appearances of hanging, with 100% RAM > utilization during that time, but EVENTUALLY it swallows whatever big > bite it was trying to take. Note that 2003 will open 2000 apps and edit > them without forcing you to upgrade their format to 2003. > > The loading problem doesn't happen to all my mdbs. Seems to happen > after a session where I make some coding changes. > > Other tidbits: > ~ I've got all the nasty defaults disabled (autocorrect, auto name > change, etc). > ~ The old apps have DAO references (no ADO) > ~ After any coding session, I compile and compact. > > Ideas? > > Steve Capistrant > Symphony Information Services > scapistrant at symphonyinfo.com > 763-391-7400 > www.symphonyinfo.com > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From darsant at gmail.com Tue Mar 21 11:32:42 2006 From: darsant at gmail.com (Josh McFarlane) Date: Tue, 21 Mar 2006 11:32:42 -0600 Subject: [AccessD] ADO and ADO.NET In-Reply-To: References: Message-ID: <53c8e05a0603210932l1e567ef4pf97d740840cbafed@mail.gmail.com> On 3/21/06, Charlotte Foust wrote: > No, just some support for using things built in it I believe. I would be > a lot more enthusiastic about the future of Access if it did have > ADO.Net in it. Isn't part of the positive aspect of Access the ease of deploying the application? I'd be horrified if I had to deal with .NET runtimes in order to get a simple Access application to work, however I haven't used ADO.Net yet. Standard ADO works for everything I need it to, and the rest I just use queries and wrappers for. -- Josh McFarlane "Peace cannot be kept by force. It can only be achieved by understanding." -Albert Einstein From erbachs at gmail.com Tue Mar 21 11:35:54 2006 From: erbachs at gmail.com (Steve Erbach) Date: Tue, 21 Mar 2006 11:35:54 -0600 Subject: [AccessD] Acquiring subform's subform object name In-Reply-To: References: Message-ID: <39cb22f30603210935i5790658ds7cbf4823ca5e4731@mail.gmail.com> Charlotte, ? From the parent form you should always be able to use > Me.subformcontrol.Form.name to get the name of the subform object > itself, once you know that a sourceobject exists. ? That's exactly what happens with my application. It's just that now I'd like to have a more generic way of determining which subform control contains the current subform. Looks like a variation of Shamil's technique is going to be it; that is, look at all the subforms that have the SourceObject property set and see if one of them has the form name of the current subform. Thanks, Charlotte. Steve Erbach http://TheTownCrank.blogspot.com On 3/20/06, Charlotte Foust wrote: > The sourceobject is a pointer to an object viewed in the control. Tab > controls aren't containers in the same sense as are forms and subforms > so they always get ignored. How you acquire the name depends on where > you do it from. The subform itself always knows who it is, but the > parent doesn't need to know as long as the sourceobject is set, and it > doesn't necessarily have to be set to the same sourceobject all the > time. From the parent form you should always be able to use > Me.subformcontrol.Form.name to get the name of the subform object > itself, once you know that a sourceobject exists. > > > Charlotte Foust > From Lambert.Heenan at AIG.com Tue Mar 21 11:39:27 2006 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Tue, 21 Mar 2006 11:39:27 -0600 Subject: [AccessD] 2003 over 64 bit Message-ID: <1D7828CDB8350747AFE9D69E0E90DA1F1EE09469@xlivmbx21.aig.com> Have you disabled subdatasheets? Another 'feature' that slows things down. See http://www.sicem.biz/personal/erny/msaccess http://www.sicem.biz/personal/erny/msaccess/TurnOffSubsheets http://www.computerbooksonline.com/tips/access7.asp Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Capistrant Sent: Tuesday, March 21, 2006 11:44 AM To: Access Developers discussion and problem solving Subject: [AccessD] 2003 over 64 bit Hi folks. I'm stuck, and have had no luck casting about the internet for an answer... Last week I had to upgrade my PC when the motherboard melted. The new one carries Access 2003 running over the Windows 64 bit version. Problem: Some of my old apps (built in Access 2000) are taking 20 minutes to load. Gives all appearances of hanging, with 100% RAM utilization during that time, but EVENTUALLY it swallows whatever big bite it was trying to take. Note that 2003 will open 2000 apps and edit them without forcing you to upgrade their format to 2003. The loading problem doesn't happen to all my mdbs. Seems to happen after a session where I make some coding changes. Other tidbits: ~ I've got all the nasty defaults disabled (autocorrect, auto name change, etc). ~ The old apps have DAO references (no ADO) ~ After any coding session, I compile and compact. Ideas? Steve Capistrant Symphony Information Services scapistrant at symphonyinfo.com 763-391-7400 www.symphonyinfo.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bheid at appdevgrp.com Tue Mar 21 12:13:11 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Tue, 21 Mar 2006 13:13:11 -0500 Subject: [AccessD] ADO and ADO.NET In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D789A5@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D3513C@ADGSERVER> Phew! I was wondering where I had been if that was in there and I did not know it. LOL. Thanks, Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Tuesday, March 21, 2006 8:35 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] ADO and ADO.NET No, Bobby, it hasn't. Shamil From shamil at users.mns.ru Tue Mar 21 14:17:06 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Tue, 21 Mar 2006 23:17:06 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant><004601c64932$45f25660$6501a8c0@Nant><000801c649ea$ef906370$6501a8c0@Nant> <000a01c64c27$65ddfb80$6501a8c0@Nant> Message-ID: <000e01c64d24$70070ef0$6501a8c0@Nant> Hi All, New version (1.9.3) of the subject test released at http://smsconsulting.spb.ru/download/tests/a2dds.htm It has now RSS 2.0 feed generator and it compacts sample datbase after every 500 iterations. Still can't get it running more than 2011 iterations. It doesn't work that well on MS Access XP as it runs on MS Access 2003 where it fails on 2011th iteration as I noted above. Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Monday, March 20, 2006 5:04 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > New version of the subject test released at > http://smsconsulting.spb.ru/download/tests/a2dds.htm > Previous one didn't work well with Customers table/form because of some > "dirty" data rows in Northwind sample database. Problem fixed by > workarounding these "dirty" rows' data values. > > I did also add RSS 1.0 feed at > http://smsconsulting.spb.ru/download/tests/a2dds_rss10.xml (Code to > generate > this feed is in the sample database.) > > Test application can be executed in background as I'm doing now while > writing this message. > The roadmap of this test is to make it more advanced/test more features as > well as make its installation, running and statistics reporting automated > based on RSS/Atom and other technologies and standards... > > Thank you in advance for testing! > > Shamil > <<< tail skipped >> From prodevmg at yahoo.com Tue Mar 21 14:34:25 2006 From: prodevmg at yahoo.com (Lonnie Johnson) Date: Tue, 21 Mar 2006 12:34:25 -0800 (PST) Subject: [AccessD] Active Directory Field List Message-ID: <20060321203425.80098.qmail@web33114.mail.mud.yahoo.com> I am wanting to use Active Directory to update the passwords in a security table I have. Does anyone know how I can get a field list? I can use the code below but it has certain fields. I don't know how to get the password field because I don't know the field name.' Dim oConnection1 As Object Dim oCommand1 As Object Set oConnection1 = CreateObject("ADODB.Connection") Set oCommand1 = CreateObject("ADODB.Command") ' Open the connection. oConnection1.Provider = "ADsDSOObject" ' This is the ADSI OLE-DB provider name oConnection1.Open "Active Directory Provider" ' Create a command object for this connection. Set oCommand1.ActiveConnection = oConnection1 ' Compose a search string. oCommand1.CommandText = "select name, displayname, userprincipalname, mailNickname, telephoneNumber from 'LDAP://kvckc' WHERE objectCategory='Person' AND objectClass='user' AND name='Lonnie Johnson'" ' Execute the query. Set rs = oCommand1.Execute '-------------------------------------- ' Navigate the record set '-------------------------------------- May God bless you beyond your imagination! Lonnie Johnson ProDev, Professional Development of MS Access Databases Visit me at ==> http://www.prodev.us --------------------------------- Relax. Yahoo! Mail virus scanning helps detect nasty viruses! From ewaldt at gdls.com Tue Mar 21 14:40:58 2006 From: ewaldt at gdls.com (ewaldt at gdls.com) Date: Tue, 21 Mar 2006 15:40:58 -0500 Subject: [AccessD] Combo Box Won't Find Record In-Reply-To: Message-ID: Well, I did find one problem. Actually, I had two combo boxes: One called the form with the desired record already up (obviously from another form), and the other was on the form itself. The second still won't work, but I found the problem with the first one: Somehow the "Data Entry" property was switched to "Yes". Duh. Strange, though, since I had never touched it, nor any properties close to it on the list. Oh, well. Access gremlins at work, I suppose. Thanks for your help. I can do without the second combo box, which still doesn't work. Thomas F. Ewald FCS Database Manager General Dynamics Land Systems (586) 276-1256 This is an e-mail from General Dynamics Land Systems. It is for the intended recipient only and may contain confidential and privileged information. No one else may read, print, store, copy, forward or act in reliance on it or its attachments. If you are not the intended recipient, please return this message to the sender and delete the message and any attachments from your computer. Your cooperation is appreciated. From DWUTKA at marlow.com Tue Mar 21 14:35:09 2006 From: DWUTKA at marlow.com (DWUTKA at marlow.com) Date: Tue, 21 Mar 2006 14:35:09 -0600 Subject: [AccessD] Active Directory Field List Message-ID: <17724746D360394AA3BFE5B8D40A9C1BD9CE@main2.marlow.com> You can't get the passwords of a user account from Active Directory, at least not this way. You have to 'crack' them. Passwords are not stored in an unencrypted format. When a user changes their password, NT creates a 'hash' that is an encrypted string of text which can only be recreated with their account, password and domain. There are utilities out there to crack NT account passwords, the most common would be L0phtCrack (spelled with a zero after the L) Drew -----Original Message----- From: Lonnie Johnson [mailto:prodevmg at yahoo.com] Sent: Tuesday, March 21, 2006 2:34 PM To: AccessD solving' Subject: [AccessD] Active Directory Field List I am wanting to use Active Directory to update the passwords in a security table I have. Does anyone know how I can get a field list? I can use the code below but it has certain fields. I don't know how to get the password field because I don't know the field name.' Dim oConnection1 As Object Dim oCommand1 As Object Set oConnection1 = CreateObject("ADODB.Connection") Set oCommand1 = CreateObject("ADODB.Command") ' Open the connection. oConnection1.Provider = "ADsDSOObject" ' This is the ADSI OLE-DB provider name oConnection1.Open "Active Directory Provider" ' Create a command object for this connection. Set oCommand1.ActiveConnection = oConnection1 ' Compose a search string. oCommand1.CommandText = "select name, displayname, userprincipalname, mailNickname, telephoneNumber from 'LDAP://kvckc' WHERE objectCategory='Person' AND objectClass='user' AND name='Lonnie Johnson'" ' Execute the query. Set rs = oCommand1.Execute '-------------------------------------- ' Navigate the record set '-------------------------------------- May God bless you beyond your imagination! Lonnie Johnson ProDev, Professional Development of MS Access Databases Visit me at ==> http://www.prodev.us --------------------------------- Relax. Yahoo! Mail virus scanning helps detect nasty viruses! -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From prodevmg at yahoo.com Tue Mar 21 15:23:20 2006 From: prodevmg at yahoo.com (Lonnie Johnson) Date: Tue, 21 Mar 2006 13:23:20 -0800 (PST) Subject: [AccessD] Active Directory Field List In-Reply-To: <17724746D360394AA3BFE5B8D40A9C1BD9CE@main2.marlow.com> Message-ID: <20060321212320.63625.qmail@web33108.mail.mud.yahoo.com> Thanks Drew. That is not what I wanted to hear but definately what I needed to hear. DWUTKA at marlow.com wrote: You can't get the passwords of a user account from Active Directory, at least not this way. You have to 'crack' them. Passwords are not stored in an unencrypted format. When a user changes their password, NT creates a 'hash' that is an encrypted string of text which can only be recreated with their account, password and domain. There are utilities out there to crack NT account passwords, the most common would be L0phtCrack (spelled with a zero after the L) Drew -----Original Message----- From: Lonnie Johnson [mailto:prodevmg at yahoo.com] Sent: Tuesday, March 21, 2006 2:34 PM To: AccessD solving' Subject: [AccessD] Active Directory Field List I am wanting to use Active Directory to update the passwords in a security table I have. Does anyone know how I can get a field list? I can use the code below but it has certain fields. I don't know how to get the password field because I don't know the field name.' Dim oConnection1 As Object Dim oCommand1 As Object Set oConnection1 = CreateObject("ADODB.Connection") Set oCommand1 = CreateObject("ADODB.Command") ' Open the connection. oConnection1.Provider = "ADsDSOObject" ' This is the ADSI OLE-DB provider name oConnection1.Open "Active Directory Provider" ' Create a command object for this connection. Set oCommand1.ActiveConnection = oConnection1 ' Compose a search string. oCommand1.CommandText = "select name, displayname, userprincipalname, mailNickname, telephoneNumber from 'LDAP://kvckc' WHERE objectCategory='Person' AND objectClass='user' AND name='Lonnie Johnson'" ' Execute the query. Set rs = oCommand1.Execute '-------------------------------------- ' Navigate the record set '-------------------------------------- May God bless you beyond your imagination! Lonnie Johnson ProDev, Professional Development of MS Access Databases Visit me at ==> http://www.prodev.us --------------------------------- Relax. Yahoo! Mail virus scanning helps detect nasty viruses! -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com May God bless you beyond your imagination! Lonnie Johnson ProDev, Professional Development of MS Access Databases Visit me at ==> http://www.prodev.us --------------------------------- Yahoo! Mail Use Photomail to share photos without annoying attachments. From garykjos at gmail.com Tue Mar 21 15:40:26 2006 From: garykjos at gmail.com (Gary Kjos) Date: Tue, 21 Mar 2006 15:40:26 -0600 Subject: [AccessD] Combo Box Won't Find Record In-Reply-To: References: Message-ID: You might try to delete it and recreate it. GK On 3/21/06, ewaldt at gdls.com wrote: > Well, I did find one problem. Actually, I had two combo boxes: One called > the form with the desired record already up (obviously from another form), > and the other was on the form itself. The second still won't work, but I > found the problem with the first one: Somehow the "Data Entry" property was > switched to "Yes". Duh. Strange, though, since I had never touched it, nor > any properties close to it on the list. Oh, well. Access gremlins at work, > I suppose. > > Thanks for your help. I can do without the second combo box, which still > doesn't work. > > Thomas F. Ewald > FCS Database Manager > General Dynamics Land Systems > (586) 276-1256 > > > > > > This is an e-mail from General Dynamics Land Systems. It is for the intended recipient only and may contain confidential and privileged information. No one else may read, print, store, copy, forward or act in reliance on it or its attachments. If you are not the intended recipient, please return this message to the sender and delete the message and any attachments from your computer. Your cooperation is appreciated. > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Gary Kjos garykjos at gmail.com From stuart at lexacorp.com.pg Tue Mar 21 16:13:37 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Wed, 22 Mar 2006 08:13:37 +1000 Subject: [AccessD] Active Directory Field List In-Reply-To: <17724746D360394AA3BFE5B8D40A9C1BD9CE@main2.marlow.com> Message-ID: <44210731.19273.38B47CB@stuart.lexacorp.com.pg> On 21 Mar 2006 at 14:35, DWUTKA at marlow.com wrote: > > There are utilities out there to crack NT account passwords, the most common > would be L0phtCrack (spelled with a zero after the L) > Two problems with that for me: 1. I couldn't buy it previously 'cos I don't live in US/Canada. 2. Symantec have pulled it anyway. Symantec has quietly pulled the plug on sales of L0phtCrack, the venerable password auditing and recovery application. The decision to discontinue support for L0phtCrack, also known as LC5, comes just months after Symantec stopped selling the application to customers outside the United States and Canada out of concerns that it violated cryptography export controls. The Cupertino, Calif.-based security vendor could not be reached for comment on the decision, but a note sent to existing L0phtCraft users said the product did not fit into Symantec's plans for the future. The ship date of L0phtCraft was Mar. 3, 2006 and Symantec will offer customer help until Dec. 16, 2006. The company will not be shipping any product code updates, enhancements or fixes to L0phtCraft after March 3. -- Stuart From pcs at azizaz.com Tue Mar 21 17:59:34 2006 From: pcs at azizaz.com (Borge Hansen) Date: Wed, 22 Mar 2006 09:59:34 +1000 Subject: [AccessD] A2003 AXP Startup Settings References: <1D7828CDB8350747AFE9D69E0E90DA1F1EE09469@xlivmbx21.aig.com> Message-ID: <005e01c64d43$814b6f70$fa10a8c0@Albatross> Steve wrote ~ I've got all the nasty defaults disabled (autocorrect, auto name change, etc). ~ The old apps have DAO references (no ADO) ~ After any coding session, I compile and compact. What's the etc. ? So far I've got: Disable Autocorrect Disable Auto Name Change Disable Subdata Sheets Place DAO reference above ADO reference if you have old code not specifically declared as DAO cheers borge From martyconnelly at shaw.ca Tue Mar 21 19:28:33 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Tue, 21 Mar 2006 17:28:33 -0800 Subject: [AccessD] A2003 AXP Startup Settings References: <1D7828CDB8350747AFE9D69E0E90DA1F1EE09469@xlivmbx21.aig.com> <005e01c64d43$814b6f70$fa10a8c0@Albatross> Message-ID: <4420A841.60108@shaw.ca> Some other hints here Microsoft Access Performance FAQ http://www.granite.ab.ca/access/performancefaq.htm Borge Hansen wrote: >Steve wrote > ~ I've got all the nasty defaults disabled (autocorrect, auto name change, >etc). >~ The old apps have DAO references (no ADO) ~ After any coding session, I >compile and compact. > > >What's the etc. ? > >So far I've got: > >Disable Autocorrect >Disable Auto Name Change >Disable Subdata Sheets >Place DAO reference above ADO reference if you have old code not specifically >declared as DAO > > >cheers >borge > > > -- Marty Connelly Victoria, B.C. Canada From DWUTKA at marlow.com Tue Mar 21 19:34:05 2006 From: DWUTKA at marlow.com (DWUTKA at marlow.com) Date: Tue, 21 Mar 2006 19:34:05 -0600 Subject: [AccessD] Active Directory Field List Message-ID: <17724746D360394AA3BFE5B8D40A9C1BD9D4@main2.marlow.com> I hear ya. I sent you an offer of a 'nudge' off list. Drew -----Original Message----- From: Lonnie Johnson [mailto:prodevmg at yahoo.com] Sent: Tuesday, March 21, 2006 3:23 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Active Directory Field List Thanks Drew. That is not what I wanted to hear but definately what I needed to hear. DWUTKA at marlow.com wrote: You can't get the passwords of a user account from Active Directory, at least not this way. You have to 'crack' them. Passwords are not stored in an unencrypted format. When a user changes their password, NT creates a 'hash' that is an encrypted string of text which can only be recreated with their account, password and domain. There are utilities out there to crack NT account passwords, the most common would be L0phtCrack (spelled with a zero after the L) Drew -----Original Message----- From: Lonnie Johnson [mailto:prodevmg at yahoo.com] Sent: Tuesday, March 21, 2006 2:34 PM To: AccessD solving' Subject: [AccessD] Active Directory Field List I am wanting to use Active Directory to update the passwords in a security table I have. Does anyone know how I can get a field list? I can use the code below but it has certain fields. I don't know how to get the password field because I don't know the field name.' Dim oConnection1 As Object Dim oCommand1 As Object Set oConnection1 = CreateObject("ADODB.Connection") Set oCommand1 = CreateObject("ADODB.Command") ' Open the connection. oConnection1.Provider = "ADsDSOObject" ' This is the ADSI OLE-DB provider name oConnection1.Open "Active Directory Provider" ' Create a command object for this connection. Set oCommand1.ActiveConnection = oConnection1 ' Compose a search string. oCommand1.CommandText = "select name, displayname, userprincipalname, mailNickname, telephoneNumber from 'LDAP://kvckc' WHERE objectCategory='Person' AND objectClass='user' AND name='Lonnie Johnson'" ' Execute the query. Set rs = oCommand1.Execute '-------------------------------------- ' Navigate the record set '-------------------------------------- May God bless you beyond your imagination! Lonnie Johnson ProDev, Professional Development of MS Access Databases Visit me at ==> http://www.prodev.us --------------------------------- Relax. Yahoo! Mail virus scanning helps detect nasty viruses! -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com May God bless you beyond your imagination! Lonnie Johnson ProDev, Professional Development of MS Access Databases Visit me at ==> http://www.prodev.us --------------------------------- Yahoo! Mail Use Photomail to share photos without annoying attachments. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From DWUTKA at marlow.com Tue Mar 21 19:34:27 2006 From: DWUTKA at marlow.com (DWUTKA at marlow.com) Date: Tue, 21 Mar 2006 19:34:27 -0600 Subject: [AccessD] Active Directory Field List Message-ID: <17724746D360394AA3BFE5B8D40A9C1BD9D5@main2.marlow.com> I have L0phtcrack 4, works like a charm, will probably never need support! ;) Drew -----Original Message----- From: Stuart McLachlan [mailto:stuart at lexacorp.com.pg] Sent: Tuesday, March 21, 2006 4:14 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Active Directory Field List On 21 Mar 2006 at 14:35, DWUTKA at marlow.com wrote: > > There are utilities out there to crack NT account passwords, the most common > would be L0phtCrack (spelled with a zero after the L) > Two problems with that for me: 1. I couldn't buy it previously 'cos I don't live in US/Canada. 2. Symantec have pulled it anyway. Symantec has quietly pulled the plug on sales of L0phtCrack, the venerable password auditing and recovery application. The decision to discontinue support for L0phtCrack, also known as LC5, comes just months after Symantec stopped selling the application to customers outside the United States and Canada out of concerns that it violated cryptography export controls. The Cupertino, Calif.-based security vendor could not be reached for comment on the decision, but a note sent to existing L0phtCraft users said the product did not fit into Symantec's plans for the future. The ship date of L0phtCraft was Mar. 3, 2006 and Symantec will offer customer help until Dec. 16, 2006. The company will not be shipping any product code updates, enhancements or fixes to L0phtCraft after March 3. -- Stuart -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From ldoering at symphonyinfo.com Tue Mar 21 22:49:03 2006 From: ldoering at symphonyinfo.com (Liz Doering) Date: Tue, 21 Mar 2006 22:49:03 -0600 Subject: [AccessD] A2003 AXP Startup Settings Message-ID: <855499653F55AD4190B242717DF132BC10C552@dewey.Symphony.local> Knowing Steve--and I do; he's been my boss for six years--he used "etc" with no particular meaning. Great to get this list of performance FAQs; that should help in all circumstances. Thanks, Liz -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of MartyConnelly Sent: Tuesday, March 21, 2006 7:46 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] A2003 AXP Startup Settings Some other hints here Microsoft Access Performance FAQ http://www.granite.ab.ca/access/performancefaq.htm Borge Hansen wrote: >Steve wrote > ~ I've got all the nasty defaults disabled (autocorrect, auto name >change, etc). >~ The old apps have DAO references (no ADO) ~ After any coding session, >I compile and compact. > > >What's the etc. ? > >So far I've got: > >Disable Autocorrect >Disable Auto Name Change >Disable Subdata Sheets >Place DAO reference above ADO reference if you have old code not >specifically declared as DAO > > >cheers >borge > > > -- Marty Connelly Victoria, B.C. Canada -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From adtp at airtelbroadband.in Tue Mar 21 23:59:10 2006 From: adtp at airtelbroadband.in (A.D.TEJPAL) Date: Wed, 22 Mar 2006 11:29:10 +0530 Subject: [AccessD] report sorting problem References: <000001c64b82$bbceed10$ceb3d6d1@SUSANONE> Message-ID: <05ed01c64d75$ca0fbfe0$d90c65cb@pcadt> Reports - Sort Order =============== Results displayed by a report comply with the sorting specified in the source query only if no GroupLevel has been laid down in report design (via Sorting & Grouping dialog box). As soon as you lay down even one GroupLevel, the sort order indicated therein over-rules the sorting (if any) in source query. Moreover, it then becomes necessary to explicitly set up other GroupLevels (in the hierarchy) as well - if any secondary sorting is desired. For this purpose, you can no longer depend upon the source query. A.D.Tejpal ---------------- ----- Original Message ----- From: Susan Harkins To: 'Access Developers discussion and problem solving' Sent: Sunday, March 19, 2006 23:57 Subject: Re: [AccessD] report sorting problem Hmmmmmm... Tried it and that alone didn't work. I added a second group on DateDue and that did it -- thanks Gustav. Susan H. << SNIP >> From shamil at users.mns.ru Wed Mar 22 08:02:47 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Wed, 22 Mar 2006 17:02:47 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant><004601c64932$45f25660$6501a8c0@Nant><000801c649ea$ef906370$6501a8c0@Nant><000a01c64c27$65ddfb80$6501a8c0@Nant> <000e01c64d24$70070ef0$6501a8c0@Nant> Message-ID: <000c01c64db9$f195e960$6501a8c0@Nant> Hi All, New version (1.9.4) of the subject test released at http://smsconsulting.spb.ru/download/tests/a2dds.htm It has now ATOM 1.0 feed generator. BTW, youi may find the code to generate this and other formats RSS feeds is easy but to make them time is needed to find all the source information, compile it into code, test it, test that generated feeds are well formed etc. - and this happens to be quite some time... Still can't get it running more than 2011 iterations with MS Acces 2003. It seems to be an internal limitation of MS Access/windows app, which is met here because all the external system statistics(Task Manager) show that MS Access didn't "eat" all the resources. Internal checking of opened databases, forms etc. shows there is just one test form opened and one test mdb/adp opened. Anybody who has information how to access the information of internal MS WIndows process/thread resources are very welcome to share it here/within the subject test application. Anybody with MS Access 12 Beta are welcome to test it to see how it works on it. Thank you. Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 21, 2006 11:17 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > New version (1.9.3) of the subject test released at > http://smsconsulting.spb.ru/download/tests/a2dds.htm > It has now RSS 2.0 feed generator and it compacts sample datbase after > every > 500 iterations. > > Still can't get it running more than 2011 iterations. > It doesn't work that well on MS Access XP as it runs on MS Access 2003 > where > it fails on 2011th iteration as I noted above. > > Shamil > <<< tail skipped >>> From harkinsss at bellsouth.net Wed Mar 22 08:02:57 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Wed, 22 Mar 2006 09:02:57 -0500 Subject: [AccessD] report sorting problem In-Reply-To: <05ed01c64d75$ca0fbfe0$d90c65cb@pcadt> Message-ID: <001201c64db9$64d5a790$a2b3d6d1@SUSANONE> Thanks -- that does seem to be the case -- adding the DateDue field to the sorting group as a lone sort did the trick. :) It's a bit of a nasty gotcha. I think Access folks either work a lot with reports or almost never touch them -- I'm in the latter group. :) Susan H. Reports - Sort Order =============== Results displayed by a report comply with the sorting specified in the source query only if no GroupLevel has been laid down in report design (via Sorting & Grouping dialog box). As soon as you lay down even one GroupLevel, the sort order indicated therein over-rules the sorting (if any) in source query. Moreover, it then becomes necessary to explicitly set up other GroupLevels (in the hierarchy) as well - if any secondary sorting is desired. For this purpose, you can no longer depend upon the source query. A.D.Tejpal ---------------- From shamil at users.mns.ru Wed Mar 22 08:31:57 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Wed, 22 Mar 2006 17:31:57 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant><004601c64932$45f25660$6501a8c0@Nant><000801c649ea$ef906370$6501a8c0@Nant><000a01c64c27$65ddfb80$6501a8c0@Nant><000e01c64d24$70070ef0$6501a8c0@Nant> <000c01c64db9$f195e960$6501a8c0@Nant> Message-ID: <003a01c64dbd$65180af0$6501a8c0@Nant> Hi All, BTW, some testers(great help, thank you!) reported that the test database works badly with MS Access XP. I did exprience the same issue on a PC where MS Access XP only is installed. But when I tested with MS Access XP on a PC where MS Access 2003 is installed then the test results were the same as on MS Access 2003. So my guess is that the problem is somewhere in common libraries used by MS Access XP and MS Access 2003, which are upgraded by MS Access 2003 installations(including SPs) but are absent in MS Access XP installatons (including SPs). This needs more testing of course - JFYI: MS Access XP =========== ADODB Bound Forms Crash Test v.1.9.2 [20-MAR-06] Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 3011 - The Microsoft Jet database engine could not find the object ''. Make sure the object exists and that you spell its name and the path name correctly. Backend: MS Access Binding: ADODB Cycles to pass: 3000 Cycles passed: 2012 Total errors: 1 Forms opened: 10059 Start time: 21.03.2006 16:08:38 End time: 21.03.2006 21:29:04 Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 93823, Disposed = 93823 Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 22, 2006 5:02 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > New version (1.9.4) of the subject test released at > > http://smsconsulting.spb.ru/download/tests/a2dds.htm > > It has now ATOM 1.0 feed generator. BTW, youi may find the code to > generate > this and other formats RSS feeds is easy but to make them time is needed > to > find all the source information, compile it into code, test it, test that > generated feeds are well formed etc. - and this happens to be quite some > time... > > Still can't get it running more than 2011 iterations with MS Acces 2003. > It seems to be an internal limitation of MS Access/windows app, which is > met > here because all the external system statistics(Task Manager) show that MS > Access didn't "eat" all the resources. Internal checking of opened > databases, forms etc. shows there is just one test form opened and one > test > mdb/adp opened. > > Anybody who has information how to access the information of internal MS > WIndows process/thread resources are very welcome to share it here/within > the subject test application. > > Anybody with MS Access 12 Beta are welcome to test it to see how it works > on > it. > > Thank you. > > Shamil <<< tail skipped >>> From shamil at users.mns.ru Wed Mar 22 09:07:46 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Wed, 22 Mar 2006 18:07:46 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant><004601c64932$45f25660$6501a8c0@Nant><000801c649ea$ef906370$6501a8c0@Nant><000a01c64c27$65ddfb80$6501a8c0@Nant><000e01c64d24$70070ef0$6501a8c0@Nant><000c01c64db9$f195e960$6501a8c0@Nant> <003a01c64dbd$65180af0$6501a8c0@Nant> Message-ID: <005c01c64dc2$61e8d1c0$6501a8c0@Nant> Just got information from one of the great helping hand testers - they got it runing more than 2010 cycles! Therefore the high hopes now we are on the right track! <+ Test successfully finished. Backend: MS Access Binding: ADODB Cycles to pass: 2700 Cycles passed: 2700 Total errors: 0 Forms opened: 13500 Start time: 3/21/2006 4:04:06 PM End time: 3/21/2006 5:19:49 PM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 97337, Disposed = 97337 -> Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 22, 2006 5:31 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > BTW, some testers(great help, thank you!) reported that the test database > works badly with MS Access XP. > I did exprience the same issue on a PC where MS Access XP only is > installed. > > But when I tested with MS Access XP on a PC where MS Access 2003 is > installed then the test results were the same as on MS Access 2003. So my > guess is that the problem is somewhere in common libraries used by MS > Access > XP and MS Access 2003, which are upgraded by MS Access 2003 > installations(including SPs) but are absent in MS Access XP installatons > (including SPs). This needs more testing of course - JFYI: > > MS Access XP > =========== > > ADODB Bound Forms Crash Test v.1.9.2 [20-MAR-06] > > Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 3011 - The Microsoft Jet > database engine could not find the object ''. Make sure the object exists > and that you spell its name and the path name correctly. > > Backend: MS Access > Binding: ADODB > Cycles to pass: 3000 > Cycles passed: 2012 > Total errors: 1 > Forms opened: 10059 > Start time: 21.03.2006 16:08:38 > End time: 21.03.2006 21:29:04 > > Object statistics: > ClassName = CTestForm, Created = 6, Disposed = 6 > ClassName = CFormDataset, Created = 93823, Disposed = 93823 > > Shamil > <<< tail skipped >>> From jwcolby at ColbyConsulting.com Wed Mar 22 10:32:24 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Wed, 22 Mar 2006 11:32:24 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <005c01c64dc2$61e8d1c0$6501a8c0@Nant> Message-ID: <00a901c64dce$345fe7a0$647aa8c0@ColbyM6805> I am ashamed to even raise my hand given that I was the one that asked if this was possible and prompted your working on this, and then haven't even had time to test. But... Do we know what allowed him to get past the 2010 barrier, what the barrier is? And I will be testing this as I have a use for it in real life. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Wednesday, March 22, 2006 10:08 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Just got information from one of the great helping hand testers - they got it runing more than 2010 cycles! Therefore the high hopes now we are on the right track! <+ Test successfully finished. Backend: MS Access Binding: ADODB Cycles to pass: 2700 Cycles passed: 2700 Total errors: 0 Forms opened: 13500 Start time: 3/21/2006 4:04:06 PM End time: 3/21/2006 5:19:49 PM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 97337, Disposed = 97337 -> Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 22, 2006 5:31 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > BTW, some testers(great help, thank you!) reported that the test database > works badly with MS Access XP. > I did exprience the same issue on a PC where MS Access XP only is > installed. > > But when I tested with MS Access XP on a PC where MS Access 2003 is > installed then the test results were the same as on MS Access 2003. So my > guess is that the problem is somewhere in common libraries used by MS > Access > XP and MS Access 2003, which are upgraded by MS Access 2003 > installations(including SPs) but are absent in MS Access XP installatons > (including SPs). This needs more testing of course - JFYI: > > MS Access XP > =========== > > ADODB Bound Forms Crash Test v.1.9.2 [20-MAR-06] > > Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 3011 - The Microsoft Jet > database engine could not find the object ''. Make sure the object exists > and that you spell its name and the path name correctly. > > Backend: MS Access > Binding: ADODB > Cycles to pass: 3000 > Cycles passed: 2012 > Total errors: 1 > Forms opened: 10059 > Start time: 21.03.2006 16:08:38 > End time: 21.03.2006 21:29:04 > > Object statistics: > ClassName = CTestForm, Created = 6, Disposed = 6 > ClassName = CFormDataset, Created = 93823, Disposed = 93823 > > Shamil > <<< tail skipped >>> -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Wed Mar 22 12:45:07 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Wed, 22 Mar 2006 21:45:07 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <00a901c64dce$345fe7a0$647aa8c0@ColbyM6805> Message-ID: <00a101c64de0$c1963ea0$6501a8c0@Nant> >I am ashamed to even raise my hand given that I was the one that asked if > this was possible and prompted your working on this, No problem, John, you "switched on" an interesting topic and an advanced open source project, which I do think will bring useful for real work result - in fact one such result is here already (see below) > Do we know what allowed him to get past the 2010 barrier, > what the barrier is? Here is a lucky environment where the test passed 2700 cycles with 2700 defined as a max value i.e. it passed all the cycles OK. <+ Windows XP Pro SP2, Microsoft Access 2003 SP2, all other service packs are the latest, ADO 2.8. Hardware is IBM ThinkCentre with dual P4 3.2 GHz, 512 mb ram. -> <+ Backend: MS Access Binding: ADODB Cycles to pass: 2700 Cycles passed: 2700 Total errors: 0 Forms opened: 13500 Start time: 3/21/2006 4:04:06 PM End time: 3/21/2006 5:19:49 PM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 97337, Disposed = 97337 -> I will publish/post with pleasure the name of this lucky man/early adopter/great helping hand when I will get his permission. And I think the first three developers (or more?) will do deserve honorable mention on AccessD web-site in the next issue of Database Advisors Gazette - what about that? Anybody courageous soul to first reach 10000 cycles working OK - just put your PC crunching this test over week end if you have the "lucky environment". The memory consumption isn't high - when I get it stopped on ~2010 cycle MS Access has only 32MB in use - almost nothing for nowadays systems.... This is a really hardcore case and if solved it will be useful for all I think because it will define the safest current MS Access 2003 environment. It would be interesting to know how and why it comes that exactly around 2010 cycle the test breaks on MS Access 2003 SP1 but the answer can be obtained probably from MS Access development team only and the hopes to get this answer are currently low because they are busy working on MS Access 12 Beta 2 release... Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Wednesday, March 22, 2006 7:32 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >I am ashamed to even raise my hand given that I was the one that asked if > this was possible and prompted your working on this, and then haven't even > had time to test. But... > > Do we know what allowed him to get past the 2010 barrier, what the barrier > is? > > And I will be testing this as I have a use for it in real life. > > John W. Colby > www.ColbyConsulting.com > <<< tail skipped >>> From kathryn at bassett.net Wed Mar 22 13:05:30 2006 From: kathryn at bassett.net (Kathryn Bassett) Date: Wed, 22 Mar 2006 11:05:30 -0800 Subject: [AccessD] Access help needed by my brother's friend Message-ID: <20060322110533.2149237@dm17.mta.everyone.net> Phil, I'm forwarding your message to a list called AccessD run by DataBaseAdvisors http://www.databaseadvisors.com/lists/whatandhow.htm as the scope of your request is beyond my skills. I highly recommend you join the list right away to see answers from people who reply to the list instead of directly to you. I'm positive someone will be able to help you. -- Kathryn Rhinehart Bassett (Pasadena CA) "Genealogy is my bag" "GH is my soap" kathryn at bassett.net http://bassett.net -----Original Message----- From: Phil Huisman [mailto:pbhuisman at msn.com] Sent: 21 Mar 2006 7:02 am To: kathryn at bassett.net Subject: Ken Rhinehart My name is Phil Huisman and your brother Ken gave me your name as a possible contact for help with Microsoft Access. I recently developed an Access database program for a ministry I am involved with at Glenkirk Church called Shepherd's Pantry. We need a DB to track people we serve so I decided to give it a try. After some struggling, I have managed to create a DB I think will meet our needs but there is one problem: we have a network of three PC's at the Pantry and the DB cannot be updated by all three PC's. I did manage to get all three PC's to share the DB but only in the 'read only' mode. Any changes to the database on PC's 2 or 3 cannot be saved? We get an error message but I forget exactly what the message says. I am using Microsoft Office 2003 Access, and XP Home operating system on new Dell PC's. The three PC's are networked together through a Linksys router. I take it we cannot just use standard Access in a network and be able to update the database from multiple PC's? It occurred to me we made need to have a dedicated server running Windows NT or something like that? Anyway, I hope this makes sense and would certainly appreciate any help you can provide. Thank you, Phil Huisman From marcus at tsstech.com Wed Mar 22 13:44:48 2006 From: marcus at tsstech.com (Scott Marcus) Date: Wed, 22 Mar 2006 14:44:48 -0500 Subject: [AccessD] Access help needed by my brother's friend Message-ID: By default, read-only is how folders are shared in Windows XP when following the wizards. You need to give full access to the shared folder for all users. Understand the risks of doing this before actually doing it. Setting this up improperly could leave the PC open to outside attacks. Scott Marcus -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Kathryn Bassett Sent: Wednesday, March 22, 2006 2:06 PM To: 'Phil Huisman'; 'Access Developers discussion and problem solving' Subject: [AccessD] Access help needed by my brother's friend Phil, I'm forwarding your message to a list called AccessD run by DataBaseAdvisors http://www.databaseadvisors.com/lists/whatandhow.htm as the scope of your request is beyond my skills. I highly recommend you join the list right away to see answers from people who reply to the list instead of directly to you. I'm positive someone will be able to help you. -- Kathryn Rhinehart Bassett (Pasadena CA) "Genealogy is my bag" "GH is my soap" kathryn at bassett.net http://bassett.net -----Original Message----- From: Phil Huisman [mailto:pbhuisman at msn.com] Sent: 21 Mar 2006 7:02 am To: kathryn at bassett.net Subject: Ken Rhinehart My name is Phil Huisman and your brother Ken gave me your name as a possible contact for help with Microsoft Access. I recently developed an Access database program for a ministry I am involved with at Glenkirk Church called Shepherd's Pantry. We need a DB to track people we serve so I decided to give it a try. After some struggling, I have managed to create a DB I think will meet our needs but there is one problem: we have a network of three PC's at the Pantry and the DB cannot be updated by all three PC's. I did manage to get all three PC's to share the DB but only in the 'read only' mode. Any changes to the database on PC's 2 or 3 cannot be saved? We get an error message but I forget exactly what the message says. I am using Microsoft Office 2003 Access, and XP Home operating system on new Dell PC's. The three PC's are networked together through a Linksys router. I take it we cannot just use standard Access in a network and be able to update the database from multiple PC's? It occurred to me we made need to have a dedicated server running Windows NT or something like that? Anyway, I hope this makes sense and would certainly appreciate any help you can provide. Thank you, Phil Huisman -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com NOTICE: This electronic mail transmission is for the use of the named individual or entity to which it is directed and may contain information that is privileged or confidential. If you are not the intended recipient, any disclosure, copying, distribution or use of the contents of any information contained herein is prohibited. If you have received this electronic mail transmission in error, delete it from your system without copying or forwarding it, and notify the sender of the error by replying via email or calling TSS Technologies at (513) 772-7000, so that our address record can be corrected. Any information included in this email is provided on an ?as is? and ?where as? basis, and TSS Technologies makes no representations or warranties of any kind with respect to the completeness or accuracy of the information contained in this email. From garykjos at gmail.com Wed Mar 22 13:51:15 2006 From: garykjos at gmail.com (Gary Kjos) Date: Wed, 22 Mar 2006 13:51:15 -0600 Subject: [AccessD] Access help needed by my brother's friend In-Reply-To: <20060322110533.2149237@dm17.mta.everyone.net> References: <20060322110533.2149237@dm17.mta.everyone.net> Message-ID: HI Phil, The first thing that comes to my mind that could be causing your poblem would be - are the users given sufficient rights on the share to be able to CREATE, UPDATE and DELETE files on the share?? This FULL ACCESS is needed so that the LOCK file can be created when the user opens the database. If the user is not allowed to create files on the machine acting as the server, then the lock file cannot be created and so the database will be opened in read only mode. This will be an easy thing to determine - with the database open, IS there a file created with the same name as the database but with a file extension of .LDB instead of the database itself which has an MDB extension. No LDB file, then no updates. Gary Kjos garykjos at gmail.com On 3/22/06, Kathryn Bassett wrote: > Phil, I'm forwarding your message to a list called AccessD run by DataBaseAdvisors http://www.databaseadvisors.com/lists/whatandhow.htm as the scope of your request is beyond my skills. I highly recommend you join the list right away to see answers from people who reply to the list instead of directly to you. I'm positive someone will be able to help you. > -- > Kathryn Rhinehart Bassett (Pasadena CA) > "Genealogy is my bag" "GH is my soap" > kathryn at bassett.net > http://bassett.net > > -----Original Message----- > From: Phil Huisman [mailto:pbhuisman at msn.com] > Sent: 21 Mar 2006 7:02 am > To: kathryn at bassett.net > Subject: Ken Rhinehart > > My name is Phil Huisman and your brother Ken gave me your name as a possible contact for help with Microsoft Access. I recently developed an Access database program for a ministry I am involved with at Glenkirk Church called Shepherd's Pantry. We need a DB to track people we serve so I decided to give it a try. After some struggling, I have managed to create a DB I think will meet our needs but there is one problem: we have a network of three PC's at the Pantry and the DB cannot be updated by all three PC's. I did manage to get all three PC's to share the DB but only in the 'read only' mode. Any changes to the database on PC's 2 or 3 cannot be saved? We get an error message but I forget exactly what the message says. > > I am using Microsoft Office 2003 Access, and XP Home operating system on new Dell PC's. The three PC's are networked together through a Linksys router. I take it we cannot just use standard Access in a network and be able to update the database from multiple PC's? It occurred to me we made need to have a dedicated server running Windows NT or something like that? Anyway, I hope this makes sense and would certainly appreciate any help you can provide. > > Thank you, > > Phil Huisman > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Gary Kjos garykjos at gmail.com From cyx5 at cdc.gov Wed Mar 22 13:31:46 2006 From: cyx5 at cdc.gov (Nicholson, Karen) Date: Wed, 22 Mar 2006 14:31:46 -0500 Subject: [AccessD] Access help needed by my brother's friend Message-ID: I sent him off line an answer and told him to join our group - told him to split it, etc. Karen S. Nicholson Programmer Analyst EG&G Technical Services, Inc. Pittsburgh, PA Phone: 412-386-6649 Email: cyx5 at cdc.gov -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Kathryn Bassett Sent: Wednesday, March 22, 2006 2:06 PM To: 'Phil Huisman'; 'Access Developers discussion and problem solving' Subject: [AccessD] Access help needed by my brother's friend Phil, I'm forwarding your message to a list called AccessD run by DataBaseAdvisors http://www.databaseadvisors.com/lists/whatandhow.htm as the scope of your request is beyond my skills. I highly recommend you join the list right away to see answers from people who reply to the list instead of directly to you. I'm positive someone will be able to help you. -- Kathryn Rhinehart Bassett (Pasadena CA) "Genealogy is my bag" "GH is my soap" kathryn at bassett.net http://bassett.net -----Original Message----- From: Phil Huisman [mailto:pbhuisman at msn.com] Sent: 21 Mar 2006 7:02 am To: kathryn at bassett.net Subject: Ken Rhinehart My name is Phil Huisman and your brother Ken gave me your name as a possible contact for help with Microsoft Access. I recently developed an Access database program for a ministry I am involved with at Glenkirk Church called Shepherd's Pantry. We need a DB to track people we serve so I decided to give it a try. After some struggling, I have managed to create a DB I think will meet our needs but there is one problem: we have a network of three PC's at the Pantry and the DB cannot be updated by all three PC's. I did manage to get all three PC's to share the DB but only in the 'read only' mode. Any changes to the database on PC's 2 or 3 cannot be saved? We get an error message but I forget exactly what the message says. I am using Microsoft Office 2003 Access, and XP Home operating system on new Dell PC's. The three PC's are networked together through a Linksys router. I take it we cannot just use standard Access in a network and be able to update the database from multiple PC's? It occurred to me we made need to have a dedicated server running Windows NT or something like that? Anyway, I hope this makes sense and would certainly appreciate any help you can provide. Thank you, Phil Huisman -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Wed Mar 22 14:36:16 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Wed, 22 Mar 2006 23:36:16 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <00a901c64dce$345fe7a0$647aa8c0@ColbyM6805> <00a101c64de0$c1963ea0$6501a8c0@Nant> Message-ID: <003a01c64df0$49a77980$6501a8c0@Nant> Hi All, Please to not rush to upgrade for MS Office/Access SP2 - as Gustav noted you may get your MS Excel attached worksheets unupdatable: <<< You cannot change, add, or delete data in tables that are linked to an Excel workbook in Office Access 2003 or in Access 2002 http://support.microsoft.com/kb/904953/ >>> <<< Description of Office 2003 Service Pack 2 http://support.microsoft.com/kb/887616 >>> Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 22, 2006 9:45 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > >I am ashamed to even raise my hand given that I was the one that asked if >> this was possible and prompted your working on this, > No problem, John, you "switched on" an interesting topic and an advanced > open source project, which I do think will bring useful for real work > result - in fact one such result is here already (see below) > >> Do we know what allowed him to get past the 2010 barrier, >> what the barrier is? > Here is a lucky environment where the test passed 2700 cycles with 2700 > defined as a max value i.e. it passed all the cycles OK. > <+ > Windows XP Pro SP2, > Microsoft Access 2003 SP2, > all other service packs are the latest, > ADO 2.8. > Hardware is IBM ThinkCentre with dual P4 3.2 GHz, 512 mb ram. > -> > > <+ > Backend: MS Access > Binding: ADODB > Cycles to pass: 2700 > Cycles passed: 2700 > Total errors: 0 > Forms opened: 13500 > Start time: 3/21/2006 4:04:06 PM > End time: 3/21/2006 5:19:49 PM > > Object statistics: > ClassName = CTestForm, Created = 6, Disposed = 6 > ClassName = CFormDataset, Created = 97337, Disposed = 97337 > -> > > I will publish/post with pleasure the name of this lucky man/early > adopter/great helping hand when I will get his permission. > > And I think the first three developers (or more?) will do deserve > honorable > mention on AccessD web-site in the next issue of Database Advisors > Gazette - > what about that? > > Anybody courageous soul to first reach 10000 cycles working OK - just put > your PC crunching this test over week end if you have the "lucky > environment". The memory consumption isn't high - when I get it stopped on > ~2010 cycle MS Access has only 32MB in use - almost nothing for nowadays > systems.... > > This is a really hardcore case and if solved it will be useful for all I > think because it will define the safest current MS Access 2003 > environment. > > It would be interesting to know how and why it comes that exactly around > 2010 cycle the test breaks on MS Access 2003 SP1 but the answer can be > obtained probably from MS Access development team only and the hopes to > get > this answer are currently low because they are busy working on MS Access > 12 > Beta 2 release... > > Shamil <<< taile skipped >>> From Jeff at outbaktech.com Wed Mar 22 17:50:57 2006 From: Jeff at outbaktech.com (Jeff Barrows) Date: Wed, 22 Mar 2006 17:50:57 -0600 Subject: [AccessD] FW: Focus database Message-ID: Anyone have any suggestions on where to look for information on reverse engineering a FOCUS database? Jeff Barrows MCP, MCAD, MCSD Outbak Technologies, LLC Racine, WI Phone: (262) 886-5913 Fax: (262) 886-5932 jeff at outbaktech.com From artful at rogers.com Wed Mar 22 21:10:19 2006 From: artful at rogers.com (Arthur Fuller) Date: Wed, 22 Mar 2006 22:10:19 -0500 Subject: [AccessD] Unexpected Critical Error: Can't Start Program Message-ID: <025d01c64e27$5165e080$8e01a8c0@Camelot.com> Lately an app I'm working on is giving this error when I exit it. I have no idea what change I made caused this. Anyone got a clue? TIA, Arthur From darsant at gmail.com Wed Mar 22 21:21:27 2006 From: darsant at gmail.com (Josh McFarlane) Date: Wed, 22 Mar 2006 21:21:27 -0600 Subject: [AccessD] Unexpected Critical Error: Can't Start Program In-Reply-To: <025d01c64e27$5165e080$8e01a8c0@Camelot.com> References: <025d01c64e27$5165e080$8e01a8c0@Camelot.com> Message-ID: <53c8e05a0603221921t5634f180s15561c5047c86a15@mail.gmail.com> On 3/22/06, Arthur Fuller wrote: > Lately an app I'm working on is giving this error when I exit it. I have no > idea what change I made caused this. > Anyone got a clue? Might be a missing DLL dependancy? I know when I make MFC C++ applications, if they don't have the mfcXX.dll it will give a similar error. -- Josh McFarlane "Peace cannot be kept by force. It can only be achieved by understanding." -Albert Einstein From shamil at users.mns.ru Wed Mar 22 23:32:08 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Thu, 23 Mar 2006 08:32:08 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant><004601c64932$45f25660$6501a8c0@Nant><000801c649ea$ef906370$6501a8c0@Nant><000a01c64c27$65ddfb80$6501a8c0@Nant><000e01c64d24$70070ef0$6501a8c0@Nant><000c01c64db9$f195e960$6501a8c0@Nant> <003a01c64dbd$65180af0$6501a8c0@Nant> Message-ID: <001401c64e3b$2c6f81a0$6501a8c0@Nant> Hi All, New version (1.9.5) of the subject test released at http://smsconsulting.spb.ru/download/tests/a2dds.htm It collects complete MS Access process information (loaded DLLs) now and writes it to XML file. It also collects system information(menory usage, MS Access context and locale) and writes into XML file. Both XML files are well formed and can be imported into MS Access database. Now it's possible to compare Access 2003 SP1 and Access 2003 SP2 and related DLLs versions to see which ones are upgraded in MS Access SP2... Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 22, 2006 5:31 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > BTW, some testers(great help, thank you!) reported that the test database > works badly with MS Access XP. > I did exprience the same issue on a PC where MS Access XP only is > installed. > > But when I tested with MS Access XP on a PC where MS Access 2003 is > installed then the test results were the same as on MS Access 2003. So my > guess is that the problem is somewhere in common libraries used by MS > Access > XP and MS Access 2003, which are upgraded by MS Access 2003 > installations(including SPs) but are absent in MS Access XP installatons > (including SPs). This needs more testing of course - JFYI: > > MS Access XP > =========== > > ADODB Bound Forms Crash Test v.1.9.2 [20-MAR-06] > > Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 3011 - The Microsoft Jet > database engine could not find the object ''. Make sure the object exists > and that you spell its name and the path name correctly. > > Backend: MS Access > Binding: ADODB > Cycles to pass: 3000 > Cycles passed: 2012 > Total errors: 1 > Forms opened: 10059 > Start time: 21.03.2006 16:08:38 > End time: 21.03.2006 21:29:04 > > Object statistics: > ClassName = CTestForm, Created = 6, Disposed = 6 > ClassName = CFormDataset, Created = 93823, Disposed = 93823 > > Shamil > <<< tail >>> From bheid at appdevgrp.com Thu Mar 23 07:12:50 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Thu, 23 Mar 2006 08:12:50 -0500 Subject: [AccessD] Access help needed by my brother's friend In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D78BF6@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D35152@ADGSERVER> Phil, I am assuming that you have the forms/code and the tables in one database. You need to split the database into a front-end (FE) and back-end (BE). That is, you have a database that only contains the data (tables) and another database that has all of the code/forms/reports/etc. in it. You link to the tables in the BE from the FE by going to File/Get External Data/Link tables and then locating the BE and selecting all of the tables that you want to be linked to the FE. Then you put the BE in one place and distribute the FE to all of the users. Without going into a lot of detail about auto-linking the tables, you should link the tables in each FE database to the one BE database. Hope this helps, Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Kathryn Bassett Sent: Wednesday, March 22, 2006 2:06 PM To: 'Phil Huisman'; 'Access Developers discussion and problem solving' Subject: [AccessD] Access help needed by my brother's friend Phil, I'm forwarding your message to a list called AccessD run by DataBaseAdvisors http://www.databaseadvisors.com/lists/whatandhow.htm as the scope of your request is beyond my skills. I highly recommend you join the list right away to see answers from people who reply to the list instead of directly to you. I'm positive someone will be able to help you. -- Kathryn Rhinehart Bassett (Pasadena CA) "Genealogy is my bag" "GH is my soap" kathryn at bassett.net http://bassett.net -----Original Message----- From: Phil Huisman [mailto:pbhuisman at msn.com] Sent: 21 Mar 2006 7:02 am To: kathryn at bassett.net Subject: Ken Rhinehart My name is Phil Huisman and your brother Ken gave me your name as a possible contact for help with Microsoft Access. I recently developed an Access database program for a ministry I am involved with at Glenkirk Church called Shepherd's Pantry. We need a DB to track people we serve so I decided to give it a try. After some struggling, I have managed to create a DB I think will meet our needs but there is one problem: we have a network of three PC's at the Pantry and the DB cannot be updated by all three PC's. I did manage to get all three PC's to share the DB but only in the 'read only' mode. Any changes to the database on PC's 2 or 3 cannot be saved? We get an error message but I forget exactly what the message says. I am using Microsoft Office 2003 Access, and XP Home operating system on new Dell PC's. The three PC's are networked together through a Linksys router. I take it we cannot just use standard Access in a network and be able to update the database from multiple PC's? It occurred to me we made need to have a dedicated server running Windows NT or something like that? Anyway, I hope this makes sense and would certainly appreciate any help you can provide. Thank you, Phil Huisman From Jdemarco at hudsonhealthplan.org Thu Mar 23 07:57:59 2006 From: Jdemarco at hudsonhealthplan.org (Jim DeMarco) Date: Thu, 23 Mar 2006 08:57:59 -0500 Subject: [AccessD] Access and .NET Message-ID: <08F823FD83787D4BA0B99CA580AD3C74016C467B@TTNEXCHCL2.hshhp.com> Hello All, I'm just reading the March 15 edition of Software Development Times and I see that M$ has released the beta of something called Visual Studio Tools for Applications SDK. From the article it looks like VB and C# may be available to VBA developers in Office 2007. The beta is a Community Technology preview so I don't thinks it's available to the general public yet. Interesting eh? Jim DeMarco *********************************************************************************** "This electronic message is intended to be for the use only of the named recipient, and may contain information from Hudson Health Plan (HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". *********************************************************************************** From shamil at users.mns.ru Thu Mar 23 08:13:56 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Thu, 23 Mar 2006 17:13:56 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant><004601c64932$45f25660$6501a8c0@Nant><000801c649ea$ef906370$6501a8c0@Nant><000a01c64c27$65ddfb80$6501a8c0@Nant><000e01c64d24$70070ef0$6501a8c0@Nant><000c01c64db9$f195e960$6501a8c0@Nant><003a01c64dbd$65180af0$6501a8c0@Nant> <001401c64e3b$2c6f81a0$6501a8c0@Nant> Message-ID: <005101c64e84$119b5540$6501a8c0@Nant> Hi All, New version (1.9.6) of the subject test released at http://smsconsulting.spb.ru/download/tests/a2dds.htm You can now use Customers form to manually add and deleted rows, which are bound to disconnected ADODB recordsets. The code to automate testing of inserting and deleting is under development. And it is planned to be released over weekend. Here are two new success stories for the test - over 2010 cycles passed OK (not my PC - others) - Access SP2 seems to be a solution: <<<+ Test successfully finished. Backend: MS Access Binding: ADODB Cycles to pass: 3000 Cycles passed: 3000 Total errors: 0 Forms opened: 15000 Start time: 3/22/2006 2:10:25 PM End time: 3/22/2006 4:28:43 PM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 107634, Disposed = 107634 ->>> <<<+ Backend: MS Access Binding: ADODB Cycles to pass: 2600 Cycles passed: 2600 Total errors: 0 Forms opened: 13000 Start time: 22/03/2006 10:00:18 AM End time: 22/03/2006 2:21:28 PM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 93583, Disposed = 93583 ->>> Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Thursday, March 23, 2006 8:32 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > New version (1.9.5) of the subject test released at > > http://smsconsulting.spb.ru/download/tests/a2dds.htm > > It collects complete MS Access process information (loaded DLLs) now and > writes it to XML file. > It also collects system information(menory usage, MS Access context and > locale) and writes into XML file. > > Both XML files are well formed and can be imported into MS Access > database. > > Now it's possible to compare Access 2003 SP1 and Access 2003 SP2 and > related > DLLs versions to see which ones are upgraded in MS Access SP2... > > Shamil > <<< tail skipped >>> From erbachs at gmail.com Thu Mar 23 10:55:21 2006 From: erbachs at gmail.com (Steve Erbach) Date: Thu, 23 Mar 2006 10:55:21 -0600 Subject: [AccessD] Access and .NET In-Reply-To: <08F823FD83787D4BA0B99CA580AD3C74016C467B@TTNEXCHCL2.hshhp.com> References: <08F823FD83787D4BA0B99CA580AD3C74016C467B@TTNEXCHCL2.hshhp.com> Message-ID: <39cb22f30603230855t5b8545d9n9b139c5919829666@mail.gmail.com> Jim, Just received my MSDN Universal update yesterday and it contained the Visual Studio 2005 Tools for the Microsoft Office System, aka VSTO. There's an MSDN blog for it: http://blogs.msdn.com/vsto2/ More Microsoft info: http://msdn.microsoft.com/office/understanding/vsto/ Steve Erbach Neenah, WI http://TheTownCrank.blogspot.com On 3/23/06, Jim DeMarco wrote: > Hello All, > > I'm just reading the March 15 edition of Software Development Times and > I see that M$ has released the beta of something called Visual Studio > Tools for Applications SDK. From the article it looks like VB and C# may > be available to VBA developers in Office 2007. The beta is a Community > Technology preview so I don't thinks it's available to the general > public yet. > > Interesting eh? > > Jim DeMarco > > > *********************************************************************************** From prodevmg at yahoo.com Thu Mar 23 13:01:30 2006 From: prodevmg at yahoo.com (Lonnie Johnson) Date: Thu, 23 Mar 2006 11:01:30 -0800 (PST) Subject: [AccessD] Validating user and password against Active Directory Message-ID: <20060323190130.13221.qmail@web33108.mail.mud.yahoo.com> Does anyone have vba code that I can use to validate a username and password against active directory? May God bless you beyond your imagination! Lonnie Johnson ProDev, Professional Development of MS Access Databases Visit me at ==> http://www.prodev.us --------------------------------- New Yahoo! Messenger with Voice. Call regular phones from your PC and save big. From shamil at users.mns.ru Fri Mar 24 04:50:51 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Fri, 24 Mar 2006 13:50:51 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant><004601c64932$45f25660$6501a8c0@Nant><000801c649ea$ef906370$6501a8c0@Nant><000a01c64c27$65ddfb80$6501a8c0@Nant><000e01c64d24$70070ef0$6501a8c0@Nant><000c01c64db9$f195e960$6501a8c0@Nant><003a01c64dbd$65180af0$6501a8c0@Nant><001401c64e3b$2c6f81a0$6501a8c0@Nant> <005101c64e84$119b5540$6501a8c0@Nant> Message-ID: <002d01c64f30$d70c2640$6501a8c0@Nant> Hi All, New version (1.9.7) is available on http://smsconsulting.spb.ru/download/tests/a2dds.htm - this is just a maintenance/bug fix release - no new features. Best regards, Shamil -- Web: http://smsconsulting.spb.ru/shamil_s ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Thursday, March 23, 2006 5:13 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > New version (1.9.6) of the subject test released at > > http://smsconsulting.spb.ru/download/tests/a2dds.htm > > You can now use Customers form to manually add and deleted rows, which are > bound to disconnected ADODB recordsets. > The code to automate testing of inserting and deleting is under > development. > And it is planned to be released over weekend. > > Here are two new success stories for the test - over 2010 cycles passed OK > (not my PC - others) - Access SP2 seems to be a solution: > > <<<+ > Test successfully finished. > > Backend: MS Access > Binding: ADODB > Cycles to pass: 3000 > Cycles passed: 3000 > Total errors: 0 > Forms opened: 15000 > Start time: 3/22/2006 2:10:25 PM > End time: 3/22/2006 4:28:43 PM > > Object statistics: > ClassName = CTestForm, Created = 6, Disposed = 6 > ClassName = CFormDataset, Created = 107634, Disposed = 107634 > ->>> > > <<<+ > Backend: MS Access > Binding: ADODB > Cycles to pass: 2600 > Cycles passed: 2600 > Total errors: 0 > Forms opened: 13000 > Start time: 22/03/2006 10:00:18 AM > End time: 22/03/2006 2:21:28 PM > > Object statistics: > ClassName = CTestForm, Created = 6, Disposed = 6 > ClassName = CFormDataset, Created = 93583, Disposed = 93583 > ->>> > > Shamil > > ----- Original Message ----- > From: "Shamil Salakhetdinov" > To: "Access Developers discussion and problem solving" > > Sent: Thursday, March 23, 2006 8:32 AM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Hi All, >> >> New version (1.9.5) of the subject test released at >> >> http://smsconsulting.spb.ru/download/tests/a2dds.htm >> >> It collects complete MS Access process information (loaded DLLs) now and >> writes it to XML file. >> It also collects system information(menory usage, MS Access context and >> locale) and writes into XML file. >> >> Both XML files are well formed and can be imported into MS Access >> database. >> >> Now it's possible to compare Access 2003 SP1 and Access 2003 SP2 and >> related >> DLLs versions to see which ones are upgraded in MS Access SP2... >> >> Shamil >> > <<< tail skipped >>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From shamil at users.mns.ru Fri Mar 24 05:37:58 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Fri, 24 Mar 2006 14:37:58 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant><004601c64932$45f25660$6501a8c0@Nant><000801c649ea$ef906370$6501a8c0@Nant><000a01c64c27$65ddfb80$6501a8c0@Nant><000e01c64d24$70070ef0$6501a8c0@Nant><000c01c64db9$f195e960$6501a8c0@Nant><003a01c64dbd$65180af0$6501a8c0@Nant><001401c64e3b$2c6f81a0$6501a8c0@Nant><005101c64e84$119b5540$6501a8c0@Nant> <002d01c64f30$d70c2640$6501a8c0@Nant> Message-ID: <011c01c64f37$6c442a40$6501a8c0@Nant> Hi All, I wanted to inform you about the current results: The absolute for today result is achieved on Jim Moss system (MS Access 2003 SP2): - 8729 cycles or - 43644 opened forms (these are 130932 updates - I will add update counters later when inserts and deletes will be ready). It breaks even with MS Access SP2 but the memory consumption on this breaking is normal - ~32MB. Seems to be a Jet problem(see below) not MS Access? (It has to be rechecked) This information and the fact that 43644 opened forms is a way above of the quantity of forms, which are usually opened manually during one working day (43644/8/60/60 = ~1.52 opened form/second) lets to continue the testing and to add the new functionality. Current statistics: ----------------------- The one who fired(started I mean :)) this whole thread ========================================= John Colby of course. The best support/max test runs ======================== Author: Keith & Sandra (Keith) ------------------------------------------ They have Access SP1 system therefore ~2010 barrier isn't yet passed The best inspirer to run this test after he did run it ====================================== Gustav Brock - his appeal to run the test resulted in many new helpful test runs and we got passed ~2010 barrier The first three positive results above ~2010 barrier ======================================= 1. Author: Jim Moss ---------------------------- Backend: MS Access Binding: ADODB Cycles to pass: 2700 Cycles passed: 2700 Total errors: 0 Forms opened: 13500 Start time: 3/21/2006 4:04:06 PM End time: 3/21/2006 5:19:49 PM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 97337, Disposed = 97337 2. Author Marty Connelly ------------------------------------ Backend: MS Access Binding: ADODB Cycles to pass: 2600 Cycles passed: 2600 Total errors: 0 Forms opened: 13000 Start time: 22/03/2006 10:00:18 AM End time: 22/03/2006 2:21:28 PM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 93583, Disposed = 93583 3. Author: Jim DeMarco --------------------------------- Backend: MS Access Binding: ADODB Cycles to pass: 3000 Cycles passed: 3000 Total errors: 0 Forms opened: 15000 Start time: 3/22/2006 2:10:25 PM End time: 3/22/2006 4:28:43 PM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 107634, Disposed = 107634 Top result for today: 24-MAR-06 14:18 (GMT+3) ===================================== Author: Jim Moss ------------------------- Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 3011 - The Microsoft Jet database engine could not find the object ''. Make sure the object exists and that you spell its name and the path name correctly. Backend: MS Access Binding: ADODB Cycles to pass: 12500 Cycles passed: 8729 Total errors: 1 Forms opened: 43644 Start time: 3/22/2006 6:31:11 PM End time: 3/23/2006 9:10:46 AM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 313198, Disposed = 313198 Second top result for today ==================== Author: Rocky Smolin ------------------------------ ADODB Bound Forms Crash Test v.1.9.6 [23-MAR-06] Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 3011 - The Microsoft Jet database engine could not find the object ''. Make sure the object exists and that you spell its name and the path name correctly. Backend: MS Access Binding: ADODB Cycles to pass: 20000 Cycles passed: 6129 Total errors: 1 Forms opened: 30644 Start time: 3/23/2006 7:54:55 PM End time: 3/23/2006 10:47:24 PM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 220163, Disposed = 220163 ---------- Thank you a lot for your support - it gives the assurance that the final successful result will be reached! I plan to reorganize the web page(s) dedicated to this test and the names of all the supporters (with their permission) will be published on it. No e-mail addresses of course to prevent spam scripers to collect them. Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Friday, March 24, 2006 1:50 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Hi All, > > New version (1.9.7) is available on > http://smsconsulting.spb.ru/download/tests/a2dds.htm - this is just a > maintenance/bug fix release - no new features. > > Shamil <<< tail skipped >>> From viner at EUnet.yu Fri Mar 24 06:41:41 2006 From: viner at EUnet.yu (Ervin Brindza) Date: Fri, 24 Mar 2006 13:41:41 +0100 Subject: [AccessD] Access and MySQL Message-ID: <007b01c64f40$585cdd20$0100a8c0@RazvojErvin> I know, today is Friday, but I just started to "play" with Access connected (throught MyODBC) and MySQL. Can you recommend any useful: hint, code, sample application? TIA, Ervin From bchacc at san.rr.com Fri Mar 24 08:27:59 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Fri, 24 Mar 2006 06:27:59 -0800 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <002d01c64f30$d70c2640$6501a8c0@Nant> References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805> <001301c6472c$d5602960$6501a8c0@Nant> <001001c64751$d4b89ef0$6501a8c0@Nant> <007101c6478b$4c9e8040$6501a8c0@Nant> <001201c647a3$3283af10$6501a8c0@Nant> <001101c64810$f9ad0420$6501a8c0@Nant> <004601c64932$45f25660$6501a8c0@Nant> <000801c649ea$ef906370$6501a8c0@Nant> <000a01c64c27$65ddfb80$6501a8c0@Nant> <000e01c64d24$70070ef0$6501a8c0@Nant> <000c01c64db9$f195e960$6501a8c0@Nant> <003a01c64dbd$65180af0$6501a8c0@Nant> <001401c64e3b$2c6f81a0$6501a8c0@Nant> <005101c64e84$119b5540$6501a8c0@Nant> <002d01c64f30$d70c2640$6501a8c0@Nant> Message-ID: <442401EF.2040704@san.rr.com> Shamil: Do you want us to run it again with this new version? Rocky Shamil Salakhetdinov wrote: > Hi All, > > New version (1.9.7) is available on > http://smsconsulting.spb.ru/download/tests/a2dds.htm - this is just a > maintenance/bug fix release - no new features. > > Best regards, > Shamil > -- > Web: http://smsconsulting.spb.ru/shamil_s > > ----- Original Message ----- > From: "Shamil Salakhetdinov" > To: "Access Developers discussion and problem solving" > > Sent: Thursday, March 23, 2006 5:13 PM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > > >> Hi All, >> >> New version (1.9.6) of the subject test released at >> >> http://smsconsulting.spb.ru/download/tests/a2dds.htm >> >> You can now use Customers form to manually add and deleted rows, which are >> bound to disconnected ADODB recordsets. >> The code to automate testing of inserting and deleting is under >> development. >> And it is planned to be released over weekend. >> >> Here are two new success stories for the test - over 2010 cycles passed OK >> (not my PC - others) - Access SP2 seems to be a solution: >> >> <<<+ >> Test successfully finished. >> >> Backend: MS Access >> Binding: ADODB >> Cycles to pass: 3000 >> Cycles passed: 3000 >> Total errors: 0 >> Forms opened: 15000 >> Start time: 3/22/2006 2:10:25 PM >> End time: 3/22/2006 4:28:43 PM >> >> Object statistics: >> ClassName = CTestForm, Created = 6, Disposed = 6 >> ClassName = CFormDataset, Created = 107634, Disposed = 107634 >> ->>> >> >> <<<+ >> Backend: MS Access >> Binding: ADODB >> Cycles to pass: 2600 >> Cycles passed: 2600 >> Total errors: 0 >> Forms opened: 13000 >> Start time: 22/03/2006 10:00:18 AM >> End time: 22/03/2006 2:21:28 PM >> >> Object statistics: >> ClassName = CTestForm, Created = 6, Disposed = 6 >> ClassName = CFormDataset, Created = 93583, Disposed = 93583 >> ->>> >> >> Shamil >> >> ----- Original Message ----- >> From: "Shamil Salakhetdinov" >> To: "Access Developers discussion and problem solving" >> >> Sent: Thursday, March 23, 2006 8:32 AM >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> >> >>> Hi All, >>> >>> New version (1.9.5) of the subject test released at >>> >>> http://smsconsulting.spb.ru/download/tests/a2dds.htm >>> >>> It collects complete MS Access process information (loaded DLLs) now and >>> writes it to XML file. >>> It also collects system information(menory usage, MS Access context and >>> locale) and writes into XML file. >>> >>> Both XML files are well formed and can be imported into MS Access >>> database. >>> >>> Now it's possible to compare Access 2003 SP1 and Access 2003 SP2 and >>> related >>> DLLs versions to see which ones are upgraded in MS Access SP2... >>> >>> Shamil >>> >>> >> <<< tail skipped >>> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From pbhuisman at msn.com Fri Mar 24 09:01:07 2006 From: pbhuisman at msn.com (Phil Huisman) Date: Fri, 24 Mar 2006 07:01:07 -0800 Subject: [AccessD] Access help needed by my brother's friend References: <916187228923D311A6FE00A0CC3FAA30D35152@ADGSERVER> Message-ID: Bobby, Thank you for the information. I noticed there is a wizard for splitting the database, which I tried and it successfully created a BE database with only the tables. What confused me is the original DB still has the tables in it. I kind of expected the tables to be removed when the BE was created. So, does that mean I need to manually create another DB with only the forms, queries, etc. for the FE? Once I have a FE without tables and the BE with only tables, the BE resides on the host computer and the FE is distributes to the other PC's on the network? To distribute the FE do I simply copy the same FE DB to the other PC's on the network? Is the linking routine done from the host PC that has the BE DB or from the other PC's that have the FE DB? Or does it matter? Once all of this is accomplished, will multiple PC's be able to update the BE DB simultaneously, assuming they are not updating the same record? I hope this makes sense. Phil ----- Original Message ----- From: Bobby Heid To: 'Access Developers discussion and problem solving' ; 'Phil Huisman' Sent: Thursday, March 23, 2006 5:12 AM Subject: Re: [AccessD] Access help needed by my brother's friend Phil, I am assuming that you have the forms/code and the tables in one database. You need to split the database into a front-end (FE) and back-end (BE). That is, you have a database that only contains the data (tables) and another database that has all of the code/forms/reports/etc. in it. You link to the tables in the BE from the FE by going to File/Get External Data/Link tables and then locating the BE and selecting all of the tables that you want to be linked to the FE. Then you put the BE in one place and distribute the FE to all of the users. Without going into a lot of detail about auto-linking the tables, you should link the tables in each FE database to the one BE database. Hope this helps, Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Kathryn Bassett Sent: Wednesday, March 22, 2006 2:06 PM To: 'Phil Huisman'; 'Access Developers discussion and problem solving' Subject: [AccessD] Access help needed by my brother's friend Phil, I'm forwarding your message to a list called AccessD run by DataBaseAdvisors http://www.databaseadvisors.com/lists/whatandhow.htm as the scope of your request is beyond my skills. I highly recommend you join the list right away to see answers from people who reply to the list instead of directly to you. I'm positive someone will be able to help you. -- Kathryn Rhinehart Bassett (Pasadena CA) "Genealogy is my bag" "GH is my soap" kathryn at bassett.net http://bassett.net -----Original Message----- From: Phil Huisman [mailto:pbhuisman at msn.com] Sent: 21 Mar 2006 7:02 am To: kathryn at bassett.net Subject: Ken Rhinehart My name is Phil Huisman and your brother Ken gave me your name as a possible contact for help with Microsoft Access. I recently developed an Access database program for a ministry I am involved with at Glenkirk Church called Shepherd's Pantry. We need a DB to track people we serve so I decided to give it a try. After some struggling, I have managed to create a DB I think will meet our needs but there is one problem: we have a network of three PC's at the Pantry and the DB cannot be updated by all three PC's. I did manage to get all three PC's to share the DB but only in the 'read only' mode. Any changes to the database on PC's 2 or 3 cannot be saved? We get an error message but I forget exactly what the message says. I am using Microsoft Office 2003 Access, and XP Home operating system on new Dell PC's. The three PC's are networked together through a Linksys router. I take it we cannot just use standard Access in a network and be able to update the database from multiple PC's? It occurred to me we made need to have a dedicated server running Windows NT or something like that? Anyway, I hope this makes sense and would certainly appreciate any help you can provide. Thank you, Phil Huisman -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Fri Mar 24 09:47:54 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Fri, 24 Mar 2006 18:47:54 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant><004601c64932$45f25660$6501a8c0@Nant><000801c649ea$ef906370$6501a8c0@Nant><000a01c64c27$65ddfb80$6501a8c0@Nant><000e01c64d24$70070ef0$6501a8c0@Nant><000c01c64db9$f195e960$6501a8c0@Nant><003a01c64dbd$65180af0$6501a8c0@Nant><001401c64e3b$2c6f81a0$6501a8c0@Nant><005101c64e84$119b5540$6501a8c0@Nant><002d01c64f30$d70c2640$6501a8c0@Nant> <442401EF.2040704@san.rr.com> Message-ID: <007101c64f5a$55061230$6501a8c0@Nant> Thank you, Rocky, I maybe prepare this night some corrections to try to catch the problem below with more log information written and then it should be possible to run the test on weekend - below are the two results (yours) and from Jim Moss - they are for different backends but break on the same 8729 cycle. Looks like a pattern. But I must say I think I see something like that the first time in my long programming experience. Very strange. Any explanations, anybody? (Please note that the quantity of created custom classes are different for these two cases - this is probably because the class instance for subform was created less times in the second case because creation of this class instance depends on data and the data "shuffling" and updating use random numbers generator....). Jim Moss ======== ADODB Bound Forms Crash Test v.1.9.6 [23-MAR-06] Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 2113 - The value you entered isn't valid for this field. Backend: MS SQL Binding: ADODB Cycles to pass: 10000 Cycles passed: 8729 Total errors: 1 Forms opened: 43644 Start time: 3/23/2006 4:32:18 PM End time: 3/24/2006 6:13:39 AM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 271651, Disposed = 271651 Rocky Smolin ============ ADODB Bound Forms Crash Test v.1.9.6 [23-MAR-06] Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 2113 - The value you entered isn't valid for this field. Backend: MS Access Binding: ADODB Cycles to pass: 20000 Cycles passed: 8729 Total errors: 1 Forms opened: 43644 Start time: 3/23/2006 10:49:52 PM End time: 3/24/2006 5:48:18 AM Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 269530, Disposed = 269530 Shamil ----- Original Message ----- From: "Rocky Smolin - Beach Access Software" To: "Access Developers discussion and problem solving" Sent: Friday, March 24, 2006 5:27 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil: > > Do you want us to run it again with this new version? > > Rocky > > Shamil Salakhetdinov wrote: >> Hi All, >> >> New version (1.9.7) is available on >> http://smsconsulting.spb.ru/download/tests/a2dds.htm - this is just a >> maintenance/bug fix release - no new features. >> >> Best regards, >> Shamil >> -- >> Web: http://smsconsulting.spb.ru/shamil_s >> >> ----- Original Message ----- >> From: "Shamil Salakhetdinov" >> To: "Access Developers discussion and problem solving" >> >> Sent: Thursday, March 23, 2006 5:13 PM >> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> >> >> >>> Hi All, >>> >>> New version (1.9.6) of the subject test released at >>> >>> http://smsconsulting.spb.ru/download/tests/a2dds.htm >>> >>> You can now use Customers form to manually add and deleted rows, which >>> are >>> bound to disconnected ADODB recordsets. >>> The code to automate testing of inserting and deleting is under >>> development. >>> And it is planned to be released over weekend. >>> >>> Here are two new success stories for the test - over 2010 cycles passed >>> OK >>> (not my PC - others) - Access SP2 seems to be a solution: >>> >>> <<<+ >>> Test successfully finished. >>> >>> Backend: MS Access >>> Binding: ADODB >>> Cycles to pass: 3000 >>> Cycles passed: 3000 >>> Total errors: 0 >>> Forms opened: 15000 >>> Start time: 3/22/2006 2:10:25 PM >>> End time: 3/22/2006 4:28:43 PM >>> >>> Object statistics: >>> ClassName = CTestForm, Created = 6, Disposed = 6 >>> ClassName = CFormDataset, Created = 107634, Disposed = 107634 >>> ->>> >>> >>> <<<+ >>> Backend: MS Access >>> Binding: ADODB >>> Cycles to pass: 2600 >>> Cycles passed: 2600 >>> Total errors: 0 >>> Forms opened: 13000 >>> Start time: 22/03/2006 10:00:18 AM >>> End time: 22/03/2006 2:21:28 PM >>> >>> Object statistics: >>> ClassName = CTestForm, Created = 6, Disposed = 6 >>> ClassName = CFormDataset, Created = 93583, Disposed = 93583 >>> ->>> >>> >>> Shamil >>> >>> ----- Original Message ----- >>> From: "Shamil Salakhetdinov" >>> To: "Access Developers discussion and problem solving" >>> >>> Sent: Thursday, March 23, 2006 8:32 AM >>> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >>> >>> >>> >>>> Hi All, >>>> >>>> New version (1.9.5) of the subject test released at >>>> >>>> http://smsconsulting.spb.ru/download/tests/a2dds.htm >>>> >>>> It collects complete MS Access process information (loaded DLLs) now >>>> and >>>> writes it to XML file. >>>> It also collects system information(menory usage, MS Access context and >>>> locale) and writes into XML file. >>>> >>>> Both XML files are well formed and can be imported into MS Access >>>> database. >>>> >>>> Now it's possible to compare Access 2003 SP1 and Access 2003 SP2 and >>>> related >>>> DLLs versions to see which ones are upgraded in MS Access SP2... >>>> >>>> Shamil >>>> >>>> >>> <<< tail skipped >>> >>> >>> -- >>> AccessD mailing list >>> AccessD at databaseadvisors.com >>> http://databaseadvisors.com/mailman/listinfo/accessd >>> Website: http://www.databaseadvisors.com >>> >> >> > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From bheid at appdevgrp.com Fri Mar 24 09:50:10 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Fri, 24 Mar 2006 10:50:10 -0500 Subject: [AccessD] Access help needed by my brother's friend In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D78E1E@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D35171@ADGSERVER> Hi Phil, Comments in-line. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Phil Huisman Sent: Friday, March 24, 2006 10:01 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access help needed by my brother's friend Bobby, >Thank you for the information. I noticed there is a wizard for splitting the database, which I tried and >it successfully created a BE database with only the tables. What confused me is the original DB still >has the tables in it. I kind of expected the tables to be removed when the BE was created. So, does >that mean I need to manually create another DB with only the forms, queries, etc. for the FE? Assuming that what was left in the FE are not links to the BE (the linked tables have a little arrow to the left of the table name (at least in list view)), you should be able to just delete the existing tables that are in the FE db. I always design my systems with a FE/BE design, so I have not ever had to split one. >Once I have a FE without tables and the BE with only tables, the BE >resides on the host computer and the FE is distributes to the other >PC's on the network? That is correct. >To distribute the FE do I simply copy the same >FE DB to the other PC's on the network? Yes, assuming that the other PCs have Access on them. Note that you should be compiling the FE and giving the MDE to the users. >Is the linking routine done from the host PC that has the BE DB >or from the other PC's that have the FE DB? Or does it matter? The links will be in the FE - linking to the BE tables. >Once all of this is accomplished, will multiple PC's be able to >update the BE DB simultaneously, assuming they are not updating >the same record? Theoretically yes. It depends on how the system was designed. You will really just have to test it out to be sure. >I hope this makes sense. >Phil ----- Original Message ----- From: Bobby Heid To: 'Access Developers discussion and problem solving' ; 'Phil Huisman' Sent: Thursday, March 23, 2006 5:12 AM Subject: Re: [AccessD] Access help needed by my brother's friend Phil, I am assuming that you have the forms/code and the tables in one database. You need to split the database into a front-end (FE) and back-end (BE). That is, you have a database that only contains the data (tables) and another database that has all of the code/forms/reports/etc. in it. You link to the tables in the BE from the FE by going to File/Get External Data/Link tables and then locating the BE and selecting all of the tables that you want to be linked to the FE. Then you put the BE in one place and distribute the FE to all of the users. Without going into a lot of detail about auto-linking the tables, you should link the tables in each FE database to the one BE database. Hope this helps, Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Kathryn Bassett Sent: Wednesday, March 22, 2006 2:06 PM To: 'Phil Huisman'; 'Access Developers discussion and problem solving' Subject: [AccessD] Access help needed by my brother's friend Phil, I'm forwarding your message to a list called AccessD run by DataBaseAdvisors http://www.databaseadvisors.com/lists/whatandhow.htm as the scope of your request is beyond my skills. I highly recommend you join the list right away to see answers from people who reply to the list instead of directly to you. I'm positive someone will be able to help you. -- Kathryn Rhinehart Bassett (Pasadena CA) "Genealogy is my bag" "GH is my soap" kathryn at bassett.net http://bassett.net -----Original Message----- From: Phil Huisman [mailto:pbhuisman at msn.com] Sent: 21 Mar 2006 7:02 am To: kathryn at bassett.net Subject: Ken Rhinehart My name is Phil Huisman and your brother Ken gave me your name as a possible contact for help with Microsoft Access. I recently developed an Access database program for a ministry I am involved with at Glenkirk Church called Shepherd's Pantry. We need a DB to track people we serve so I decided to give it a try. After some struggling, I have managed to create a DB I think will meet our needs but there is one problem: we have a network of three PC's at the Pantry and the DB cannot be updated by all three PC's. I did manage to get all three PC's to share the DB but only in the 'read only' mode. Any changes to the database on PC's 2 or 3 cannot be saved? We get an error message but I forget exactly what the message says. I am using Microsoft Office 2003 Access, and XP Home operating system on new Dell PC's. The three PC's are networked together through a Linksys router. I take it we cannot just use standard Access in a network and be able to update the database from multiple PC's? It occurred to me we made need to have a dedicated server running Windows NT or something like that? Anyway, I hope this makes sense and would certainly appreciate any help you can provide. Thank you, Phil Huisman From Gustav at cactus.dk Fri Mar 24 10:38:24 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 24 Mar 2006 17:38:24 +0100 Subject: [AccessD] Access and MySQL Message-ID: Hi Ervin Have a look here for an OLE DB provider: http://luggle.com/~sean/frames/root.php /gustav >>> viner at eunet.yu 24-03-2006 13:41:41 >>> I know, today is Friday, but I just started to "play" with Access connected (throught MyODBC) and MySQL. Can you recommend any useful: hint, code, sample application? TIA, Ervin From bchacc at san.rr.com Fri Mar 24 11:05:36 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Fri, 24 Mar 2006 09:05:36 -0800 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <007101c64f5a$55061230$6501a8c0@Nant> References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805> <001301c6472c$d5602960$6501a8c0@Nant> <001001c64751$d4b89ef0$6501a8c0@Nant> <007101c6478b$4c9e8040$6501a8c0@Nant> <001201c647a3$3283af10$6501a8c0@Nant> <001101c64810$f9ad0420$6501a8c0@Nant> <004601c64932$45f25660$6501a8c0@Nant> <000801c649ea$ef906370$6501a8c0@Nant> <000a01c64c27$65ddfb80$6501a8c0@Nant> <000e01c64d24$70070ef0$6501a8c0@Nant> <000c01c64db9$f195e960$6501a8c0@Nant> <003a01c64dbd$65180af0$6501a8c0@Nant> <001401c64e3b$2c6f81a0$6501a8c0@Nant> <005101c64e84$119b5540$6501a8c0@Nant> <002d01c64f30$d70c2640$6501a8c0@Nant> <442401EF.2040704@san.rr.com> <007101c64f5a$55061230$6501a8c0@Nant> Message-ID: <442426E0.6040808@san.rr.com> Well, let us know when the new version is ready. And I'll run both the mdb and the adp. I have a lot of idle cycles on the weekend. :-) (Computer has some, too) Rocky Shamil Salakhetdinov wrote: > Thank you, Rocky, > > I maybe prepare this night some corrections to try to catch the problem > below with more log information written and then it should be possible to > run the test on weekend - below are the two results (yours) and from Jim > Moss - they are for different backends but break on the same 8729 cycle. > Looks like a pattern. But I must say I think I see something like that the > first time in my long programming experience. Very strange. Any > explanations, anybody? (Please note that the quantity of created custom > classes are different for these two cases - this is probably because the > class instance for subform was created less times in the second case because > creation of this class instance depends on data and the data "shuffling" and > updating use random numbers generator....). > > Jim Moss > ======== > ADODB Bound Forms Crash Test v.1.9.6 [23-MAR-06] > > Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 2113 - The value you > entered isn't valid for this field. > > Backend: MS SQL > Binding: ADODB > Cycles to pass: 10000 > Cycles passed: 8729 > Total errors: 1 > Forms opened: 43644 > Start time: 3/23/2006 4:32:18 PM > End time: 3/24/2006 6:13:39 AM > > Object statistics: > ClassName = CTestForm, Created = 6, Disposed = 6 > ClassName = CFormDataset, Created = 271651, Disposed = 271651 > > > Rocky Smolin > ============ > ADODB Bound Forms Crash Test v.1.9.6 [23-MAR-06] > > Form_a_frmCrashTest.cmdCrashMe_Click(0): Err = 2113 - The value you > entered isn't valid for this field. > > Backend: MS Access > Binding: ADODB > Cycles to pass: 20000 > Cycles passed: 8729 > Total errors: 1 > Forms opened: 43644 > Start time: 3/23/2006 10:49:52 PM > End time: 3/24/2006 5:48:18 AM > > Object statistics: > ClassName = CTestForm, Created = 6, Disposed = 6 > ClassName = CFormDataset, Created = 269530, Disposed = 269530 > > Shamil > > ----- Original Message ----- > From: "Rocky Smolin - Beach Access Software" > To: "Access Developers discussion and problem solving" > > Sent: Friday, March 24, 2006 5:27 PM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > > >> Shamil: >> >> Do you want us to run it again with this new version? >> >> Rocky >> >> Shamil Salakhetdinov wrote: >> >>> Hi All, >>> >>> New version (1.9.7) is available on >>> http://smsconsulting.spb.ru/download/tests/a2dds.htm - this is just a >>> maintenance/bug fix release - no new features. >>> >>> Best regards, >>> Shamil >>> -- >>> Web: http://smsconsulting.spb.ru/shamil_s >>> >>> ----- Original Message ----- >>> From: "Shamil Salakhetdinov" >>> To: "Access Developers discussion and problem solving" >>> >>> Sent: Thursday, March 23, 2006 5:13 PM >>> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >>> >>> >>> >>> >>>> Hi All, >>>> >>>> New version (1.9.6) of the subject test released at >>>> >>>> http://smsconsulting.spb.ru/download/tests/a2dds.htm >>>> >>>> You can now use Customers form to manually add and deleted rows, which >>>> are >>>> bound to disconnected ADODB recordsets. >>>> The code to automate testing of inserting and deleting is under >>>> development. >>>> And it is planned to be released over weekend. >>>> >>>> Here are two new success stories for the test - over 2010 cycles passed >>>> OK >>>> (not my PC - others) - Access SP2 seems to be a solution: >>>> >>>> <<<+ >>>> Test successfully finished. >>>> >>>> Backend: MS Access >>>> Binding: ADODB >>>> Cycles to pass: 3000 >>>> Cycles passed: 3000 >>>> Total errors: 0 >>>> Forms opened: 15000 >>>> Start time: 3/22/2006 2:10:25 PM >>>> End time: 3/22/2006 4:28:43 PM >>>> >>>> Object statistics: >>>> ClassName = CTestForm, Created = 6, Disposed = 6 >>>> ClassName = CFormDataset, Created = 107634, Disposed = 107634 >>>> ->>> >>>> >>>> <<<+ >>>> Backend: MS Access >>>> Binding: ADODB >>>> Cycles to pass: 2600 >>>> Cycles passed: 2600 >>>> Total errors: 0 >>>> Forms opened: 13000 >>>> Start time: 22/03/2006 10:00:18 AM >>>> End time: 22/03/2006 2:21:28 PM >>>> >>>> Object statistics: >>>> ClassName = CTestForm, Created = 6, Disposed = 6 >>>> ClassName = CFormDataset, Created = 93583, Disposed = 93583 >>>> ->>> >>>> >>>> Shamil >>>> >>>> ----- Original Message ----- >>>> From: "Shamil Salakhetdinov" >>>> To: "Access Developers discussion and problem solving" >>>> >>>> Sent: Thursday, March 23, 2006 8:32 AM >>>> Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >>>> >>>> >>>> >>>> >>>>> Hi All, >>>>> >>>>> New version (1.9.5) of the subject test released at >>>>> >>>>> http://smsconsulting.spb.ru/download/tests/a2dds.htm >>>>> >>>>> It collects complete MS Access process information (loaded DLLs) now >>>>> and >>>>> writes it to XML file. >>>>> It also collects system information(menory usage, MS Access context and >>>>> locale) and writes into XML file. >>>>> >>>>> Both XML files are well formed and can be imported into MS Access >>>>> database. >>>>> >>>>> Now it's possible to compare Access 2003 SP1 and Access 2003 SP2 and >>>>> related >>>>> DLLs versions to see which ones are upgraded in MS Access SP2... >>>>> >>>>> Shamil >>>>> >>>>> >>>>> >>>> <<< tail skipped >>> >>>> >>>> -- >>>> AccessD mailing list >>>> AccessD at databaseadvisors.com >>>> http://databaseadvisors.com/mailman/listinfo/accessd >>>> Website: http://www.databaseadvisors.com >>>> >>>> >>> >> -- >> Rocky Smolin >> Beach Access Software >> 858-259-4334 >> www.e-z-mrp.com >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From KIsmert at TexasSystems.com Fri Mar 24 12:28:58 2006 From: KIsmert at TexasSystems.com (Ken Ismert) Date: Fri, 24 Mar 2006 12:28:58 -0600 Subject: [AccessD] Access and MySQL Message-ID: Ervin, With its new native Stored Procs and User-defined functions, MySQL 5.0 finally has key features that would interest most Access/SQL Server deveopers. If you're interested in migrating Access data to play with, check: Introduction to the MySQL Migration Toolkit http://dev.mysql.com/doc/migration-toolkit/en/mysql-migration-toolkit-in troduction.html Preparing a Microsoft Access Database for Migration http://dev.mysql.com/doc/migration-toolkit/en/mysql-migration-toolkit-ac cessprep.html MySQL Migration Toolkit Downloads http://dev.mysql.com/downloads/migration-toolkit/1.0.html -Ken -----Original Message----- From: Ervin Brindza [mailto:viner at EUnet.yu] Sent: Friday, March 24, 2006 6:42 AM To: AccessD at databaseadvisors.com Subject: [AccessD] Access and MySQL I know, today is Friday, but I just started to "play" with Access connected (throught MyODBC) and MySQL. Can you recommend any useful: hint, code, sample application? TIA, Ervin From dajomigo at tpg.com.au Fri Mar 24 15:29:16 2006 From: dajomigo at tpg.com.au (David & Joanne Gould) Date: Sat, 25 Mar 2006 08:29:16 +1100 Subject: [AccessD] Hide and show image In-Reply-To: <007b01c64f40$585cdd20$0100a8c0@RazvojErvin> References: <007b01c64f40$585cdd20$0100a8c0@RazvojErvin> Message-ID: <6.2.1.2.2.20060325082512.046f9ee8@mail.tpg.com.au> A database has a check box in its table/form for whether a certain location has wheelchair access or not. If it does have wheelchair access, then on a listing report, the usual wheelchair symbol is to be displayed next to its address. If it doesn't have access, a symbol is not displayed. 1. Can this be done and if so how? I couldn't find anywhere to set the code. 2. The only option I could think of was to actually store the image in the table with the user having to manually insert the image into the field. Can the insertion be automated based on their choice at the checkbox? TIA David From JHewson at karta.com Fri Mar 24 15:42:59 2006 From: JHewson at karta.com (Jim Hewson) Date: Fri, 24 Mar 2006 15:42:59 -0600 Subject: [AccessD] Hide and show image Message-ID: <9C382E065F54AE48BC3AA7925DCBB01C03ECAD4E@karta-exc-int.Karta.com> David, WI would use the image control with the picture of the wheelchair (bmp). The image control can be scaled to the size you need. Just make sure the Size Mode is set to Zoom. Then use code to hide or unhide the image control as needed using the docmd visible command. For example: On the after update event of the checkbox use a simple if statement. If Check6 = 0 Then Me.Image5.Visible = False Else Me.Image5.Visible = True End If Then when it's checked the Wheelchair will show, unchecked the image is not shown. HTH Jim jhewson at karta.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & Joanne Gould Sent: Friday, March 24, 2006 3:29 PM To: Access Developers discussion and problem solving Subject: [AccessD] Hide and show image A database has a check box in its table/form for whether a certain location has wheelchair access or not. If it does have wheelchair access, then on a listing report, the usual wheelchair symbol is to be displayed next to its address. If it doesn't have access, a symbol is not displayed. 1. Can this be done and if so how? I couldn't find anywhere to set the code. 2. The only option I could think of was to actually store the image in the table with the user having to manually insert the image into the field. Can the insertion be automated based on their choice at the checkbox? TIA David -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From dajomigo at tpg.com.au Fri Mar 24 16:08:38 2006 From: dajomigo at tpg.com.au (David & Joanne Gould) Date: Sat, 25 Mar 2006 09:08:38 +1100 Subject: [AccessD] Hide and show image In-Reply-To: <9C382E065F54AE48BC3AA7925DCBB01C03ECAD4E@karta-exc-int.Kar ta.com> References: <9C382E065F54AE48BC3AA7925DCBB01C03ECAD4E@karta-exc-int.Karta.com> Message-ID: <6.2.1.2.2.20060325090627.047188e0@mail.tpg.com.au> Jim Thanks for you quick response. Are you talking about the report or the form? If the report, where do I put code as I couldn't find anywhere for it? If the form, how do I store the image into the table? TIA David At 08:42 AM 25/03/2006, you wrote: >David, >WI would use the image control with the picture of the wheelchair >(bmp). The image control can be scaled to the size you need. Just make >sure the Size Mode is set to Zoom. Then use code to hide or unhide the >image control as needed using the docmd visible command. >For example: >On the after update event of the checkbox use a simple if statement. > > If Check6 = 0 Then > Me.Image5.Visible = False > Else > Me.Image5.Visible = True > End If > >Then when it's checked the Wheelchair will show, unchecked the image is >not shown. > >HTH > >Jim >jhewson at karta.com > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & Joanne Gould >Sent: Friday, March 24, 2006 3:29 PM >To: Access Developers discussion and problem solving >Subject: [AccessD] Hide and show image > > >A database has a check box in its table/form for whether a certain location >has wheelchair access or not. If it does have wheelchair access, then on a >listing report, the usual wheelchair symbol is to be displayed next to its >address. If it doesn't have access, a symbol is not displayed. > >1. Can this be done and if so how? I couldn't find anywhere to set the code. >2. The only option I could think of was to actually store the image in the >table with the user having to manually insert the image into the field. Can >the insertion be automated based on their choice at the checkbox? > >TIA > >David > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From wdhindman at bellsouth.net Fri Mar 24 16:13:09 2006 From: wdhindman at bellsouth.net (William Hindman) Date: Fri, 24 Mar 2006 17:13:09 -0500 Subject: [AccessD] Hide and show image References: <9C382E065F54AE48BC3AA7925DCBB01C03ECAD4E@karta-exc-int.Karta.com> Message-ID: <002c01c64f90$22860050$6101a8c0@50NM721> ...I'd consider using the Unicode font wheelchair symbol U+267F instead of an image graphic ...if they don't have a suitable font already installed you can install it with your distribution ...you can then use an IIF to determine whether it gets displayed ...should be much quicker and simpler than an image. William ----- Original Message ----- From: "Jim Hewson" To: "Access Developers discussion and problem solving" Sent: Friday, March 24, 2006 4:42 PM Subject: Re: [AccessD] Hide and show image > David, > WI would use the image control with the picture of the wheelchair (bmp). > The image control can be scaled to the size you need. Just make sure the > Size Mode is set to Zoom. Then use code to hide or unhide the image > control as needed using the docmd visible command. > For example: > On the after update event of the checkbox use a simple if statement. > > If Check6 = 0 Then > Me.Image5.Visible = False > Else > Me.Image5.Visible = True > End If > > Then when it's checked the Wheelchair will show, unchecked the image is > not shown. > > HTH > > Jim > jhewson at karta.com > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & Joanne > Gould > Sent: Friday, March 24, 2006 3:29 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Hide and show image > > > A database has a check box in its table/form for whether a certain > location > has wheelchair access or not. If it does have wheelchair access, then on a > listing report, the usual wheelchair symbol is to be displayed next to its > address. If it doesn't have access, a symbol is not displayed. > > 1. Can this be done and if so how? I couldn't find anywhere to set the > code. > 2. The only option I could think of was to actually store the image in the > table with the user having to manually insert the image into the field. > Can > the insertion be automated based on their choice at the checkbox? > > TIA > > David > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From JHewson at karta.com Fri Mar 24 16:12:22 2006 From: JHewson at karta.com (Jim Hewson) Date: Fri, 24 Mar 2006 16:12:22 -0600 Subject: [AccessD] Hide and show image Message-ID: <9C382E065F54AE48BC3AA7925DCBB01C03ECAD56@karta-exc-int.Karta.com> I was talking about a form. On a report, you can use the same procedure except put the image control in the detail section and use the if statement in Format event. The image will show or not show as needed. Jim jhewson at karta.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & Joanne Gould Sent: Friday, March 24, 2006 4:09 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Hide and show image Jim Thanks for you quick response. Are you talking about the report or the form? If the report, where do I put code as I couldn't find anywhere for it? If the form, how do I store the image into the table? TIA David At 08:42 AM 25/03/2006, you wrote: >David, >WI would use the image control with the picture of the wheelchair >(bmp). The image control can be scaled to the size you need. Just make >sure the Size Mode is set to Zoom. Then use code to hide or unhide the >image control as needed using the docmd visible command. >For example: >On the after update event of the checkbox use a simple if statement. > > If Check6 = 0 Then > Me.Image5.Visible = False > Else > Me.Image5.Visible = True > End If > >Then when it's checked the Wheelchair will show, unchecked the image is >not shown. > >HTH > >Jim >jhewson at karta.com > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & Joanne Gould >Sent: Friday, March 24, 2006 3:29 PM >To: Access Developers discussion and problem solving >Subject: [AccessD] Hide and show image > > >A database has a check box in its table/form for whether a certain location >has wheelchair access or not. If it does have wheelchair access, then on a >listing report, the usual wheelchair symbol is to be displayed next to its >address. If it doesn't have access, a symbol is not displayed. > >1. Can this be done and if so how? I couldn't find anywhere to set the code. >2. The only option I could think of was to actually store the image in the >table with the user having to manually insert the image into the field. Can >the insertion be automated based on their choice at the checkbox? > >TIA > >David > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From dajomigo at tpg.com.au Fri Mar 24 17:02:28 2006 From: dajomigo at tpg.com.au (David & Joanne Gould) Date: Sat, 25 Mar 2006 10:02:28 +1100 Subject: [AccessD] Hide and show image In-Reply-To: <9C382E065F54AE48BC3AA7925DCBB01C03ECAD56@karta-exc-int.Kar ta.com> References: <9C382E065F54AE48BC3AA7925DCBB01C03ECAD56@karta-exc-int.Karta.com> Message-ID: <6.2.1.2.2.20060325100210.04716220@mail.tpg.com.au> Thanks Jim Works a treat David At 09:12 AM 25/03/2006, you wrote: >I was talking about a form. >On a report, you can use the same procedure except put the image control >in the detail section and use the if statement in Format event. >The image will show or not show as needed. > >Jim >jhewson at karta.com > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & Joanne Gould >Sent: Friday, March 24, 2006 4:09 PM >To: Access Developers discussion and problem solving >Subject: Re: [AccessD] Hide and show image > >Jim > >Thanks for you quick response. > >Are you talking about the report or the form? > >If the report, where do I put code as I couldn't find anywhere for it? > >If the form, how do I store the image into the table? > >TIA > >David > >At 08:42 AM 25/03/2006, you wrote: > >David, > >WI would use the image control with the picture of the wheelchair > >(bmp). The image control can be scaled to the size you need. Just make > >sure the Size Mode is set to Zoom. Then use code to hide or unhide the > >image control as needed using the docmd visible command. > >For example: > >On the after update event of the checkbox use a simple if statement. > > > > If Check6 = 0 Then > > Me.Image5.Visible = False > > Else > > Me.Image5.Visible = True > > End If > > > >Then when it's checked the Wheelchair will show, unchecked the image is > >not shown. > > > >HTH > > > >Jim > >jhewson at karta.com > > > >-----Original Message----- > >From: accessd-bounces at databaseadvisors.com > >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & > Joanne Gould > >Sent: Friday, March 24, 2006 3:29 PM > >To: Access Developers discussion and problem solving > >Subject: [AccessD] Hide and show image > > > > > >A database has a check box in its table/form for whether a certain location > >has wheelchair access or not. If it does have wheelchair access, then on a > >listing report, the usual wheelchair symbol is to be displayed next to its > >address. If it doesn't have access, a symbol is not displayed. > > > >1. Can this be done and if so how? I couldn't find anywhere to set the code. > >2. The only option I could think of was to actually store the image in the > >table with the user having to manually insert the image into the field. Can > >the insertion be automated based on their choice at the checkbox? > > > >TIA > > > >David > > > > > >-- > >AccessD mailing list > >AccessD at databaseadvisors.com > >http://databaseadvisors.com/mailman/listinfo/accessd > >Website: http://www.databaseadvisors.com > >-- > >AccessD mailing list > >AccessD at databaseadvisors.com > >http://databaseadvisors.com/mailman/listinfo/accessd > >Website: http://www.databaseadvisors.com > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From dajomigo at tpg.com.au Fri Mar 24 17:03:38 2006 From: dajomigo at tpg.com.au (David & Joanne Gould) Date: Sat, 25 Mar 2006 10:03:38 +1100 Subject: [AccessD] Hide and show image In-Reply-To: <002c01c64f90$22860050$6101a8c0@50NM721> References: <9C382E065F54AE48BC3AA7925DCBB01C03ECAD4E@karta-exc-int.Karta.com> <002c01c64f90$22860050$6101a8c0@50NM721> Message-ID: <6.2.1.2.2.20060325100240.0475d610@mail.tpg.com.au> Thanks William I will look into your suggestion. It's something I haven't used before. This time I have used Jim's solution. Thanks again David At 09:13 AM 25/03/2006, you wrote: >...I'd consider using the Unicode font wheelchair symbol U+267F instead of >an image graphic ...if they don't have a suitable font already installed you >can install it with your distribution ...you can then use an IIF to >determine whether it gets displayed ...should be much quicker and simpler >than an image. > >William > >----- Original Message ----- >From: "Jim Hewson" >To: "Access Developers discussion and problem solving" > >Sent: Friday, March 24, 2006 4:42 PM >Subject: Re: [AccessD] Hide and show image > > > > David, > > WI would use the image control with the picture of the wheelchair (bmp). > > The image control can be scaled to the size you need. Just make sure the > > Size Mode is set to Zoom. Then use code to hide or unhide the image > > control as needed using the docmd visible command. > > For example: > > On the after update event of the checkbox use a simple if statement. > > > > If Check6 = 0 Then > > Me.Image5.Visible = False > > Else > > Me.Image5.Visible = True > > End If > > > > Then when it's checked the Wheelchair will show, unchecked the image is > > not shown. > > > > HTH > > > > Jim > > jhewson at karta.com > > > > -----Original Message----- > > From: accessd-bounces at databaseadvisors.com > > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & Joanne > > Gould > > Sent: Friday, March 24, 2006 3:29 PM > > To: Access Developers discussion and problem solving > > Subject: [AccessD] Hide and show image > > > > > > A database has a check box in its table/form for whether a certain > > location > > has wheelchair access or not. If it does have wheelchair access, then on a > > listing report, the usual wheelchair symbol is to be displayed next to its > > address. If it doesn't have access, a symbol is not displayed. > > > > 1. Can this be done and if so how? I couldn't find anywhere to set the > > code. > > 2. The only option I could think of was to actually store the image in the > > table with the user having to manually insert the image into the field. > > Can > > the insertion be automated based on their choice at the checkbox? > > > > TIA > > > > David > > > > > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From shamil at users.mns.ru Fri Mar 24 17:30:27 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Sat, 25 Mar 2006 02:30:27 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant><004601c64932$45f25660$6501a8c0@Nant><000801c649ea$ef906370$6501a8c0@Nant><000a01c64c27$65ddfb80$6501a8c0@Nant><000e01c64d24$70070ef0$6501a8c0@Nant><000c01c64db9$f195e960$6501a8c0@Nant><003a01c64dbd$65180af0$6501a8c0@Nant><001401c64e3b$2c6f81a0$6501a8c0@Nant><005101c64e84$119b5540$6501a8c0@Nant><002d01c64f30$d70c2640$6501a8c0@Nant> <442401EF.2040704@san.rr.com><007101c64f5a$55061230$6501a8c0@Nant> <442426E0.6040808@san.rr.com> Message-ID: <000c01c64f9a$f37448c0$6501a8c0@Nant> Hi All, New version (1.9.8) is published - http://smsconsulting.spb.ru/download/tests/a2dds.htm. It should give more detailed results about errors if they appear. Make your PCs busy over weekend! :) Shamil ----- Original Message ----- From: "Rocky Smolin - Beach Access Software" To: "Access Developers discussion and problem solving" Sent: Friday, March 24, 2006 8:05 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Well, let us know when the new version is ready. And I'll run both the > mdb and the adp. I have a lot of idle cycles on the weekend. :-) > (Computer has some, too) > > Rocky > > <<< tail skipped >>> From jwcolby at ColbyConsulting.com Fri Mar 24 19:46:47 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Fri, 24 Mar 2006 20:46:47 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <000c01c64f9a$f37448c0$6501a8c0@Nant> Message-ID: <002e01c64fad$faf6e9a0$647aa8c0@ColbyM6805> Shamil, I got a "not enough memory" error message on the 69th pass. AXP. I sent the error email and the XML File. Access is using 182 meg after the close. Looks like a memory leak perhaps. I will start over and watch the Access instance in Task Manager. What I have discovered by watching task manager while stepping through the code is that this code: 480 For i = 1 To 3 ' set form controls values 490 TrashForm accApp, frm 500 For Each ectl In frm.Controls 510 If Len(ControlSource(ectl)) > 0 Then 520 If ectl.ControlSource = avar(lngIdx + 1) Then 'Debug.Print avar(lngIdx) & "." & avar(lngIdx + 1) 530 Else 540 If UsualFormBinding = False Then 'ss:17mar06 550 FakeSetControlValue ectl 560 End If 570 End If 580 End If 590 Next ectl 600 Next I Is adding memory on line 550 and then when it cycles back up to 490 it adds still more memory. This memory does not appear to be returned. I am wondering if the container is expanding and the Access instance is adding memory to hold pieces or something. I do know that the TrashForm is adding memory occasionally at line 30 30 Set rst = rfrm.RecordsetClone And again occasionally when the rfrm.bookmark is set. I added code to close the rst (pointer to recordsetclone) and set it to nothing but that does NOT return the memory. I added a while 1 trashform Wend And the memory just climbs steadily. I don't have an answer to why, nor how to get the memory back. With the rst.close; set rst = nothing In TrashForm I have added the only thing I can think of to coax the system to give it back and no dice. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Friday, March 24, 2006 6:30 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Hi All, New version (1.9.8) is published - http://smsconsulting.spb.ru/download/tests/a2dds.htm. It should give more detailed results about errors if they appear. Make your PCs busy over weekend! :) Shamil ----- Original Message ----- From: "Rocky Smolin - Beach Access Software" To: "Access Developers discussion and problem solving" Sent: Friday, March 24, 2006 8:05 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Well, let us know when the new version is ready. And I'll run both the > mdb and the adp. I have a lot of idle cycles on the weekend. :-) > (Computer has some, too) > > Rocky > > <<< tail skipped >>> -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From developer at ultradnt.com Fri Mar 24 20:07:42 2006 From: developer at ultradnt.com (Steve Conklin) Date: Fri, 24 Mar 2006 21:07:42 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <002e01c64fad$faf6e9a0$647aa8c0@ColbyM6805> Message-ID: <200603250207.k2P27Wv90565@ultradnt.com> My A2k3 is at 168 mb mem, crashed at 72 cycles. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby Sent: Friday, March 24, 2006 8:47 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Shamil, I got a "not enough memory" error message on the 69th pass. AXP. I sent the error email and the XML File. Access is using 182 meg after the close. Looks like a memory leak perhaps. I will start over and watch the Access instance in Task Manager. What I have discovered by watching task manager while stepping through the code is that this code: 480 For i = 1 To 3 ' set form controls values 490 TrashForm accApp, frm 500 For Each ectl In frm.Controls 510 If Len(ControlSource(ectl)) > 0 Then 520 If ectl.ControlSource = avar(lngIdx + 1) Then 'Debug.Print avar(lngIdx) & "." & avar(lngIdx + 1) 530 Else 540 If UsualFormBinding = False Then 'ss:17mar06 550 FakeSetControlValue ectl 560 End If 570 End If 580 End If 590 Next ectl 600 Next I Is adding memory on line 550 and then when it cycles back up to 490 it adds still more memory. This memory does not appear to be returned. I am wondering if the container is expanding and the Access instance is adding memory to hold pieces or something. I do know that the TrashForm is adding memory occasionally at line 30 30 Set rst = rfrm.RecordsetClone And again occasionally when the rfrm.bookmark is set. I added code to close the rst (pointer to recordsetclone) and set it to nothing but that does NOT return the memory. I added a while 1 trashform Wend And the memory just climbs steadily. I don't have an answer to why, nor how to get the memory back. With the rst.close; set rst = nothing In TrashForm I have added the only thing I can think of to coax the system to give it back and no dice. John W. Colby www.ColbyConsulting.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Friday, March 24, 2006 6:30 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Hi All, New version (1.9.8) is published - http://smsconsulting.spb.ru/download/tests/a2dds.htm. It should give more detailed results about errors if they appear. Make your PCs busy over weekend! :) Shamil ----- Original Message ----- From: "Rocky Smolin - Beach Access Software" To: "Access Developers discussion and problem solving" Sent: Friday, March 24, 2006 8:05 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Well, let us know when the new version is ready. And I'll run both > the mdb and the adp. I have a lot of idle cycles on the weekend. :-) > (Computer has some, too) > > Rocky > > <<< tail skipped >>> -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Fri Mar 24 23:41:00 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Sat, 25 Mar 2006 08:41:00 +0300 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <002e01c64fad$faf6e9a0$647aa8c0@ColbyM6805> Message-ID: <008a01c64fce$b3e40400$6501a8c0@Nant> John, Something is wrong with your installation I think. I did run the test with MS Access XP and it worked OK for 500 cycles, memory alloaction was ~46MB. <<< ADODB Bound Forms Crash Test v.1.9.8 [25-MAR-06] Test successfully finished. Backend: MS Access Binding: ADODB Cycles to pass: 500 Cycles passed: 500 Total errors: 0 Forms opened: 2500 Start time: 25.03.2006 7:53:05 End time: 25.03.2006 8:21:10 Object statistics: ClassName = CTestForm, Created = 6, Disposed = 6 ClassName = CFormDataset, Created = 23221, Disposed = 23220 >>> I have another system where MS Access XP doesn't work that good. We can compare what are the differences between your system and mine - the test creates a2dds_mdb_process.xml with the information about all the used DLLs etc. - this XML can be imported into MS Access mdb etc. - i.e. we can find the differences of our installations and what part of this installation creates the trouble. But the best and easiest looks like using MS Access 2003 SP2. The other systems create trouble, which doesn't worth (at least here) to spend time on guessing how to workaround, at least until MS Access 2003 SP2 will work stable for all teh update modes (inserts, update, delete) - currently only update is tested automatically and insert and delete can be tested manually for Customers form, which doesn't have Autonumber.... Shamil ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Saturday, March 25, 2006 4:46 AM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > I got a "not enough memory" error message on the 69th pass. AXP. I sent > the error email and the XML File. Access is using 182 meg after the > close. > Looks like a memory leak perhaps. I will start over and watch the Access > instance in Task Manager. > > What I have discovered by watching task manager while stepping through the > code is that this code: > > 480 For i = 1 To 3 > ' set form controls values > 490 TrashForm accApp, frm > 500 For Each ectl In frm.Controls > 510 If Len(ControlSource(ectl)) > 0 Then > 520 If ectl.ControlSource = avar(lngIdx + 1) Then > 'Debug.Print avar(lngIdx) & "." & avar(lngIdx > + 1) > 530 Else > 540 If UsualFormBinding = False Then 'ss:17mar06 > 550 FakeSetControlValue ectl > 560 End If > 570 End If > 580 End If > 590 Next ectl > 600 Next I > > Is adding memory on line 550 and then when it cycles back up to 490 it > adds > still more memory. This memory does not appear to be returned. I am > wondering if the container is expanding and the Access instance is adding > memory to hold pieces or something. > > I do know that the TrashForm is adding memory occasionally at line 30 > > 30 Set rst = rfrm.RecordsetClone > > And again occasionally when the rfrm.bookmark is set. > > I added code to close the rst (pointer to recordsetclone) and set it to > nothing but that does NOT return the memory. > > I added a > > while 1 > trashform > Wend > > And the memory just climbs steadily. > I don't have an answer to why, nor how to get the memory back. With the > > rst.close; set rst = nothing > > In TrashForm I have added the only thing I can think of to coax the system > to give it back and no dice. > > > John W. Colby > www.ColbyConsulting.com > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Friday, March 24, 2006 6:30 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > Hi All, > > New version (1.9.8) is published - > http://smsconsulting.spb.ru/download/tests/a2dds.htm. > > It should give more detailed results about errors if they appear. > > Make your PCs busy over weekend! :) > > Shamil > > ----- Original Message ----- > From: "Rocky Smolin - Beach Access Software" > To: "Access Developers discussion and problem solving" > > Sent: Friday, March 24, 2006 8:05 PM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Well, let us know when the new version is ready. And I'll run both the >> mdb and the adp. I have a lot of idle cycles on the weekend. :-) >> (Computer has some, too) >> >> Rocky >> >> > <<< tail skipped >>> > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From Gustav at cactus.dk Sat Mar 25 04:27:48 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Sat, 25 Mar 2006 11:27:48 +0100 Subject: [AccessD] Hide and show image Message-ID: Hi David and Jim But the checkbox is only True or False: Me.Image5.Visible = Check6.Value /gustav >>> dajomigo at tpg.com.au 25-03-2006 00:02 >>> Thanks Jim Works a treat David At 09:12 AM 25/03/2006, you wrote: >I was talking about a form. >On a report, you can use the same procedure except put the image control >in the detail section and use the if statement in Format event. >The image will show or not show as needed. > >Jim >jhewson at karta.com > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & Joanne Gould >Sent: Friday, March 24, 2006 4:09 PM >To: Access Developers discussion and problem solving >Subject: Re: [AccessD] Hide and show image > >Jim > >Thanks for you quick response. > >Are you talking about the report or the form? > >If the report, where do I put code as I couldn't find anywhere for it? > >If the form, how do I store the image into the table? > >TIA > >David > >At 08:42 AM 25/03/2006, you wrote: > >David, > >WI would use the image control with the picture of the wheelchair > >(bmp). The image control can be scaled to the size you need. Just make > >sure the Size Mode is set to Zoom. Then use code to hide or unhide the > >image control as needed using the docmd visible command. > >For example: > >On the after update event of the checkbox use a simple if statement. > > > > If Check6 = 0 Then > > Me.Image5.Visible = False > > Else > > Me.Image5.Visible = True > > End If > > > >Then when it's checked the Wheelchair will show, unchecked the image is > >not shown. From darrend at nimble.com.au Sat Mar 25 05:09:57 2006 From: darrend at nimble.com.au (Darren DICK) Date: Sat, 25 Mar 2006 22:09:57 +1100 Subject: [AccessD] Hide and show image In-Reply-To: <6.2.1.2.2.20060325090627.047188e0@mail.tpg.com.au> Message-ID: <20060325111043.VWUN1358.omta03sl.mx.bigpond.com@DENZILLAP> Hi David Either will work - That code (That Jim described) will work on a report or on a form Lets assume you have a form and You want to show the image based on the value in the checkbox Lets assume the wheelchair image is called imgWheelChair Lets assume the checkbox is called chkHasWheelChairAccess Put the image on the form and make it hidden (Visible = false) Create a little function Call it say... ps_SetWheelChairImage and - Put it in the code behind the form up near the bit that says Option Explicit Copy and paste this Private sub ps_SetWheelChairImage() If me.chkHasWheelChairAccess = -1 then ' Does have a tick in the box me.imgWheelChair.visible = true 'so show the image else ' there is no tick me.imgWheelChair.visible = false 'Don't show the image end if End sub Then in the ON_Current of the form have this ps_SetWheelChairImage() And in the OnClick of the textbox put... ps_SetWheelChairImage() That should sort out the form For the report Let's assume the image is in the detail section Let's assume the Field in the table that holds the tick is Calle HasWCAccess Let's assume it is in the record source of the report Make sure the property sheet is visible (That's the one with the tabs called Format, Data, Event, Other and All) In design view there is a horizontal greay bar going all the way across the screen called 'Detail' Click it and then click on the Event tab of the property sheet Then in the code behind the OnFormat have similar code If me.HasWCAccess =-1 then me.chkHasWheelChairAccess.visible = true Else me.chkHasWheelChairAccess.visible = False End if Phew sounds like a lot But is simple Lemme know off list if you're still aving trouble and I'll knock up a demo Hope this helps See ya Darren ------------------------------ T: 0424 696 433 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & Joanne Gould Sent: Saturday, 25 March 2006 9:09 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Hide and show image Jim Thanks for you quick response. Are you talking about the report or the form? If the report, where do I put code as I couldn't find anywhere for it? If the form, how do I store the image into the table? TIA David At 08:42 AM 25/03/2006, you wrote: >David, >WI would use the image control with the picture of the wheelchair >(bmp). The image control can be scaled to the size you need. Just make >sure the Size Mode is set to Zoom. Then use code to hide or unhide the >image control as needed using the docmd visible command. >For example: >On the after update event of the checkbox use a simple if statement. > > If Check6 = 0 Then > Me.Image5.Visible = False > Else > Me.Image5.Visible = True > End If > >Then when it's checked the Wheelchair will show, unchecked the image is >not shown. > >HTH > >Jim >jhewson at karta.com > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & >Joanne Gould >Sent: Friday, March 24, 2006 3:29 PM >To: Access Developers discussion and problem solving >Subject: [AccessD] Hide and show image > > >A database has a check box in its table/form for whether a certain >location has wheelchair access or not. If it does have wheelchair >access, then on a listing report, the usual wheelchair symbol is to be >displayed next to its address. If it doesn't have access, a symbol is not displayed. > >1. Can this be done and if so how? I couldn't find anywhere to set the code. >2. The only option I could think of was to actually store the image in >the table with the user having to manually insert the image into the >field. Can the insertion be automated based on their choice at the checkbox? > >TIA > >David > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From mwp.reid at qub.ac.uk Sat Mar 25 14:49:21 2006 From: mwp.reid at qub.ac.uk (Martin Reid) Date: Sat, 25 Mar 2006 20:49:21 -0000 Subject: [AccessD] Database Advisors Web site References: <008601c646f0$17fed5b0$647aa8c0@ColbyM6805><001301c6472c$d5602960$6501a8c0@Nant><001001c64751$d4b89ef0$6501a8c0@Nant><007101c6478b$4c9e8040$6501a8c0@Nant><001201c647a3$3283af10$6501a8c0@Nant><001101c64810$f9ad0420$6501a8c0@Nant> <004601c64932$45f25660$6501a8c0@Nant> Message-ID: Can who ever manages the web site please contact me of list. Martin Martin WP Reid Training and Assessment Unit Riddle Hall Belfast tel: 02890 974477 From john at winhaven.net Sat Mar 25 15:18:32 2006 From: john at winhaven.net (John Bartow) Date: Sat, 25 Mar 2006 15:18:32 -0600 Subject: [AccessD] Database Advisors Web site In-Reply-To: Message-ID: <00fa01c65051$abe28500$6402a8c0@ScuzzPaq> Martin, That'd be Jim Lawrence [accessd at shaw.ca] John B. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Martin Reid Sent: Saturday, March 25, 2006 2:49 PM To: Access Developers discussion and problem solving Subject: [AccessD] Database Advisors Web site Can who ever manages the web site please contact me of list. Martin Martin WP Reid Training and Assessment Unit Riddle Hall Belfast tel: 02890 974477 From mwp.reid at qub.ac.uk Sat Mar 25 15:36:55 2006 From: mwp.reid at qub.ac.uk (Martin Reid) Date: Sat, 25 Mar 2006 21:36:55 -0000 Subject: [AccessD] Database Advisors Web site References: <00fa01c65051$abe28500$6402a8c0@ScuzzPaq> Message-ID: Thanks John Could not remember Martin Martin WP Reid Training and Assessment Unit Riddle Hall Belfast tel: 02890 974477 ________________________________ From: accessd-bounces at databaseadvisors.com on behalf of John Bartow Sent: Sat 25/03/2006 21:18 To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Database Advisors Web site Martin, That'd be Jim Lawrence [accessd at shaw.ca] John B. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Martin Reid Sent: Saturday, March 25, 2006 2:49 PM To: Access Developers discussion and problem solving Subject: [AccessD] Database Advisors Web site Can who ever manages the web site please contact me of list. Martin Martin WP Reid Training and Assessment Unit Riddle Hall Belfast tel: 02890 974477 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From carbonnb at gmail.com Sat Mar 25 18:39:30 2006 From: carbonnb at gmail.com (Bryan Carbonnell) Date: Sat, 25 Mar 2006 19:39:30 -0500 Subject: [AccessD] Database Advisors Web site In-Reply-To: References: <00fa01c65051$abe28500$6402a8c0@ScuzzPaq> Message-ID: On 3/25/06, Martin Reid wrote: > Thanks John > > Could not remember Martin, Can you contact Jim directly. He has been having problems with his e-mail and DBA talking, so he may not see this thread. -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" From artful at rogers.com Sun Mar 26 10:37:38 2006 From: artful at rogers.com (Arthur Fuller) Date: Sun, 26 Mar 2006 11:37:38 -0500 Subject: [AccessD] Word Question Message-ID: <009801c650f3$9804e350$8e01a8c0@Camelot.com> On my new contract, we use Erwin data modeler. It generates Word documents describing the table structures, indexes etc. It appears that you cannot control the template Erwin uses to create the tables, and their column sizes are asinine. I have to visit each document and correct the sizes. Is there a way to create a Word macro that will resize the columns of a given table to the sizes I want? The sizes themselves are constant. The names of the tables follow a general pattern but they might be hard to predict, so I would be happy to visit each table and press the macro key and have Word do the resizing for me. In fact there are 3 kinds of tables per report, so I would like to have 3 such macros. Can this be done? Thanks, Arthur From mwp.reid at qub.ac.uk Sun Mar 26 12:39:00 2006 From: mwp.reid at qub.ac.uk (Martin Reid) Date: Sun, 26 Mar 2006 19:39:00 +0100 Subject: [AccessD] OT Test References: <00fa01c65051$abe28500$6402a8c0@ScuzzPaq> Message-ID: Ignore Martin WP Reid Training and Assessment Unit Riddle Hall Belfast tel: 02890 974477 From mwp.reid at qub.ac.uk Sun Mar 26 12:43:03 2006 From: mwp.reid at qub.ac.uk (Martin Reid) Date: Sun, 26 Mar 2006 19:43:03 +0100 Subject: [AccessD] Test References: <00fa01c65051$abe28500$6402a8c0@ScuzzPaq> Message-ID: Please ignore Martin Martin WP Reid Training and Assessment Unit Riddle Hall Belfast tel: 02890 974477 ________________________________ From: Martin Reid Sent: Sun 26/03/2006 19:39 To: Access Developers discussion and problem solving Subject: OT Test Ignore Martin WP Reid Training and Assessment Unit Riddle Hall Belfast tel: 02890 974477 From carbonnb at gmail.com Sun Mar 26 13:09:03 2006 From: carbonnb at gmail.com (Bryan Carbonnell) Date: Sun, 26 Mar 2006 14:09:03 -0500 Subject: [AccessD] Word Question In-Reply-To: <009801c650f3$9804e350$8e01a8c0@Camelot.com> References: <009801c650f3$9804e350$8e01a8c0@Camelot.com> Message-ID: On 3/26/06, Arthur Fuller wrote: > Is there a way to create a Word macro that will resize the columns of a > given table to the sizes I want? The sizes themselves are constant. The > names of the tables follow a general pattern but they might be hard to > predict, so I would be happy to visit each table and press the macro key and > have Word do the resizing for me. > In fact there are 3 kinds of tables per report, so I would like to have 3 > such macros. Can this be done? Sure, you can do something like: dim tbl as Table set tbl = activedocument.tables(1) with tbl .Columns(1).Width = inchestopoints(2) .Columns(2).Width = inchestopoints(2) .Columns(3).Width = inchestopoints(2) end with This will set Columns 1, 2 and 3 of Table 1 to 2" in width. If you want to use centimeters then you would replace InchesToPoints with CentimetersToPoints Tables and columns are both 1 based collections. -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" From artful at rogers.com Sun Mar 26 13:23:27 2006 From: artful at rogers.com (Arthur Fuller) Date: Sun, 26 Mar 2006 14:23:27 -0500 Subject: [AccessD] Backfill Office Installations? In-Reply-To: <004b01c64659$6e9a56c0$647aa8c0@ColbyM6805> Message-ID: <00b501c6510a$c346fcd0$8e01a8c0@Camelot.com> I recently removed Office2K for space reasons, only to discover that I still need parts of it. Can I reinstall it safely, without damage to the O2k3 installation, or must I remove it and then install them chronologically? TIA, Arthur From carbonnb at gmail.com Sun Mar 26 13:32:13 2006 From: carbonnb at gmail.com (Bryan Carbonnell) Date: Sun, 26 Mar 2006 14:32:13 -0500 Subject: [AccessD] Test In-Reply-To: References: <00fa01c65051$abe28500$6402a8c0@ScuzzPaq> Message-ID: On 3/26/06, Martin Reid wrote: > Please ignore Problems Martin? -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" From carbonnb at gmail.com Sun Mar 26 13:33:38 2006 From: carbonnb at gmail.com (Bryan Carbonnell) Date: Sun, 26 Mar 2006 14:33:38 -0500 Subject: [AccessD] Backfill Office Installations? In-Reply-To: <00b501c6510a$c346fcd0$8e01a8c0@Camelot.com> References: <004b01c64659$6e9a56c0$647aa8c0@ColbyM6805> <00b501c6510a$c346fcd0$8e01a8c0@Camelot.com> Message-ID: On 3/26/06, Arthur Fuller wrote: > I recently removed Office2K for space reasons, only to discover that I still > need parts of it. Can I reinstall it safely, without damage to the O2k3 > installation, or must I remove it and then install them chronologically? Having tried an O97 after an O2K installation and had it hose both installs, I'd recommend uninstalling all versions and install them chronologically. I know a PITA, but it's the only safe way to do it. -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" From DWUTKA at marlow.com Sun Mar 26 20:11:53 2006 From: DWUTKA at marlow.com (DWUTKA at marlow.com) Date: Sun, 26 Mar 2006 20:11:53 -0600 Subject: [AccessD] Backfill Office Installations? Message-ID: <17724746D360394AA3BFE5B8D40A9C1B6A6891@main2.marlow.com> I concur. I am now running 97, 2000, and 2003 on my laptop. Works great, especially when I setup special 'right click' options. (I setup opening with Access 97, 2000, 2003, and opening a 'secured database' (all my secured databases are Access 97, and since I use the same 'admin account' with them (even though most have different .mdw's, I can still open them all with just one of the .mdw's with my Admin account) as right click options. The only thing that sucks, is that you have to setup the options for each 'version' of access. Ie, setting up the options for 97 will be there only when 97 is used. If you use 2000, the 97 options disappear until you open 97 again. So I have to set them up three times....ugh, but it's worth it, saves time down the line in a major way. Drew -----Original Message----- From: Bryan Carbonnell [mailto:carbonnb at gmail.com] Sent: Sunday, March 26, 2006 1:34 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Backfill Office Installations? On 3/26/06, Arthur Fuller wrote: > I recently removed Office2K for space reasons, only to discover that I still > need parts of it. Can I reinstall it safely, without damage to the O2k3 > installation, or must I remove it and then install them chronologically? Having tried an O97 after an O2K installation and had it hose both installs, I'd recommend uninstalling all versions and install them chronologically. I know a PITA, but it's the only safe way to do it. -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From dajomigo at tpg.com.au Sun Mar 26 20:56:28 2006 From: dajomigo at tpg.com.au (David & Joanne Gould) Date: Mon, 27 Mar 2006 13:56:28 +1100 Subject: [AccessD] Hide and show image In-Reply-To: References: Message-ID: <6.2.1.2.2.20060327135529.01ef7900@mail.tpg.com.au> Hi Gustav, Sorry for the delay. That's right, I'm not sure what you mean? David At 09:27 PM 25/03/2006, you wrote: >Hi David and Jim > >But the checkbox is only True or False: > > Me.Image5.Visible = Check6.Value > >/gustav > > >>> dajomigo at tpg.com.au 25-03-2006 00:02 >>> >Thanks Jim > >Works a treat > >David > >At 09:12 AM 25/03/2006, you wrote: > >I was talking about a form. > >On a report, you can use the same procedure except put the image control > >in the detail section and use the if statement in Format event. > >The image will show or not show as needed. > > > >Jim > >jhewson at karta.com > > > > > >-----Original Message----- > >From: accessd-bounces at databaseadvisors.com > >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & > Joanne Gould > >Sent: Friday, March 24, 2006 4:09 PM > >To: Access Developers discussion and problem solving > >Subject: Re: [AccessD] Hide and show image > > > >Jim > > > >Thanks for you quick response. > > > >Are you talking about the report or the form? > > > >If the report, where do I put code as I couldn't find anywhere for it? > > > >If the form, how do I store the image into the table? > > > >TIA > > > >David > > > >At 08:42 AM 25/03/2006, you wrote: > > >David, > > >WI would use the image control with the picture of the wheelchair > > >(bmp). The image control can be scaled to the size you need. Just make > > >sure the Size Mode is set to Zoom. Then use code to hide or unhide the > > >image control as needed using the docmd visible command. > > >For example: > > >On the after update event of the checkbox use a simple if statement. > > > > > > If Check6 = 0 Then > > > Me.Image5.Visible = False > > > Else > > > Me.Image5.Visible = True > > > End If > > > > > >Then when it's checked the Wheelchair will show, unchecked the image is > > >not shown. > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From dajomigo at tpg.com.au Sun Mar 26 20:59:14 2006 From: dajomigo at tpg.com.au (David & Joanne Gould) Date: Mon, 27 Mar 2006 13:59:14 +1100 Subject: [AccessD] Hide and show image In-Reply-To: <20060325111043.VWUN1358.omta03sl.mx.bigpond.com@DENZILLAP> References: <6.2.1.2.2.20060325090627.047188e0@mail.tpg.com.au> <20060325111043.VWUN1358.omta03sl.mx.bigpond.com@DENZILLAP> Message-ID: <6.2.1.2.2.20060327135720.01ef7528@mail.tpg.com.au> Darren I've solved it using Jim's solution on the report but am still curious as to how you could programmatically enter an image into an image field in the table. David At 10:09 PM 25/03/2006, you wrote: >Hi David >Either will work - >That code (That Jim described) will work on a report or on a form >Lets assume you have a form and You want to show the image based on the >value in >the checkbox >Lets assume the wheelchair image is called imgWheelChair >Lets assume the checkbox is called chkHasWheelChairAccess > >Put the image on the form and make it hidden (Visible = false) >Create a little function >Call it say... >ps_SetWheelChairImage and - Put it in the code behind the form up near the bit >that says Option Explicit >Copy and paste this > >Private sub ps_SetWheelChairImage() > > If me.chkHasWheelChairAccess = -1 then ' Does have a tick in the box > me.imgWheelChair.visible = true 'so show the image > else ' there is no tick > me.imgWheelChair.visible = false 'Don't show the image > end if >End sub > > >Then in the ON_Current of the form have this > >ps_SetWheelChairImage() > >And in the OnClick of the textbox put... > >ps_SetWheelChairImage() > >That should sort out the form > > >For the report > >Let's assume the image is in the detail section >Let's assume the Field in the table that holds the tick is Calle HasWCAccess >Let's assume it is in the record source of the report >Make sure the property sheet is visible (That's the one with the tabs called >Format, Data, Event, Other and All) >In design view there is a horizontal greay bar going all the way across the >screen called 'Detail' >Click it and then click on the Event tab of the property sheet >Then in the code behind the OnFormat have similar code > >If me.HasWCAccess =-1 then > me.chkHasWheelChairAccess.visible = true >Else > me.chkHasWheelChairAccess.visible = False >End if > > >Phew sounds like a lot >But is simple > >Lemme know off list if you're still aving trouble and I'll knock up a demo > >Hope this helps > >See ya > > > >Darren >------------------------------ >T: 0424 696 433 > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & Joanne >Gould >Sent: Saturday, 25 March 2006 9:09 AM >To: Access Developers discussion and problem solving >Subject: Re: [AccessD] Hide and show image > >Jim > >Thanks for you quick response. > >Are you talking about the report or the form? > >If the report, where do I put code as I couldn't find anywhere for it? > >If the form, how do I store the image into the table? > >TIA > >David > >At 08:42 AM 25/03/2006, you wrote: > >David, > >WI would use the image control with the picture of the wheelchair > >(bmp). The image control can be scaled to the size you need. Just make > >sure the Size Mode is set to Zoom. Then use code to hide or unhide the > >image control as needed using the docmd visible command. > >For example: > >On the after update event of the checkbox use a simple if statement. > > > > If Check6 = 0 Then > > Me.Image5.Visible = False > > Else > > Me.Image5.Visible = True > > End If > > > >Then when it's checked the Wheelchair will show, unchecked the image is > >not shown. > > > >HTH > > > >Jim > >jhewson at karta.com > > > >-----Original Message----- > >From: accessd-bounces at databaseadvisors.com > >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David & > >Joanne Gould > >Sent: Friday, March 24, 2006 3:29 PM > >To: Access Developers discussion and problem solving > >Subject: [AccessD] Hide and show image > > > > > >A database has a check box in its table/form for whether a certain > >location has wheelchair access or not. If it does have wheelchair > >access, then on a listing report, the usual wheelchair symbol is to be > >displayed next to its address. If it doesn't have access, a symbol is not >displayed. > > > >1. Can this be done and if so how? I couldn't find anywhere to set the code. > >2. The only option I could think of was to actually store the image in > >the table with the user having to manually insert the image into the > >field. Can the insertion be automated based on their choice at the checkbox? > > > >TIA > > > >David > > > > > >-- > >AccessD mailing list > >AccessD at databaseadvisors.com > >http://databaseadvisors.com/mailman/listinfo/accessd > >Website: http://www.databaseadvisors.com > >-- > >AccessD mailing list > >AccessD at databaseadvisors.com > >http://databaseadvisors.com/mailman/listinfo/accessd > >Website: http://www.databaseadvisors.com > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From viner at EUnet.yu Mon Mar 27 00:55:33 2006 From: viner at EUnet.yu (Ervin Brindza) Date: Mon, 27 Mar 2006 08:55:33 +0200 Subject: [AccessD] Access and MySQL References: <007b01c64f40$585cdd20$0100a8c0@RazvojErvin> Message-ID: <01b701c6516c$9dd55700$0100a8c0@RazvojErvin> Gustav, Ken, many thanks for the links! Have a nice day, Ervin ----- Original Message ----- From: "Ervin Brindza" To: Sent: Friday, March 24, 2006 2:41 PM Subject: [AccessD] Access and MySQL >I know, today is Friday, but I just started to "play" with Access connected >(throught MyODBC) and MySQL. Can you recommend any useful: hint, code, >sample application? > TIA, > Ervin > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From Gustav at cactus.dk Mon Mar 27 01:21:51 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Mon, 27 Mar 2006 09:21:51 +0200 Subject: [AccessD] Hide and show image Message-ID: Hi David I mean that one code line can replace five. /gustav >>> dajomigo at tpg.com.au 27-03-2006 04:56 >>> Hi Gustav, Sorry for the delay. That's right, I'm not sure what you mean? David At 09:27 PM 25/03/2006, you wrote: >But the checkbox is only True or False: > > Me.Image5.Visible = Check6.Value > > > If Check6 = 0 Then > > > Me.Image5.Visible = False > > > Else > > > Me.Image5.Visible = True > > > End If From dajomigo at tpg.com.au Mon Mar 27 02:17:48 2006 From: dajomigo at tpg.com.au (David & Joanne Gould) Date: Mon, 27 Mar 2006 19:17:48 +1100 Subject: [AccessD] Hide and show image In-Reply-To: References: Message-ID: <6.2.1.2.2.20060327191739.01ee6ba0@mail.tpg.com.au> Thanks, Gustav. At 06:21 PM 27/03/2006, you wrote: >Hi David > >I mean that one code line can replace five. > >/gustav > > >>> dajomigo at tpg.com.au 27-03-2006 04:56 >>> >Hi Gustav, > >Sorry for the delay. That's right, I'm not sure what you mean? > >David > >At 09:27 PM 25/03/2006, you wrote: > > >But the checkbox is only True or False: > > > > Me.Image5.Visible = Check6.Value > > > > > > If Check6 = 0 Then > > > > Me.Image5.Visible = False > > > > Else > > > > Me.Image5.Visible = True > > > > End If > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com From jwcolby at ColbyConsulting.com Mon Mar 27 08:02:32 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Mon, 27 Mar 2006 09:02:32 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets In-Reply-To: <008a01c64fce$b3e40400$6501a8c0@Nant> Message-ID: <00c201c651a7$18a606c0$647aa8c0@ColbyM6805> Shamil, Can you give me a quick rundown (or a web page to read) about interfaces and why you use them? Is it simply to force compliance with the selected interface (ensure that all methods / properties are implemented) or is there some larger reason? John W. Colby www.ColbyConsulting.com From pcs at azizaz.com Mon Mar 27 18:05:25 2006 From: pcs at azizaz.com (Borge Hansen) Date: Tue, 28 Mar 2006 10:05:25 +1000 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <00c201c651a7$18a606c0$647aa8c0@ColbyM6805> Message-ID: <000a01c651fb$50820fe0$fa10a8c0@Albatross> Testing! Posted a question several hours ago. Hasn't come through. When trying to access the AccessD archives - internal server error! borge From pcs at azizaz.com Mon Mar 27 15:08:08 2006 From: pcs at azizaz.com (Borge Hansen) Date: Tue, 28 Mar 2006 07:08:08 +1000 Subject: [AccessD] Error Message References: <00c201c651a7$18a606c0$647aa8c0@ColbyM6805> Message-ID: <00f001c651e2$8efcaaa0$fa10a8c0@Albatross> Hi, Have any of you come across this : When deleting records in a subform I intermittently get the message: 3709 The Search Key was not found in any record The record deletes ok! borge From ecritt1 at alltel.net Mon Mar 27 16:15:51 2006 From: ecritt1 at alltel.net (Penn White) Date: Mon, 27 Mar 2006 17:15:51 -0500 Subject: [AccessD] Cannot uninstall Access 2003 Runtime Message-ID: <005f01c651ec$02188190$0302a8c0@pennp4> I have installed the Access 2003 Runtime on my laptop (and several clients machines) and one of my clients is having difficulties with his installation. I'd like to uninstall the Acc03 Runtime and re-install a new version but when I attempt to do it I get an error stating that another version is already installed and the install package exits. I attempt to uninstall it from Control Panel and even though it looks like it's working, the Acc03 Runtime is taill there and I get the same error when I try running the package again. Has anyone else ever had this problem? Penn From shamil at users.mns.ru Tue Mar 28 04:09:03 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Tue, 28 Mar 2006 14:09:03 +0400 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <00c201c651a7$18a606c0$647aa8c0@ColbyM6805> Message-ID: <002e01c6524f$b8a457f0$6501a8c0@Nant> > Is it simply to force compliance with the selected interface John, For this thread practical testing task (http://smsconsulting.spb.ru/download/tests/a2dds.htm) interfaces(Implements feature) is used to: - have clearly defined interfaces to bind a form to its datasource(s) and to have this form communicating with custom class(es) handling runtime events; - have prepared "socket interfaces"/pluggable test-bed to easily substitute one solution's code with the others. This substitution can be done dynamically(on run-time) or statically(on design time). I don't have a good web page link to read on interfaces(Implements feature). This concept of (abstract) interfaces has many practical applications. On the other hand there is a lot of hype around it. And there are different opinions is this concept good(has more positive effect) or bad(has almost only negative effect) in solving everyday tasks of practical programming especially in custom programming of (relatively simple) tasks for small-/middle-size businesses. >From "rocket computer science" point of view interfaces are the base to implement in practice a subset of what is called also "Liskov Principle" ( http://en.wikipedia.org/wiki/Liskov_substitution_principle) and its consequence "don't talk to stranger" OOP principle - the "Law of Demeter" - http://www.site.uottawa.ca:4321/oose/index.html#LawofDemeter My own understanding of these concepts and their applicability in practical tasks fluctuates with time. But only in positive spectrum part of opinions. And I see more and more practical applications of this concept. And especially in programming for small-/middle-size businesses or programming shareware tools - this is the market(IMO) which urge for agile eXtreme Programming(XP) and Test Driven Development (TDD) as one of the most powerful and flexible practical methods of XP. And the interfaces are a corner stone concept of TDD and code refactoring in its modern understanding - http://martinfowler.com/. The best book (IMO) I have ever read on such advanced concepts is "Object Thinking" by David West (http://www.techbookreport.com/tbr0083.html) - "a kind of philosophical journey towards an understanding of 'object thinking."... The best practical books to get broad vision on this concept and to see real samples are collected here I think (http://www.awprofessional.com/series/series.asp?st=44117&rl=1) - I have just found it. Here is one of my exersizes - http://smsconsulting.spb.ru/patterns/labs/ObserverPatternLab.htm ... Here is a very quick introduction to OOP concepts including interfaces - http://java.sun.com/docs/books/tutorial/java/concepts/ "All that jazz"/buzz of the modern understanding of programming has got a lot from the works of Christopher Alexander (http://www.greatbuildings.com/architects/Christopher_Alexander.html), Smalltalk community and from the work of GoF("Gang of Four" - Erich Gamma, Richard Helm, Ralph Johnson, John M. Vlissides) - "Design Patterns: Elements of Reusable Object-Oriented Software" http://www.awprofessional.com/bookstore/product.asp?isbn=0201633612&rl=1 and their followers as well as from the works/books of Kent Beck - "Embrace change","Test Driven Development by Example" etc. (http://search.barnesandnoble.com/booksearch/isbninquiry.asp?z=y&pwb=1&ean=9780321278654) That my e-mail may look a little bit more theoretical than practical - I wanted to outline by that not my "shift" to theoretical computer science/programming but my opinion that a modern advanced programmer has to have a broad vision/broad context picture of what are all that nowadays OOA&D principles, what associations they are based on and where they go... As a conclusion I must say I didn't read even a half of the sources/books I referred above - I just compiled their list now as a reply on your question :) If I ever had an opportunity for half an year paid vacations (dreams, dreams...) I'd spend the first part in lazy doing nothing and the second reading/investigating all that stuff I referred above - I do think (and I do know from what I read, found by myself or in books/articles and use in my practice) that this is a "nuclear power" stuff with a broad applicability in practical everyday work of every modern programmer. And I must outline as a final conclusion - reading all these good books and artciles gives a lot to not "reinvent the wheel" (because they talk about natural things every programmer will come to by themselves sooner or later) but only everyday practice in using these methods will make a developer agile. This "nuclrear stuff" is not easy and one without enough practice may have easily lost themselves in many classes of the solutions created based on these principles... I'm not there yet (where I should have been as I think after I have got where these principles lead) - "most practioners would agree that it takes a few years to really 'get' objects, unlike the weeks or months it takes to learn the syntax of a language."... Shamil P.S. Of course one can say they can program without objects etc. - yes, I also can do that - it all depends on context of a practical task/project to be developed.... ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Monday, March 27, 2006 6:02 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > Shamil, > > Can you give me a quick rundown (or a web page to read) about interfaces > and > why you use them? Is it simply to force compliance with the selected > interface (ensure that all methods / properties are implemented) or is > there > some larger reason? > > > John W. Colby > www.ColbyConsulting.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From shamil at users.mns.ru Tue Mar 28 05:43:34 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Tue, 28 Mar 2006 15:43:34 +0400 Subject: [AccessD] Access XP forms bound to ADO recordsets References: <00c201c651a7$18a606c0$647aa8c0@ColbyM6805> <002e01c6524f$b8a457f0$6501a8c0@Nant> Message-ID: <003701c6525c$f9fb1b50$6501a8c0@Nant> Folks, I just wanted to add, please, don't get me as a "mad scientist", from my writing like in my previous posting. Yes, I do realize that what I write may sound "a bit crazy". Yes, I do know that good solid modern programming can be done without OOP. All depends on context. But OOP is helpful in this quickly changing world to create and keep well harmonic solutions/software architectures. IMO "class-less" programming is less useful here and results in many overhead expenses, which OOP allows to avoid in long run. The only concept of this "class-less" relatively flexible programming I know are C++ template functions but this is specific C++ language construct, which doesn't exist in VB6/VBA/VB.NET... ...when programming on RSX-11M macro assembler(PDP-11) I did investigate this OS assembler sources because I had a task, which needed to "dynamically patch" one bit in the core of this OS. These assembler sources were a fantastic software code - so well the parts of their functionality were packed and reused. I have never seen so well crafted code like that! And this code was "class-less" of course. But writing OSes is rather stable area, with a few releases over years - different context I mean, which is OK for "class-less" programming... And I wanted also to note that I have many other interests in this life like sports, traveling when money allow, I have a big family, which I work for rather heavy everyday as many of you do. And I see this quickly changing world around me, and I'm still quickly loosing my head with a "women in my hands"(pun intended :)) like it was several days ago when I danced on a party several times with a nice women and my wife(beautiful women) who was also on that party asked me after it - "Did you like her?"... Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 28, 2006 2:09 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> Is it simply to force compliance with the selected interface > John, > > For this thread practical testing task > (http://smsconsulting.spb.ru/download/tests/a2dds.htm) > interfaces(Implements > feature) is used to: > > - have clearly defined interfaces to bind a form to its datasource(s) and > to > have this form communicating with custom class(es) handling runtime > events; > - have prepared "socket interfaces"/pluggable test-bed to easily > substitute > one solution's code with the others. This substitution can be done > dynamically(on run-time) or statically(on design time). > > I don't have a good web page link to read on interfaces(Implements > feature). > This concept of (abstract) interfaces has many practical applications. > On the other hand there is a lot of hype around it. > And there are different opinions is this concept good(has more positive > effect) or bad(has almost only negative effect) in solving everyday tasks > of > practical programming especially in custom programming of (relatively > simple) tasks for small-/middle-size businesses. > >>From "rocket computer science" point of view interfaces are the base to > implement in practice a subset of what is called also "Liskov Principle" ( > http://en.wikipedia.org/wiki/Liskov_substitution_principle) and its > consequence "don't talk to stranger" OOP principle - the "Law of > Demeter" - > http://www.site.uottawa.ca:4321/oose/index.html#LawofDemeter > > My own understanding of these concepts and their applicability in > practical > tasks fluctuates with time. > But only in positive spectrum part of opinions. > And I see more and more practical applications of this concept. > And especially in programming for small-/middle-size businesses or > programming shareware tools - this is the market(IMO) which urge for agile > eXtreme Programming(XP) and Test Driven Development (TDD) as one of the > most > powerful and flexible practical methods of XP. And the interfaces are a > corner stone concept of TDD and code refactoring in its modern > understanding - http://martinfowler.com/. > > The best book (IMO) I have ever read on such advanced concepts is "Object > Thinking" by David West (http://www.techbookreport.com/tbr0083.html) - "a > kind of philosophical journey towards an understanding of 'object > thinking."... > > The best practical books to get broad vision on this concept and to see > real > samples are collected here I think > (http://www.awprofessional.com/series/series.asp?st=44117&rl=1) - I have > just found it. > > Here is one of my exersizes - > http://smsconsulting.spb.ru/patterns/labs/ObserverPatternLab.htm ... > > Here is a very quick introduction to OOP concepts including interfaces - > http://java.sun.com/docs/books/tutorial/java/concepts/ > > "All that jazz"/buzz of the modern understanding of programming has got a > lot from the works of Christopher Alexander > (http://www.greatbuildings.com/architects/Christopher_Alexander.html), > Smalltalk community and from the work of GoF("Gang of Four" - Erich Gamma, > Richard Helm, Ralph Johnson, John M. Vlissides) - "Design Patterns: > Elements > of Reusable Object-Oriented Software" > http://www.awprofessional.com/bookstore/product.asp?isbn=0201633612&rl=1 > and > their followers as well as from the works/books of Kent Beck - "Embrace > change","Test Driven Development by Example" etc. > (http://search.barnesandnoble.com/booksearch/isbninquiry.asp?z=y&pwb=1&ean=9780321278654) > > That my e-mail may look a little bit more theoretical than practical - I > wanted to outline by that not my "shift" to theoretical computer > science/programming but my opinion that a modern advanced programmer has > to > have a broad vision/broad context picture of what are all that nowadays > OOA&D principles, what associations they are based on and where they go... > > As a conclusion I must say I didn't read even a half of the sources/books > I > referred above - I just compiled their list now as a reply on your > question > :) > If I ever had an opportunity for half an year paid vacations (dreams, > dreams...) I'd spend the first part in lazy doing nothing and the second > reading/investigating all that stuff I referred above - I do think (and I > do > know from what I read, found by myself or in books/articles and use in my > practice) that this is a "nuclear power" stuff with a broad applicability > in > practical everyday work of every modern programmer. > > And I must outline as a final conclusion - reading all these good books > and > artciles gives a lot to not "reinvent the wheel" (because they talk about > natural things every programmer will come to by themselves sooner or > later) > but only everyday practice in using these methods will make a developer > agile. This "nuclrear stuff" is not easy and one without enough practice > may > have easily lost themselves in many classes of the solutions created based > on these principles... > > I'm not there yet (where I should have been as I think after I have got > where these principles lead) - "most practioners would agree that it takes > a > few years to really 'get' objects, unlike the weeks or months it takes to > learn the syntax of a language."... > > Shamil > > P.S. Of course one can say they can program without objects etc. - yes, I > also can do that - it all depends on context of a practical task/project > to > be developed.... > > ----- Original Message ----- > From: "John Colby" > To: "'Access Developers discussion and problem solving'" > > Sent: Monday, March 27, 2006 6:02 PM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> Can you give me a quick rundown (or a web page to read) about interfaces >> and >> why you use them? Is it simply to force compliance with the selected >> interface (ensure that all methods / properties are implemented) or is >> there >> some larger reason? >> >> >> John W. Colby >> www.ColbyConsulting.com >> <<< tail skipped >>> From cyx5 at cdc.gov Tue Mar 28 05:47:29 2006 From: cyx5 at cdc.gov (Nicholson, Karen) Date: Tue, 28 Mar 2006 06:47:29 -0500 Subject: [AccessD] Cannot uninstall Access 2003 Runtime Message-ID: Yes. There is a problem with a missing .dll. I just coded one of my apps to detect the version of Access and then to locate the proper .dll based on the extrated version number. Let me look for it and panick not. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Penn White Sent: Monday, March 27, 2006 5:16 PM To: Access Developers discussion and problem solving Subject: [AccessD] Cannot uninstall Access 2003 Runtime I have installed the Access 2003 Runtime on my laptop (and several clients machines) and one of my clients is having difficulties with his installation. I'd like to uninstall the Acc03 Runtime and re-install a new version but when I attempt to do it I get an error stating that another version is already installed and the install package exits. I attempt to uninstall it from Control Panel and even though it looks like it's working, the Acc03 Runtime is taill there and I get the same error when I try running the package again. Has anyone else ever had this problem? Penn -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From ecritt1 at alltel.net Tue Mar 28 06:34:10 2006 From: ecritt1 at alltel.net (Penn White) Date: Tue, 28 Mar 2006 07:34:10 -0500 Subject: [AccessD] Cannot uninstall Access 2003 Runtime References: Message-ID: <000c01c65263$ea43a720$0302a8c0@pennp4> Fabulous! > Let me look for it and panick not. From cyx5 at cdc.gov Tue Mar 28 07:06:50 2006 From: cyx5 at cdc.gov (Nicholson, Karen) Date: Tue, 28 Mar 2006 08:06:50 -0500 Subject: [AccessD] Cannot uninstall Access 2003 Runtime Message-ID: Microsoft finally did document the problem official fixes. When I ran into it, it was not recognized as a problem. I believe Microsoft is a partner with pharmaceutical companies - their tweeks can drive a person to turn into a Shamil!!! I need a picture of Shamil, I picture a man with 7 or 8 PCs, saying swear words in his native language. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Penn White Sent: Tuesday, March 28, 2006 7:34 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Cannot uninstall Access 2003 Runtime Fabulous! > Let me look for it and panick not. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From carbonnb at gmail.com Tue Mar 28 07:33:37 2006 From: carbonnb at gmail.com (Bryan Carbonnell) Date: Tue, 28 Mar 2006 08:33:37 -0500 Subject: [AccessD] Cannot uninstall Access 2003 Runtime In-Reply-To: References: Message-ID: On 3/28/06, Nicholson, Karen wrote: > to turn into a Shamil!!! I need a picture of Shamil, I picture a man > with 7 or 8 PCs, saying swear words in his native language. Doesn't that describe all of us here? The swearing part anyway :-) -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" From shamil at users.mns.ru Tue Mar 28 09:25:49 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Tue, 28 Mar 2006 19:25:49 +0400 Subject: [AccessD] Cannot uninstall Access 2003 Runtime References: Message-ID: <003001c6527c$a96d9030$6501a8c0@Nant> >I need a picture of Shamil, I picture a man > with 7 or 8 PCs, saying swear words in > his native language. Karen You wanted my pic - here it is :) http://smsconsulting.spb.ru/photos/Versaille.JPG This is my pic with my daughter made in spring 2003 in Versailles : I'm in jogging shoes to have it easier to drive the car all around Europe :) And I have only one PC :) (Well, we(my family) have four but I work on one only others used mainly by kids). I do not swear - I sometimes use uncensored Russian slang - it works better that swearing ...:) Shamil ----- Original Message ----- From: "Nicholson, Karen" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 28, 2006 5:06 PM Subject: Re: [AccessD] Cannot uninstall Access 2003 Runtime > Microsoft finally did document the problem official fixes. When I ran > into it, it was not recognized as a problem. I believe Microsoft is a > partner with pharmaceutical companies - their tweeks can drive a person > to turn into a Shamil!!! I need a picture of Shamil, I picture a man > with 7 or 8 PCs, saying swear words in his native language. > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Penn White > Sent: Tuesday, March 28, 2006 7:34 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Cannot uninstall Access 2003 Runtime > > > Fabulous! > >> Let me look for it and panick not. > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From garykjos at gmail.com Tue Mar 28 09:53:58 2006 From: garykjos at gmail.com (Gary Kjos) Date: Tue, 28 Mar 2006 09:53:58 -0600 Subject: [AccessD] Cannot uninstall Access 2003 Runtime In-Reply-To: <003001c6527c$a96d9030$6501a8c0@Nant> References: <003001c6527c$a96d9030$6501a8c0@Nant> Message-ID: Great picture Shamil ! Thanks for sharing. Always good to put a face with the names we see here. Gary On 3/28/06, Shamil Salakhetdinov wrote: > > >I need a picture of Shamil, I picture a man > > with 7 or 8 PCs, saying swear words in > > his native language. > Karen > > You wanted my pic - here it is :) > http://smsconsulting.spb.ru/photos/Versaille.JPG > This is my pic with my daughter made in spring 2003 in Versailles : > I'm in jogging shoes to have it easier to drive the car all around Europe :) > > And I have only one PC :) (Well, we(my family) have four but I work on one > only others used mainly by kids). > > I do not swear - I sometimes use uncensored Russian slang - it works better > that swearing ...:) > > Shamil > > ----- Original Message ----- > From: "Nicholson, Karen" > To: "Access Developers discussion and problem solving" > > Sent: Tuesday, March 28, 2006 5:06 PM > Subject: Re: [AccessD] Cannot uninstall Access 2003 Runtime > > > > Microsoft finally did document the problem official fixes. When I ran > > into it, it was not recognized as a problem. I believe Microsoft is a > > partner with pharmaceutical companies - their tweeks can drive a person > > to turn into a Shamil!!! I need a picture of Shamil, I picture a man > > with 7 or 8 PCs, saying swear words in his native language. > > > > -----Original Message----- > > From: accessd-bounces at databaseadvisors.com > > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Penn White > > Sent: Tuesday, March 28, 2006 7:34 AM > > To: Access Developers discussion and problem solving > > Subject: Re: [AccessD] Cannot uninstall Access 2003 Runtime > > > > > > Fabulous! > > > >> Let me look for it and panick not. > > > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Gary Kjos garykjos at gmail.com From wdhindman at bellsouth.net Tue Mar 28 10:07:46 2006 From: wdhindman at bellsouth.net (William Hindman) Date: Tue, 28 Mar 2006 11:07:46 -0500 Subject: [AccessD] Cannot uninstall Access 2003 Runtime References: Message-ID: <008c01c65281$c1343200$6101a8c0@50NM721> ...only 8? :) William ----- Original Message ----- From: "Nicholson, Karen" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 28, 2006 8:06 AM Subject: Re: [AccessD] Cannot uninstall Access 2003 Runtime > Microsoft finally did document the problem official fixes. When I ran > into it, it was not recognized as a problem. I believe Microsoft is a > partner with pharmaceutical companies - their tweeks can drive a person > to turn into a Shamil!!! I need a picture of Shamil, I picture a man > with 7 or 8 PCs, saying swear words in his native language. > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Penn White > Sent: Tuesday, March 28, 2006 7:34 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Cannot uninstall Access 2003 Runtime > > > Fabulous! > >> Let me look for it and panick not. > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From cfoust at infostatsystems.com Tue Mar 28 10:19:28 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Tue, 28 Mar 2006 08:19:28 -0800 Subject: [AccessD] Access XP forms bound to ADO recordsets Message-ID: Shamil, I doubt anyone who has followed your ideas over time could ever think of you as a "mad scientist"! LOL I love OOP and in my shop we use interfaces as a matter of course. The interface is a road map and the modules that implement it follow the map but put their own spin on how they do it. That makes programming consistent because you can't just arbitrarily change the input and output of a routine dictated by the interface. I fell in love with the concept inheritance long before it was available to VB.Net programmers, but I wasn't willing to learn a language like Java or C++ to use it. It was definitely worth the wait, though. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Tuesday, March 28, 2006 3:44 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Folks, I just wanted to add, please, don't get me as a "mad scientist", from my writing like in my previous posting. Yes, I do realize that what I write may sound "a bit crazy". Yes, I do know that good solid modern programming can be done without OOP. All depends on context. But OOP is helpful in this quickly changing world to create and keep well harmonic solutions/software architectures. IMO "class-less" programming is less useful here and results in many overhead expenses, which OOP allows to avoid in long run. The only concept of this "class-less" relatively flexible programming I know are C++ template functions but this is specific C++ language construct, which doesn't exist in VB6/VBA/VB.NET... ...when programming on RSX-11M macro assembler(PDP-11) I did investigate this OS assembler sources because I had a task, which needed to "dynamically patch" one bit in the core of this OS. These assembler sources were a fantastic software code - so well the parts of their functionality were packed and reused. I have never seen so well crafted code like that! And this code was "class-less" of course. But writing OSes is rather stable area, with a few releases over years - different context I mean, which is OK for "class-less" programming... And I wanted also to note that I have many other interests in this life like sports, traveling when money allow, I have a big family, which I work for rather heavy everyday as many of you do. And I see this quickly changing world around me, and I'm still quickly loosing my head with a "women in my hands"(pun intended :)) like it was several days ago when I danced on a party several times with a nice women and my wife(beautiful women) who was also on that party asked me after it - "Did you like her?"... Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 28, 2006 2:09 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> Is it simply to force compliance with the selected interface > John, > > For this thread practical testing task > (http://smsconsulting.spb.ru/download/tests/a2dds.htm) > interfaces(Implements > feature) is used to: > > - have clearly defined interfaces to bind a form to its datasource(s) and > to > have this form communicating with custom class(es) handling runtime > events; > - have prepared "socket interfaces"/pluggable test-bed to easily > substitute > one solution's code with the others. This substitution can be done > dynamically(on run-time) or statically(on design time). > > I don't have a good web page link to read on interfaces(Implements > feature). > This concept of (abstract) interfaces has many practical applications. > On the other hand there is a lot of hype around it. > And there are different opinions is this concept good(has more positive > effect) or bad(has almost only negative effect) in solving everyday tasks > of > practical programming especially in custom programming of (relatively > simple) tasks for small-/middle-size businesses. > >>From "rocket computer science" point of view interfaces are the base to > implement in practice a subset of what is called also "Liskov Principle" ( > http://en.wikipedia.org/wiki/Liskov_substitution_principle) and its > consequence "don't talk to stranger" OOP principle - the "Law of > Demeter" - > http://www.site.uottawa.ca:4321/oose/index.html#LawofDemeter > > My own understanding of these concepts and their applicability in > practical > tasks fluctuates with time. > But only in positive spectrum part of opinions. > And I see more and more practical applications of this concept. > And especially in programming for small-/middle-size businesses or > programming shareware tools - this is the market(IMO) which urge for agile > eXtreme Programming(XP) and Test Driven Development (TDD) as one of the > most > powerful and flexible practical methods of XP. And the interfaces are a > corner stone concept of TDD and code refactoring in its modern > understanding - http://martinfowler.com/. > > The best book (IMO) I have ever read on such advanced concepts is "Object > Thinking" by David West (http://www.techbookreport.com/tbr0083.html) - "a > kind of philosophical journey towards an understanding of 'object > thinking."... > > The best practical books to get broad vision on this concept and to see > real > samples are collected here I think > (http://www.awprofessional.com/series/series.asp?st=44117&rl=1) - I have > just found it. > > Here is one of my exersizes - > http://smsconsulting.spb.ru/patterns/labs/ObserverPatternLab.htm ... > > Here is a very quick introduction to OOP concepts including interfaces - > http://java.sun.com/docs/books/tutorial/java/concepts/ > > "All that jazz"/buzz of the modern understanding of programming has got a > lot from the works of Christopher Alexander > (http://www.greatbuildings.com/architects/Christopher_Alexander.html), > Smalltalk community and from the work of GoF("Gang of Four" - Erich Gamma, > Richard Helm, Ralph Johnson, John M. Vlissides) - "Design Patterns: > Elements > of Reusable Object-Oriented Software" > http://www.awprofessional.com/bookstore/product.asp?isbn=0201633612&rl=1 > and > their followers as well as from the works/books of Kent Beck - "Embrace > change","Test Driven Development by Example" etc. > (http://search.barnesandnoble.com/booksearch/isbninquiry.asp?z=y&pwb=1&e an=9780321278654) > > That my e-mail may look a little bit more theoretical than practical - I > wanted to outline by that not my "shift" to theoretical computer > science/programming but my opinion that a modern advanced programmer has > to > have a broad vision/broad context picture of what are all that nowadays > OOA&D principles, what associations they are based on and where they go... > > As a conclusion I must say I didn't read even a half of the sources/books > I > referred above - I just compiled their list now as a reply on your > question > :) > If I ever had an opportunity for half an year paid vacations (dreams, > dreams...) I'd spend the first part in lazy doing nothing and the second > reading/investigating all that stuff I referred above - I do think (and I > do > know from what I read, found by myself or in books/articles and use in my > practice) that this is a "nuclear power" stuff with a broad applicability > in > practical everyday work of every modern programmer. > > And I must outline as a final conclusion - reading all these good books > and > artciles gives a lot to not "reinvent the wheel" (because they talk about > natural things every programmer will come to by themselves sooner or > later) > but only everyday practice in using these methods will make a developer > agile. This "nuclrear stuff" is not easy and one without enough practice > may > have easily lost themselves in many classes of the solutions created based > on these principles... > > I'm not there yet (where I should have been as I think after I have got > where these principles lead) - "most practioners would agree that it takes > a > few years to really 'get' objects, unlike the weeks or months it takes to > learn the syntax of a language."... > > Shamil > > P.S. Of course one can say they can program without objects etc. - yes, I > also can do that - it all depends on context of a practical task/project > to > be developed.... > > ----- Original Message ----- > From: "John Colby" > To: "'Access Developers discussion and problem solving'" > > Sent: Monday, March 27, 2006 6:02 PM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> Can you give me a quick rundown (or a web page to read) about interfaces >> and >> why you use them? Is it simply to force compliance with the selected >> interface (ensure that all methods / properties are implemented) or is >> there >> some larger reason? >> >> >> John W. Colby >> www.ColbyConsulting.com >> <<< tail skipped >>> -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cyx5 at cdc.gov Tue Mar 28 11:15:31 2006 From: cyx5 at cdc.gov (Nicholson, Karen) Date: Tue, 28 Mar 2006 12:15:31 -0500 Subject: [AccessD] Access XP forms bound to ADO recordsets Message-ID: I don't think you are a mad scientist, I think you are brilliant. I did not mean anything like that!!! Do you watch Dexter and DiDi??? -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Tuesday, March 28, 2006 11:19 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Shamil, I doubt anyone who has followed your ideas over time could ever think of you as a "mad scientist"! LOL I love OOP and in my shop we use interfaces as a matter of course. The interface is a road map and the modules that implement it follow the map but put their own spin on how they do it. That makes programming consistent because you can't just arbitrarily change the input and output of a routine dictated by the interface. I fell in love with the concept inheritance long before it was available to VB.Net programmers, but I wasn't willing to learn a language like Java or C++ to use it. It was definitely worth the wait, though. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Tuesday, March 28, 2006 3:44 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access XP forms bound to ADO recordsets Folks, I just wanted to add, please, don't get me as a "mad scientist", from my writing like in my previous posting. Yes, I do realize that what I write may sound "a bit crazy". Yes, I do know that good solid modern programming can be done without OOP. All depends on context. But OOP is helpful in this quickly changing world to create and keep well harmonic solutions/software architectures. IMO "class-less" programming is less useful here and results in many overhead expenses, which OOP allows to avoid in long run. The only concept of this "class-less" relatively flexible programming I know are C++ template functions but this is specific C++ language construct, which doesn't exist in VB6/VBA/VB.NET... ...when programming on RSX-11M macro assembler(PDP-11) I did investigate this OS assembler sources because I had a task, which needed to "dynamically patch" one bit in the core of this OS. These assembler sources were a fantastic software code - so well the parts of their functionality were packed and reused. I have never seen so well crafted code like that! And this code was "class-less" of course. But writing OSes is rather stable area, with a few releases over years - different context I mean, which is OK for "class-less" programming... And I wanted also to note that I have many other interests in this life like sports, traveling when money allow, I have a big family, which I work for rather heavy everyday as many of you do. And I see this quickly changing world around me, and I'm still quickly loosing my head with a "women in my hands"(pun intended :)) like it was several days ago when I danced on a party several times with a nice women and my wife(beautiful women) who was also on that party asked me after it - "Did you like her?"... Shamil ----- Original Message ----- From: "Shamil Salakhetdinov" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 28, 2006 2:09 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >> Is it simply to force compliance with the selected interface > John, > > For this thread practical testing task > (http://smsconsulting.spb.ru/download/tests/a2dds.htm) > interfaces(Implements > feature) is used to: > > - have clearly defined interfaces to bind a form to its datasource(s) and > to > have this form communicating with custom class(es) handling runtime > events; > - have prepared "socket interfaces"/pluggable test-bed to easily > substitute > one solution's code with the others. This substitution can be done > dynamically(on run-time) or statically(on design time). > > I don't have a good web page link to read on interfaces(Implements > feature). > This concept of (abstract) interfaces has many practical applications. > On the other hand there is a lot of hype around it. > And there are different opinions is this concept good(has more positive > effect) or bad(has almost only negative effect) in solving everyday tasks > of > practical programming especially in custom programming of (relatively > simple) tasks for small-/middle-size businesses. > >>From "rocket computer science" point of view interfaces are the base to > implement in practice a subset of what is called also "Liskov Principle" ( > http://en.wikipedia.org/wiki/Liskov_substitution_principle) and its > consequence "don't talk to stranger" OOP principle - the "Law of > Demeter" - > http://www.site.uottawa.ca:4321/oose/index.html#LawofDemeter > > My own understanding of these concepts and their applicability in > practical > tasks fluctuates with time. > But only in positive spectrum part of opinions. > And I see more and more practical applications of this concept. > And especially in programming for small-/middle-size businesses or > programming shareware tools - this is the market(IMO) which urge for agile > eXtreme Programming(XP) and Test Driven Development (TDD) as one of the > most > powerful and flexible practical methods of XP. And the interfaces are a > corner stone concept of TDD and code refactoring in its modern > understanding - http://martinfowler.com/. > > The best book (IMO) I have ever read on such advanced concepts is "Object > Thinking" by David West (http://www.techbookreport.com/tbr0083.html) - "a > kind of philosophical journey towards an understanding of 'object > thinking."... > > The best practical books to get broad vision on this concept and to see > real > samples are collected here I think > (http://www.awprofessional.com/series/series.asp?st=44117&rl=1) - I have > just found it. > > Here is one of my exersizes - > http://smsconsulting.spb.ru/patterns/labs/ObserverPatternLab.htm ... > > Here is a very quick introduction to OOP concepts including interfaces - > http://java.sun.com/docs/books/tutorial/java/concepts/ > > "All that jazz"/buzz of the modern understanding of programming has got a > lot from the works of Christopher Alexander > (http://www.greatbuildings.com/architects/Christopher_Alexander.html), > Smalltalk community and from the work of GoF("Gang of Four" - Erich Gamma, > Richard Helm, Ralph Johnson, John M. Vlissides) - "Design Patterns: > Elements > of Reusable Object-Oriented Software" > http://www.awprofessional.com/bookstore/product.asp?isbn=0201633612&rl=1 > and > their followers as well as from the works/books of Kent Beck - "Embrace > change","Test Driven Development by Example" etc. > (http://search.barnesandnoble.com/booksearch/isbninquiry.asp?z=y&pwb=1&e an=9780321278654) > > That my e-mail may look a little bit more theoretical than practical - I > wanted to outline by that not my "shift" to theoretical computer > science/programming but my opinion that a modern advanced programmer has > to > have a broad vision/broad context picture of what are all that nowadays > OOA&D principles, what associations they are based on and where they go... > > As a conclusion I must say I didn't read even a half of the sources/books > I > referred above - I just compiled their list now as a reply on your > question > :) > If I ever had an opportunity for half an year paid vacations (dreams, > dreams...) I'd spend the first part in lazy doing nothing and the second > reading/investigating all that stuff I referred above - I do think (and I > do > know from what I read, found by myself or in books/articles and use in my > practice) that this is a "nuclear power" stuff with a broad applicability > in > practical everyday work of every modern programmer. > > And I must outline as a final conclusion - reading all these good books > and > artciles gives a lot to not "reinvent the wheel" (because they talk about > natural things every programmer will come to by themselves sooner or > later) > but only everyday practice in using these methods will make a developer > agile. This "nuclrear stuff" is not easy and one without enough practice > may > have easily lost themselves in many classes of the solutions created based > on these principles... > > I'm not there yet (where I should have been as I think after I have got > where these principles lead) - "most practioners would agree that it takes > a > few years to really 'get' objects, unlike the weeks or months it takes to > learn the syntax of a language."... > > Shamil > > P.S. Of course one can say they can program without objects etc. - yes, I > also can do that - it all depends on context of a practical task/project > to > be developed.... > > ----- Original Message ----- > From: "John Colby" > To: "'Access Developers discussion and problem solving'" > > Sent: Monday, March 27, 2006 6:02 PM > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > >> Shamil, >> >> Can you give me a quick rundown (or a web page to read) about interfaces >> and >> why you use them? Is it simply to force compliance with the selected >> interface (ensure that all methods / properties are implemented) or is >> there >> some larger reason? >> >> >> John W. Colby >> www.ColbyConsulting.com >> <<< tail skipped >>> -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Tue Mar 28 14:38:18 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Wed, 29 Mar 2006 00:38:18 +0400 Subject: [AccessD] Access XP forms bound to ADO recordsets References: Message-ID: <000f01c652a9$3c752a60$6501a8c0@Nant> Thank you, Karen, No, I didn't know who are Dexter and DeeDee - I needed to consult Google and my minor son who is often watching Fox Cartoon Networks animations. I almost do not watch TV I must say. Some good old action/thriller movies or comedy/romance like "Rambo 1: First Blood","Independence Day" or "Sliver" or "Pretty Girl"...or good (old) Soviet movies/animations - we have had them a lot with really good great actors - there are just a few these days left but the situation is changing to the better both with local actors skills and with local movies quality... Shamil ----- Original Message ----- From: "Nicholson, Karen" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 28, 2006 9:15 PM Subject: Re: [AccessD] Access XP forms bound to ADO recordsets >I don't think you are a mad scientist, I think you are brilliant. I did > not mean anything like that!!! Do you watch Dexter and DiDi??? > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte > Foust > Sent: Tuesday, March 28, 2006 11:19 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access XP forms bound to ADO recordsets > > > Shamil, > > I doubt anyone who has followed your ideas over time could ever think of > you as a "mad scientist"! LOL > > I love OOP and in my shop we use interfaces as a matter of course. The > interface is a road map and the modules that implement it follow the map > but put their own spin on how they do it. That makes programming > consistent because you can't just arbitrarily change the input and > output of a routine dictated by the interface. I fell in love with the > concept inheritance long before it was available to VB.Net programmers, > but I wasn't willing to learn a language like Java or C++ to use it. It > was definitely worth the wait, though. > > > Charlotte Foust > <<< tail skipped >>> From shamil at users.mns.ru Tue Mar 28 14:49:54 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Wed, 29 Mar 2006 00:49:54 +0400 Subject: [AccessD] Does anybody work on this level of abstraction with real life apps data models? Message-ID: <001001c652a9$3c9dc100$6501a8c0@Nant> Hi All, I wanted to ask you how do you usually try to quickly understand existing real life applications data models? I mean the following: - imagine you've got a task to program some utility code for an application with rather tricky datamodel, working application and the question to change this tricky datamodel is out of your responsibility - you're not allowed even to discuss this question (I'm exaggerating about that latter - just wanted to outline that your task is to understand the existing datamodel whatever it's as quickly as possible, accept it and to deliver your solution in time and as good as possible in the given context because the customer is waiting for your working solution not your considerations about datamodel and how good it could have been if you have been allowed to change it....). - there is a good description of this datamodel and its business area but to program effectively you can use just a subset of this datamodel and its description, which you need to quickly filter out from all the existing (thick) stuff to make a simple submodel diagram of the tables used in your utilities and their relationships. And you do not want to spend time to understand all the rest of this datamodel because you're more interested to go watching the next series of Dexter and DeeDee or watch the 100th time your favorite action movie like I do sometimes watch "The White Sun of Desert" - a famous here Soviet action movie I first time watched in 1969 :)... The question is how to quickly understand such a data model and to get it well arranged to solve the urgent customer task? (You given the datamodel diagram but relationships are intersected in a tricky net) Did you ever try to solve such a task first of all on an abstract level? I mean did you ever try to "play" with existing datamodel relationships diagram (graphical diagram I mean) without knowing(/without even taking into account) the meanings(titles) of the tables and their relationships? With the main purpose of this playing being to finally get a relationships structure(graphical diagram) clearly showing you what are the key points of this datamodel, what a the "juncture points", what are the "bands and whistles"? I did try and I think it always work for tricky, sometimes not optimal but rather well normalized data model. I think this is called "building star schema abstract method". And it works in most of the cases. Try it. I did try to google for "start schema" concept definition and as far as I see it is usually linked with OLAP not OLTP data models as here (http://www.tdan.com/i021hy01.htm). I did read first about star schema data models abstraction in a short article in one of programming magazines somewhere in the summer 1995 and since then I use this concept and it always work well am I building datamodels from scratch or am I trying to understand/arrange existing ones... Just wanted to share how (sometimes boring task) of getting well understanding of an intersected net of an existing data model relationships can be converted in a joyful(?) game of shuffling these table's relationships to get at a clear view of the subject business area... Shamil From KIsmert at TexasSystems.com Tue Mar 28 15:44:19 2006 From: KIsmert at TexasSystems.com (Ken Ismert) Date: Tue, 28 Mar 2006 15:44:19 -0600 Subject: [AccessD] Interfaces -- WAS Access XP forms bound to ADO recordsets Message-ID: All objects have an implicit, or default interface. It is the set of property and method calling definitions (or signatures) for the object. Interfaces are nice because they allow the compiler check for calling compliance beforehand, and not wait until runtime to find out that a method was misspelled, or the wrong number of parameters given. Explicit interfaces are helpful with polymorphism -- when many objects need to assume one role, or one object needs to assume many roles. Many objects can implement a single interface, and thus provide services in a standard way to a consumer. Similarly, one object can implement many interfaces, and so fulfill many roles. Interfaces aren't as flexible as inheritance -- when an object implements an interface, it gets just the property and method signatures, but not any functionality. Each object must fill in the interface with its own functionality. Also, you get the whole interface -- you can't just implement the bits you like. While a minor part of the .NET object specification, interfaces are the cutting edge of object sophistication in VBA. And so it will remain -- VBA is a dead language, and will in not too many years be looked back on like Algol, or maybe Fortran. -Ken From shamil at users.mns.ru Tue Mar 28 16:33:15 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Wed, 29 Mar 2006 02:33:15 +0400 Subject: [AccessD] Interfaces -- WAS Access XP forms bound to ADOrecordsets References: Message-ID: <003101c652b7$9c943810$6501a8c0@Nant> Ken, I'd note all that below are "old school" definitions (beginning of 90ies) - and we all very well know what they gave us - COM and VB6/VBA, good but too inflexible to be true in this quickly changing world. This programming world is getting dynamic and late bound interfaces/run-time binding are in the same or even bigger favor now than compile time bound interfaces and implementation inheritance. Test driven development means that you tested all the interfaces by running unit tests - and therefore it doesn't matter does your compiler checks interfaces definitions syntax or not (yes, it's useful but not more than that). Ruby is the next challenge to MS C# and VB.NET... Shamil ----- Original Message ----- From: "Ken Ismert" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 29, 2006 1:44 AM Subject: Re: [AccessD] Interfaces -- WAS Access XP forms bound to ADOrecordsets > > All objects have an implicit, or default interface. It is the set of > property and method calling definitions (or signatures) for the object. > > Interfaces are nice because they allow the compiler check for calling > compliance beforehand, and not wait until runtime to find out that a > method was misspelled, or the wrong number of parameters given. > > Explicit interfaces are helpful with polymorphism -- when many objects > need to assume one role, or one object needs to assume many roles. > > Many objects can implement a single interface, and thus provide services > in a standard way to a consumer. Similarly, one object can implement > many interfaces, and so fulfill many roles. > > Interfaces aren't as flexible as inheritance -- when an object > implements an interface, it gets just the property and method > signatures, but not any functionality. Each object must fill in the > interface with its own functionality. Also, you get the whole interface > -- you can't just implement the bits you like. > > While a minor part of the .NET object specification, interfaces are the > cutting edge of object sophistication in VBA. And so it will remain -- > VBA is a dead language, and will in not too many years be looked back on > like Algol, or maybe Fortran. > > -Ken > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From ecritt1 at alltel.net Tue Mar 28 17:19:58 2006 From: ecritt1 at alltel.net (Penn White) Date: Tue, 28 Mar 2006 18:19:58 -0500 Subject: [AccessD] Cannot uninstall Access 2003 Runtime References: Message-ID: <001e01c652be$218e36f0$0302a8c0@pennp4> Karen, Do you happen to have a reference to this documentation? I have searched MSDN several times and couldn't find anything on it. I have been informed by someone else that the original install package CD needs to be in the CD drive in order for the uninstall to work. I tried it on my test runtime installation on my laptop and it didn't work but I'm going back to a pre-runtime restore point and will try it agani. Thanks again, Penn ----- Original Message ----- From: "Nicholson, Karen" To: "Access Developers discussion and problem solving" Sent: Tuesday, March 28, 2006 8:06 AM Subject: Re: [AccessD] Cannot uninstall Access 2003 Runtime > Microsoft finally did document the problem official fixes. When I ran > into it, it was not recognized as a problem. I believe Microsoft is a > partner with pharmaceutical companies - their tweeks can drive a person > to turn into a Shamil!!! I need a picture of Shamil, I picture a man > with 7 or 8 PCs, saying swear words in his native language. > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Penn White > Sent: Tuesday, March 28, 2006 7:34 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Cannot uninstall Access 2003 Runtime > > > Fabulous! > >> Let me look for it and panick not. > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From martyconnelly at shaw.ca Tue Mar 28 17:31:12 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Tue, 28 Mar 2006 15:31:12 -0800 Subject: [AccessD] Does anybody work on this level of abstraction with real life apps data models? References: <001001c652a9$3c9dc100$6501a8c0@Nant> Message-ID: <4429C740.2020209@shaw.ca> Here is one starting point, it is a library of 4 or 5 hundred simple data models plus a simple tutorial. Handy if you need something to show a client in half an hour as a starting discussion point. Some can be used as sub-models http://www.databaseanswers.org/data_models/index.htm Some samples have a conceptual model, physical data model and or business rules Some also have an emailable Access mdb. Sample business rules http://www.databaseanswers.org/data_models/airline_booking/facts.htm For re-engineering or design, I use a CASE tool, most are in the $99 range, some go for thousands. The one I prefer for Access SQL Server work is Enterprise Architect http://www.sparxsystems.com.au/ea.htm or some of these http://www.databaseanswers.org/modelling_tools.htm The guy that runs this site prefers Dezign http://www.datanamic.com/ Shamil Salakhetdinov wrote: >Hi All, > >I wanted to ask you how do you usually try to quickly understand existing >real life applications data models? > >I mean the following: > >- imagine you've got a task to program some utility code for an application >with rather tricky datamodel, working application and the question to change >this tricky datamodel is out of your responsibility - you're not allowed >even to discuss this question (I'm exaggerating about that latter - just >wanted to outline that your task is to understand the existing datamodel >whatever it's as quickly as possible, accept it and to deliver your solution >in time and as good as possible in the given context because the customer is >waiting for your working solution not your considerations about datamodel >and how good it could have been if you have been allowed to change it....). > >- there is a good description of this datamodel and its business area but to >program effectively you can use just a subset of this datamodel and its >description, which you need to quickly filter out from all the existing >(thick) stuff to make a simple submodel diagram of the tables used in your >utilities and their relationships. And you do not want to spend time to >understand all the rest of this datamodel because you're more interested to >go watching the next series of Dexter and DeeDee or watch the 100th time >your favorite action movie like I do sometimes watch "The White Sun of >Desert" - a famous here Soviet action movie I first time watched in 1969 >:)... > >The question is how to quickly understand such a data model and to get it >well arranged to solve the urgent customer task? (You given the datamodel >diagram but relationships are intersected in a tricky net) > >Did you ever try to solve such a task first of all on an abstract level? I >mean did you ever try to "play" with existing datamodel relationships >diagram (graphical diagram I mean) without knowing(/without even taking into >account) the meanings(titles) of the tables and their relationships? With >the main purpose of this playing being to finally get a relationships >structure(graphical diagram) clearly showing you what are the key points of >this datamodel, what a the "juncture points", what are the "bands and >whistles"? > >I did try and I think it always work for tricky, sometimes not optimal but >rather well normalized data model. > >I think this is called "building star schema abstract method". >And it works in most of the cases. >Try it. > >I did try to google for "start schema" concept definition and as far as I >see it is usually linked with OLAP not OLTP data models as here >(http://www.tdan.com/i021hy01.htm). >I did read first about star schema data models abstraction in a short >article in one of programming magazines somewhere in the summer 1995 and >since then I use this concept and it always work well am I building >datamodels from scratch or am I trying to understand/arrange existing >ones... > >Just wanted to share how (sometimes boring task) of getting well >understanding of an intersected net of an existing data model relationships >can be converted in a joyful(?) game of shuffling these table's >relationships to get at a clear view of the subject business area... > >Shamil > > > -- Marty Connelly Victoria, B.C. Canada From cfoust at infostatsystems.com Tue Mar 28 18:21:13 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Tue, 28 Mar 2006 16:21:13 -0800 Subject: [AccessD] Does anybody work on this level of abstraction with reallife apps data models? Message-ID: Shamil, You'll find more star schema information if you google data warehousing, because it is commonly used in that world. The OLAP thing is just an elaboration on it. A good book is Ralph Kimball's book, The Date Warehouse Toolkit. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Tuesday, March 28, 2006 12:50 PM To: !DBA-MAIN Subject: [AccessD] Does anybody work on this level of abstraction with reallife apps data models? Hi All, I wanted to ask you how do you usually try to quickly understand existing real life applications data models? I mean the following: - imagine you've got a task to program some utility code for an application with rather tricky datamodel, working application and the question to change this tricky datamodel is out of your responsibility - you're not allowed even to discuss this question (I'm exaggerating about that latter - just wanted to outline that your task is to understand the existing datamodel whatever it's as quickly as possible, accept it and to deliver your solution in time and as good as possible in the given context because the customer is waiting for your working solution not your considerations about datamodel and how good it could have been if you have been allowed to change it....). - there is a good description of this datamodel and its business area but to program effectively you can use just a subset of this datamodel and its description, which you need to quickly filter out from all the existing (thick) stuff to make a simple submodel diagram of the tables used in your utilities and their relationships. And you do not want to spend time to understand all the rest of this datamodel because you're more interested to go watching the next series of Dexter and DeeDee or watch the 100th time your favorite action movie like I do sometimes watch "The White Sun of Desert" - a famous here Soviet action movie I first time watched in 1969 :)... The question is how to quickly understand such a data model and to get it well arranged to solve the urgent customer task? (You given the datamodel diagram but relationships are intersected in a tricky net) Did you ever try to solve such a task first of all on an abstract level? I mean did you ever try to "play" with existing datamodel relationships diagram (graphical diagram I mean) without knowing(/without even taking into account) the meanings(titles) of the tables and their relationships? With the main purpose of this playing being to finally get a relationships structure(graphical diagram) clearly showing you what are the key points of this datamodel, what a the "juncture points", what are the "bands and whistles"? I did try and I think it always work for tricky, sometimes not optimal but rather well normalized data model. I think this is called "building star schema abstract method". And it works in most of the cases. Try it. I did try to google for "start schema" concept definition and as far as I see it is usually linked with OLAP not OLTP data models as here (http://www.tdan.com/i021hy01.htm). I did read first about star schema data models abstraction in a short article in one of programming magazines somewhere in the summer 1995 and since then I use this concept and it always work well am I building datamodels from scratch or am I trying to understand/arrange existing ones... Just wanted to share how (sometimes boring task) of getting well understanding of an intersected net of an existing data model relationships can be converted in a joyful(?) game of shuffling these table's relationships to get at a clear view of the subject business area... Shamil -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From KIsmert at TexasSystems.com Tue Mar 28 18:49:47 2006 From: KIsmert at TexasSystems.com (Ken Ismert) Date: Tue, 28 Mar 2006 18:49:47 -0600 Subject: [AccessD] Access XP forms bound to ADO recordsets Message-ID: >> ...I danced on a party several times with a nice women... You go to parties ... With non-virtual women?!?!?! Can I come next time, please-please-please??? Doh ... You live in Russia ... -Ken From pcs at azizaz.com Wed Mar 29 01:05:48 2006 From: pcs at azizaz.com (Borge Hansen) Date: Wed, 29 Mar 2006 17:05:48 +1000 Subject: [AccessD] Click Event References: Message-ID: <016c01c652ff$3801d4a0$fa10a8c0@Albatross> Here's a less abstract question: We are in a Form's code module I have code on the click event of a command button, called say cmd3 Anywhere in the code module I can call the click event like this: cmd3_click Is this an ok way? Further, how can I called the click event of the same command button in this context: Me("cmd3") ????click thanks for any quick reply regards borge From shamil at users.mns.ru Wed Mar 29 02:34:16 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Wed, 29 Mar 2006 12:34:16 +0400 Subject: [AccessD] Click Event References: <016c01c652ff$3801d4a0$fa10a8c0@Albatross> Message-ID: <002201c6530b$92acc660$6501a8c0@Nant> > cmd3_click > Is this an ok way? Borge, Yes, that's OK. Although if you need to call the code of a button's Click event from several parts of your form's code or even from outside of the form's module then you'd better separate this code into a (public) function/sub. > Me("cmd3") ????click You cannot call Click event of a button - you can indirectly force it to be triggered/fired, e.g. this way: Me("cmd3").SetFocus SendKeys "{Enter}" Shamil ----- Original Message ----- From: "Borge Hansen" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 29, 2006 11:05 AM Subject: [AccessD] Click Event > Here's a less abstract question: > > We are in a Form's code module > > I have code on the click event of a command button, called say cmd3 > > Anywhere in the code module I can call the click event like this: > cmd3_click > > Is this an ok way? > > Further, how can I called the click event of the same command button in > this > context: > > Me("cmd3") ????click > > thanks for any quick reply > > regards > borge > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From bheid at appdevgrp.com Wed Mar 29 06:25:12 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Wed, 29 Mar 2006 07:25:12 -0500 Subject: [AccessD] [SPAM SUSPECT] Click Event In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D792D9@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D35191@ADGSERVER> I prefer to have a helper function that can be called from cmd3_onclick and from elsewhere as needed. That way, if the processing for cmd3 needs to change, and you would not want the changes to occur for the other locations that you are calling the existing code, you do not have to worry about changing all of your code elsewhere. But, I have to admit, I have taken that shortcut before. LOL. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Borge Hansen Sent: Wednesday, March 29, 2006 2:06 AM To: Access Developers discussion and problem solving Subject: [SPAM SUSPECT] [AccessD] Click Event Importance: Low Here's a less abstract question: We are in a Form's code module I have code on the click event of a command button, called say cmd3 Anywhere in the code module I can call the click event like this: cmd3_click Is this an ok way? Further, how can I called the click event of the same command button in this context: Me("cmd3") ????click thanks for any quick reply regards borge From Chester_Kaup at kindermorgan.com Wed Mar 29 08:03:31 2006 From: Chester_Kaup at kindermorgan.com (Kaup, Chester) Date: Wed, 29 Mar 2006 08:03:31 -0600 Subject: [AccessD] Message box in a macro Message-ID: Is it possible to display in a message box the time that a macro starts running and in another message box the total time to run the macro? Or is there a better way to do this. Chester Kaup Engineering Technician Kinder Morgan CO2 Company, LLP Office (432) 688-3797 FAX (432) 688-3799 No trees were killed in the sending of this message. However a large number of electrons were terribly inconvenienced. From bchacc at san.rr.com Wed Mar 29 08:26:56 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Wed, 29 Mar 2006 06:26:56 -0800 Subject: [AccessD] Message box in a macro In-Reply-To: References: Message-ID: <442A9930.2030007@san.rr.com> Chester: I'd store the start and stop times in a variable and display them both, with the elapsed time, at the end of the macro in a message box or a pop up form. That way you could see just how long it took to run. Rocky Kaup, Chester wrote: > Is it possible to display in a message box the time that a macro starts > running and in another message box the total time to run the macro? Or > is there a better way to do this. > > > > Chester Kaup > > Engineering Technician > > Kinder Morgan CO2 Company, LLP > > Office (432) 688-3797 > > FAX (432) 688-3799 > > > > > > No trees were killed in the sending of this message. However a large > number of electrons were terribly inconvenienced. > > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From ewaldt at gdls.com Wed Mar 29 08:42:08 2006 From: ewaldt at gdls.com (ewaldt at gdls.com) Date: Wed, 29 Mar 2006 09:42:08 -0500 Subject: [AccessD] Trusted Site question In-Reply-To: Message-ID: I'm sure you're all familiar with this wunnerful message: "Microsoft Access cannot open this file. This file is located outside your intranet or on an untrusted site. Microsoft Access will not open the file due to potential, security problems. To open the file, copy it to your machine or an accessible network location." In my particular case, the file is on a trusted site, which is correctly configured as such in Internet Explorer. Is there something else that needs to be done within Access itself? I need for this file to be accessible to several people at a time, using record-locking, so copying to one's hard drive and then uploading it back to the site won't cut it. TIA. Thomas F. Ewald FCS Database Manager General Dynamics Land Systems (586) 276-1256 This is an e-mail from General Dynamics Land Systems. It is for the intended recipient only and may contain confidential and privileged information. No one else may read, print, store, copy, forward or act in reliance on it or its attachments. If you are not the intended recipient, please return this message to the sender and delete the message and any attachments from your computer. Your cooperation is appreciated. From bill_Patten at earthlink.net Wed Mar 29 09:55:53 2006 From: bill_Patten at earthlink.net (Bill Patten) Date: Wed, 29 Mar 2006 07:55:53 -0800 Subject: [AccessD] Trusted Site question References: Message-ID: <000d01c65349$42f6b3e0$6501a8c0@BPCS> Hi Thomas, Usually you can just right click on the file and select properties, down at the bottom of the form you may see a check box marked unblock, unclick it an all should be OK. Copying the file from an ntfs format to a fat32 format and back sometimes works also. Bill ----- Original Message ----- From: To: Sent: Wednesday, March 29, 2006 6:42 AM Subject: [AccessD] Trusted Site question I'm sure you're all familiar with this wunnerful message: "Microsoft Access cannot open this file. This file is located outside your intranet or on an untrusted site. Microsoft Access will not open the file due to potential, security problems. To open the file, copy it to your machine or an accessible network location." In my particular case, the file is on a trusted site, which is correctly configured as such in Internet Explorer. Is there something else that needs to be done within Access itself? I need for this file to be accessible to several people at a time, using record-locking, so copying to one's hard drive and then uploading it back to the site won't cut it. TIA. Thomas F. Ewald FCS Database Manager General Dynamics Land Systems (586) 276-1256 This is an e-mail from General Dynamics Land Systems. It is for the intended recipient only and may contain confidential and privileged information. No one else may read, print, store, copy, forward or act in reliance on it or its attachments. If you are not the intended recipient, please return this message to the sender and delete the message and any attachments from your computer. Your cooperation is appreciated. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From ecritt1 at alltel.net Wed Mar 29 10:48:46 2006 From: ecritt1 at alltel.net (Penn White) Date: Wed, 29 Mar 2006 11:48:46 -0500 Subject: [AccessD] Cannot uninstall Access 2003 Runtime References: <001e01c652be$218e36f0$0302a8c0@pennp4> Message-ID: <002101c65350$a589d300$0302a8c0@pennp4> For anyone who's interested, I solved the problem. The uninstall MUST be run from the Setup Package CD itself. Running the "Remove" in Control Panel, Add/Remove Programs will NOT work, whether the origninal install CD is in the CD drive or not. In fact, even after running "Remove" from the CD Package Setup.exe, if you look in Control Panel - Add/Remove programs, Microsoft Access 2003 Runtime is still there. irrespective of that, you can still run a re-install off the same CD (or another, newer version, presumably, although I haven't tested it). Penn From martyconnelly at shaw.ca Wed Mar 29 12:11:00 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Wed, 29 Mar 2006 10:11:00 -0800 Subject: [AccessD] Cannot uninstall Access 2003 Runtime References: <001e01c652be$218e36f0$0302a8c0@pennp4> <002101c65350$a589d300$0302a8c0@pennp4> Message-ID: <442ACDB4.3020409@shaw.ca> I wonder, if this isn't somehow to protect against having multiple runtime installs removed either for a specific version or multiple versions of the Access runtime on the machine. Penn White wrote: >For anyone who's interested, I solved the problem. > >The uninstall MUST be run from the Setup Package CD itself. Running the >"Remove" in Control Panel, Add/Remove Programs will NOT work, whether the >origninal install CD is in the CD drive or not. In fact, even after running >"Remove" from the CD Package Setup.exe, if you look in Control Panel - >Add/Remove programs, Microsoft Access 2003 Runtime is still there. >irrespective of that, you can still run a re-install off the same CD (or >another, newer version, presumably, although I haven't tested it). > >Penn > > > -- Marty Connelly Victoria, B.C. Canada From KIsmert at TexasSystems.com Wed Mar 29 13:29:23 2006 From: KIsmert at TexasSystems.com (Ken Ismert) Date: Wed, 29 Mar 2006 13:29:23 -0600 Subject: [AccessD] Interfaces Message-ID: Shamil, >>I'd note all that below are "old school" >>definitions (beginning of 90ies) Yes, I admit that. >> ... COM and VB6/VBA, good but too inflexible ... >> ... late bound interfaces/run-time binding >> are in the same or even bigger favor ... Surprisingly, VB6/VBA is not fundamentally inflexible -- but the orthodoxy of how to use it is. Remove Option Explicit from your module header, and you can write code like: Public Sub Test() a = "ABC" b = 1234 Set c = CurrentDb() Debug.Print a, VarType(a) Debug.Print b, VarType(b) Debug.Print c.Name, TypeName(c) End Sub Looking kind of dynamic, no? But how many times have the VB gods told you that this style of code was wrong? And VB has always had late bound interfaces/run-time binding using the Object type. In fact, it may be possible to do a decent implementation of run-time introspection and partial binding to foreign interfaces -- using VBA only, with no custom support DLLs/ActiveX required. My point is not to bash the new stuff -- it has its obvious merits. But, if you are prepared to shed preconceptions, the old wave can probably do 95% of what the new wave can do. >> ... Test driven development means that you tested >> all the interfaces by running unit tests ... That is the big problem with dynamic languages: verifiability. Thus, the emphasis on test-driven development in the dynamic Ruby and Python platforms. It is the latest attempt to bridge the chasm between static/inflexible/verifiable languages (C, C++, Java, ...) and dynamic/flexible/hard-to-verify (Lisp, Smalltalk, Python, Ruby). I bring up Lisp and Smalltalk because they, in their day, were supposed to revolutionize the world with their dynamic flexibility -- but they didn't. >> Ruby is the next challenge to MS C# and VB.NET... In terms of purity of concept, Ruby is it. For the time being, I'm going with Python, not because it is the 'ideal' language, but for purely practical reasons that I am not going to outline in this post. -Ken From jmhecht at earthlink.net Wed Mar 29 14:03:29 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Wed, 29 Mar 2006 12:03:29 -0800 Subject: [AccessD] Report Grouping Question Message-ID: <002001c6536b$d97e58a0$6701a8c0@HPLaptop> No more goofing off. I need to finish this project. I have a report that groups employees by terminal they work at. If the list is one page things are fine. If there is a terminal with more than one page for that terminal I need to list that terminal on page 2 or more for a given terminal. Joe Hecht jmhecht at earthlink.net From bchacc at san.rr.com Wed Mar 29 14:20:57 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Wed, 29 Mar 2006 12:20:57 -0800 Subject: [AccessD] Report Grouping Question In-Reply-To: <002001c6536b$d97e58a0$6701a8c0@HPLaptop> References: <002001c6536b$d97e58a0$6701a8c0@HPLaptop> Message-ID: <442AEC29.4080507@san.rr.com> Joe: There's a Repeat Section property on group headers. If you're grouping on terminal set that to true and the header with the terminal ID will repeat at the top of the next page. Rocky Joe Hecht wrote: > No more goofing off. I need to finish this project. > > > > I have a report that groups employees by terminal they work > at. If the list is one page things are fine. > > > > If there is a terminal with more than one page for that > terminal I need to list that terminal on page 2 or more for > a given terminal. > > > > Joe Hecht > > jmhecht at earthlink.net > > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From Donald.A.McGillivray at sprint.com Wed Mar 29 14:35:46 2006 From: Donald.A.McGillivray at sprint.com (Mcgillivray, Don [IT]) Date: Wed, 29 Mar 2006 14:35:46 -0600 Subject: [AccessD] Report Grouping Question Message-ID: Joe, As an alternative - if horizontal report real estate permits - you might want to play around with the settings on the "Columns" tab of the Page Setup dialog. In cases where you're displaying a narrow (less than half the width of the page) column of data, this can get you much more data per page. Don From jmhecht at earthlink.net Wed Mar 29 14:38:00 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Wed, 29 Mar 2006 12:38:00 -0800 Subject: [AccessD] Report Grouping Question In-Reply-To: <442AEC29.4080507@san.rr.com> Message-ID: <002a01c65370$ac473c30$6701a8c0@HPLaptop> Thanks Rocky, That's what I forgot. Joe Hecht jmhecht at earthlink.net -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Wednesday, March 29, 2006 12:21 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Report Grouping Question Joe: There's a Repeat Section property on group headers. If you're grouping on terminal set that to true and the header with the terminal ID will repeat at the top of the next page. Rocky Joe Hecht wrote: > No more goofing off. I need to finish this project. > > > > I have a report that groups employees by terminal they work > at. If the list is one page things are fine. > > > > If there is a terminal with more than one page for that > terminal I need to list that terminal on page 2 or more for > a given terminal. > > > > Joe Hecht > > jmhecht at earthlink.net > > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jmhecht at earthlink.net Wed Mar 29 14:40:49 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Wed, 29 Mar 2006 12:40:49 -0800 Subject: [AccessD] Report Grouping Question In-Reply-To: Message-ID: <002b01c65371$10acd590$6701a8c0@HPLaptop> Good thought for future design thought. This one just has a lot of folks. Thanks Joe Hecht jmhecht at earthlink.net -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mcgillivray, Don [IT] Sent: Wednesday, March 29, 2006 12:36 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Report Grouping Question Joe, As an alternative - if horizontal report real estate permits - you might want to play around with the settings on the "Columns" tab of the Page Setup dialog. In cases where you're displaying a narrow (less than half the width of the page) column of data, this can get you much more data per page. Don -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jmhecht at earthlink.net Wed Mar 29 14:55:54 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Wed, 29 Mar 2006 12:55:54 -0800 Subject: [AccessD] Add new record issues Message-ID: <002c01c65373$2c677540$6701a8c0@HPLaptop> I have a form subform with tabs that looks at existing data no problem. I am having a bad time using it to add new records. When I put in a new employee it pulls up existing records and not necessarily for the correct employee. The add new form is opened from a command button wizard that is supposedly opening the form in add new mode. Help please. Joe Hecht jmhecht at earthlink.net From jmhecht at earthlink.net Wed Mar 29 14:59:57 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Wed, 29 Mar 2006 12:59:57 -0800 Subject: [AccessD] Add new record issues In-Reply-To: <002c01c65373$2c677540$6701a8c0@HPLaptop> Message-ID: <003101c65373$bcf47680$6701a8c0@HPLaptop> I made a copy of the form and set data entry = true. That is not the answer. Joe Hecht jmhecht at earthlink.net -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Joe Hecht Sent: Wednesday, March 29, 2006 12:56 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Add new record issues I have a form subform with tabs that looks at existing data no problem. I am having a bad time using it to add new records. When I put in a new employee it pulls up existing records and not necessarily for the correct employee. The add new form is opened from a command button wizard that is supposedly opening the form in add new mode. Help please. Joe Hecht jmhecht at earthlink.net -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at users.mns.ru Wed Mar 29 15:20:22 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Thu, 30 Mar 2006 01:20:22 +0400 Subject: [AccessD] Interfaces References: Message-ID: <000b01c65376$d5b4cc80$6501a8c0@Nant> > I bring up Lisp and Smalltalk because they, in their day, were supposed > to revolutionize the world with their dynamic flexibility -- but they > didn't. Yes, Ken, And before that(?) it was Artificial Intelligence (AI), which was expected to solve all the problems... What happens AFAIU is a natural evolution and as I was teached here on Marxists-Leninist Dialectics (:)) lectures while in high school - evolution is based on "the unity and the struggle of the contrasts/differences". And evolution evolves as a spiral and from time to time the "law of denying the denying" (sorry for my English) rejects almost all the principles, which were the foundation of an "old school" theory and practice and returns the "good old" principles and makes them the foundation of the "new" theory and practice but on higher level of evolution spiral.... This is what happens in programming now IMO - SmallTalk and LISP were great but a way ahead their time to be effectively used for practical real life programming - these days the nowadays practical challenges and the high level of the modern technology allow to "recall them from shadows" and effectively use and even go on higher level as Ruby (I'm not Ruby expert, even not a beginner - I only read about some of its principles and what it allows to do dynamically on run-time)... > But, if you are prepared to shed preconceptions, the old wave can probably > do > 95% of what the new wave can do. Ken, IMO it can't solve the issues, which can be effectively solved only by Test Driven Development and Unit Testing - the latter is the "new school" and in general the new school programming languages can exist without almost any compile time binding. Well, the pure "old school" can still do a lot but based on BDUF(Big Design UpFront) and intensive and expensive "old school" testing methods. As I noted already - all depends on context - and I do agree that good old C++(its latest standard with STL etc.) together with TDD and Unit Testing can solve 95% of the modern challenges... Shamil ----- Original Message ----- From: "Ken Ismert" To: "Access Developers discussion and problem solving" Sent: Wednesday, March 29, 2006 11:29 PM Subject: Re: [AccessD] Interfaces > > Shamil, > >>>I'd note all that below are "old school" >>>definitions (beginning of 90ies) > > Yes, I admit that. > >>> ... COM and VB6/VBA, good but too inflexible ... >>> ... late bound interfaces/run-time binding >>> are in the same or even bigger favor ... > > Surprisingly, VB6/VBA is not fundamentally inflexible -- but the > orthodoxy of how to use it is. Remove Option Explicit from your module > header, and you can write code like: > > Public Sub Test() > a = "ABC" > b = 1234 > Set c = CurrentDb() > Debug.Print a, VarType(a) > Debug.Print b, VarType(b) > Debug.Print c.Name, TypeName(c) > End Sub > > Looking kind of dynamic, no? But how many times have the VB gods told > you that this style of code was wrong? And VB has always had late bound > interfaces/run-time binding using the Object type. In fact, it may be > possible to do a decent implementation of run-time introspection and > partial binding to foreign interfaces -- using VBA only, with no custom > support DLLs/ActiveX required. > > My point is not to bash the new stuff -- it has its obvious merits. But, > if you are prepared to shed preconceptions, the old wave can probably do > 95% of what the new wave can do. > >>> ... Test driven development means that you tested >>> all the interfaces by running unit tests ... > > That is the big problem with dynamic languages: verifiability. Thus, the > emphasis on test-driven development in the dynamic Ruby and Python > platforms. It is the latest attempt to bridge the chasm between > static/inflexible/verifiable languages (C, C++, Java, ...) and > dynamic/flexible/hard-to-verify (Lisp, Smalltalk, Python, Ruby). > > I bring up Lisp and Smalltalk because they, in their day, were supposed > to revolutionize the world with their dynamic flexibility -- but they > didn't. > >>> Ruby is the next challenge to MS C# and VB.NET... > > In terms of purity of concept, Ruby is it. For the time being, I'm going > with Python, not because it is the 'ideal' language, but for purely > practical reasons that I am not going to outline in this post. > > -Ken > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From jmhecht at earthlink.net Wed Mar 29 17:55:36 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Wed, 29 Mar 2006 15:55:36 -0800 Subject: [AccessD] SO CAL MEETING Message-ID: <004a01c6538c$46a91210$6701a8c0@HPLaptop> Any interest in a SO Cal Conference? Not sure when other than not the week of the 4th of July. This is a mood check only. Not a promise Joe Hecht jmhecht at earthlink.net From bchacc at san.rr.com Wed Mar 29 18:28:03 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Wed, 29 Mar 2006 16:28:03 -0800 Subject: [AccessD] SO CAL MEETING In-Reply-To: <004a01c6538c$46a91210$6701a8c0@HPLaptop> References: <004a01c6538c$46a91210$6701a8c0@HPLaptop> Message-ID: <442B2613.6090308@san.rr.com> No can do. 4th of July we we're at camp. Not too far away - Lake Arrowhead - but just far enough. Rocky Joe Hecht wrote: > Any interest in a SO Cal Conference? Not sure when other > than not the week of the 4th of July. > > > > This is a mood check only. Not a promise > > > > Joe Hecht > > jmhecht at earthlink.net > > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From kathryn at bassett.net Wed Mar 29 19:30:23 2006 From: kathryn at bassett.net (Kathryn Bassett) Date: Wed, 29 Mar 2006 17:30:23 -0800 Subject: [AccessD] SO CAL MEETING In-Reply-To: <004a01c6538c$46a91210$6701a8c0@HPLaptop> Message-ID: <20060329173028.3EA9542A@dm17.mta.everyone.net> Joe H said: > Any interest in a SO Cal Conference? Not sure when other than > not the week of the 4th of July. > This is a mood check only. Not a promise Will be gone Jul 11-18, but otherwise I'm pretty open (agree that 4th is not a good idea). -- Kathryn Rhinehart Bassett (Pasadena CA) "Genealogy is my bag" "GH is my soap" kathryn at bassett.net http://bassett.net From jmhecht at earthlink.net Wed Mar 29 20:23:32 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Wed, 29 Mar 2006 18:23:32 -0800 Subject: [AccessD] Update Query (I think) Question Message-ID: <005301c653a0$f16e0570$6701a8c0@HPLaptop> I have a field that currently is 00-00 format. I want to make it 00-000. I am having trouble coming up with a way to do this. Please advise. Thanks Joe Hecht jmhecht at earthlink.net From harkinsss at bellsouth.net Wed Mar 29 20:30:41 2006 From: harkinsss at bellsouth.net (Susan Harkins) Date: Wed, 29 Mar 2006 21:30:41 -0500 Subject: [AccessD] Update Query (I think) Question In-Reply-To: <005301c653a0$f16e0570$6701a8c0@HPLaptop> Message-ID: <000901c653a1$f1298cf0$a7b3d6d1@SUSANONE> UPDATE table SET field = "00-000" WHERE field = "00-00" Susan H. I have a field that currently is 00-00 format. I want to make it 00-000. From jmhecht at earthlink.net Wed Mar 29 20:48:56 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Wed, 29 Mar 2006 18:48:56 -0800 Subject: [AccessD] Update Query (I think) Question In-Reply-To: <000901c653a1$f1298cf0$a7b3d6d1@SUSANONE> Message-ID: <006001c653a4$7da560d0$6701a8c0@HPLaptop> Susan, Where did I mess up your genius? UPDATE 30_tbl_AI_Master2 SET field [30_tbl_AI_Master2].ACCIDENT = "00-000" WHERE field ((([30_tbl_AI_Master2].ACCIDENT)="00-00")); Joe Hecht jmhecht at earthlink.net -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Wednesday, March 29, 2006 6:31 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Update Query (I think) Question UPDATE table SET field = "00-000" WHERE field = "00-00" Susan H. I have a field that currently is 00-00 format. I want to make it 00-000. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jmhecht at earthlink.net Wed Mar 29 21:01:53 2006 From: jmhecht at earthlink.net (Joe Hecht) Date: Wed, 29 Mar 2006 19:01:53 -0800 Subject: [AccessD] Day of week as name Message-ID: <006101c653a6$4c9b4ac0$6701a8c0@HPLaptop> Trying to return the day of the week as a name. weekdayname(txtACCIDENT_dATE,,vbUseSystemDayOfWeek) gets me runtime error 5 invalid procedure call or argument I want the after update event of txt_accident_date to stuff the day of the week into txtDayofWeek. Thanks Joe Hecht jmhecht at earthlink.net From stuart at lexacorp.com.pg Wed Mar 29 21:21:17 2006 From: stuart at lexacorp.com.pg (stuart at lexacorp.com.pg) Date: Thu, 30 Mar 2006 13:21:17 +1000 Subject: [AccessD] Day of week as name In-Reply-To: <006101c653a6$4c9b4ac0$6701a8c0@HPLaptop> Message-ID: <442BDB4D.11164.123CFF1@stuart.lexacorp.com.pg> On 29 Mar 2006 at 19:01, Joe Hecht wrote: > > weekdayname(txtACCIDENT_dATE,,vbUseSystemDayOfWeek) > Weekdayname takes a weekday number (1-7), not a date. Use Weekdayname(weekday(txtAccident_Date)) or Weekdayname(Datepart("w",txtAccident_Date)) or Format(txtAccident_Date,"dddd") -- Stuart From ldoering at symphonyinfo.com Wed Mar 29 21:21:58 2006 From: ldoering at symphonyinfo.com (Liz Doering) Date: Wed, 29 Mar 2006 21:21:58 -0600 Subject: [AccessD] Update Query (I think) Question Message-ID: <855499653F55AD4190B242717DF132BC10C5ED@dewey.Symphony.local> Leave out the words 'field' UPDATE 30_tbl_AI_Master2 SET [30_tbl_AI_Master2].ACCIDENT = "00-000" WHERE ((([30_tbl_AI_Master2].ACCIDENT)="00-00")); Liz -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Joe Hecht Sent: Wednesday, March 29, 2006 9:01 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Update Query (I think) Question Susan, Where did I mess up your genius? UPDATE 30_tbl_AI_Master2 SET field [30_tbl_AI_Master2].ACCIDENT = "00-000" WHERE field ((([30_tbl_AI_Master2].ACCIDENT)="00-00")); Joe Hecht jmhecht at earthlink.net -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Wednesday, March 29, 2006 6:31 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Update Query (I think) Question UPDATE table SET field = "00-000" WHERE field = "00-00" Susan H. I have a field that currently is 00-00 format. I want to make it 00-000. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Thu Mar 30 01:33:52 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Thu, 30 Mar 2006 09:33:52 +0200 Subject: [AccessD] Weekday count and next Monday or Thursday Message-ID: Hi all Ever had the need to find next Monday or Thursday whatever is closest? Or similar. Here's how: datNow = Date datNext = DateAdd("d", 4 - Weekday(datNow, vbMonday) Mod 4, datNow) The days to add from Monday to Wednesday is 3-2-1. The days to add from Thursday to Sunday is 4-3-2-1. Weekday(date, vbMonday) returns the weekday with Monday as weekday 1. Note that no weekday is zero. The modulus 4 "resets" the weekday count to "start over" at Thursday at which the returned value is zero. Thus the returned modified weekday for Monday to Thursday is 1-2-3-0-1-2-3. The maximum days to add is 4 days. Now, subtract the modified weekday from this to obtain the days to add for Monday to Sunday: 3-2-1-4-3-2-1. /gustav From jwcolby at ColbyConsulting.com Thu Mar 30 06:01:50 2006 From: jwcolby at ColbyConsulting.com (John Colby) Date: Thu, 30 Mar 2006 07:01:50 -0500 Subject: [AccessD] OT: Where have all my outlook toolbars gone, long time passing, where have all my outlook toolbars gone, long time agooooooohhhhh Message-ID: <000f01c653f1$bb7b1fb0$647aa8c0@ColbyM6805> I built a customer toolbar for my blue frog macro, went to some effort to make it pretty, and now it is gone. The same thing happened on my wife's computer, I built the toolbar, and it just "disappeared". If I right-click on the menu area, my custom toolbar is not in the list of toolbars that exist so I can't just select it to make it re-appear. Any idea where they go? Is there any "getting them back"? John W. Colby www.ColbyConsulting.com From bheid at appdevgrp.com Thu Mar 30 07:09:24 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Thu, 30 Mar 2006 08:09:24 -0500 Subject: [AccessD] OT: Hamachi - again... Message-ID: <916187228923D311A6FE00A0CC3FAA30D3519C@ADGSERVER> Hey all, Sorry for the OT, but this was briefly discussed here earlier and I am having an issue with Hamachi. A while back there was some talk about using Hamachi. Well, I just installed it and it seems pretty neat. I am able to run tightVNC over it to securely remote control my home pc. I have run up against an issue when I try to browse my home PC through Hamachi. It returns an error message like : "The path '\\5.x.x.x' does not exist or is not a directory." with a window title of "Windows Explorer". I can message the home pc, but not browse it. I would like to be able to do file transfers. Anyone have any ideas on this? Thanks, Bobby From carbonnb at gmail.com Thu Mar 30 07:12:03 2006 From: carbonnb at gmail.com (Bryan Carbonnell) Date: Thu, 30 Mar 2006 08:12:03 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D3519C@ADGSERVER> References: <916187228923D311A6FE00A0CC3FAA30D3519C@ADGSERVER> Message-ID: On 3/30/06, Bobby Heid wrote: > A while back there was some talk about using Hamachi. Well, I just > installed it and it seems pretty neat. I am able to run tightVNC over it to > securely remote control my home pc. > > I have run up against an issue when I try to browse my home PC through > Hamachi. It returns an error message like : "The path '\\5.x.x.x' does not > exist or is not a directory." with a window title of "Windows Explorer". > > I can message the home pc, but not browse it. I would like to be able to do > file transfers. > > Anyone have any ideas on this? Sounds like it might be a file sharing permissions issue. Can't be much more help than that. -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" From ecritt1 at alltel.net Thu Mar 30 07:40:35 2006 From: ecritt1 at alltel.net (Penn White) Date: Thu, 30 Mar 2006 08:40:35 -0500 Subject: [AccessD] OT: Where have all my outlook toolbars gone, long time passing, where have all my outlook toolbars gone, long time agooooooohhhhh References: <000f01c653f1$bb7b1fb0$647aa8c0@ColbyM6805> Message-ID: <001401c653ff$864088e0$0302a8c0@pennp4> If it's a Shortcut Menu, eg. a right click popup, when you designate it as a Popup, you will find it under Custom (far right of Shortcut Menu Toolbar) when you check the Shortcut Menus box on Customize Toolbars. Penn ----- Original Message ----- From: "John Colby" To: "'Access Developers discussion and problem solving'" Sent: Thursday, March 30, 2006 7:01 AM Subject: [AccessD] OT: Where have all my outlook toolbars gone,long time passing, where have all my outlook toolbars gone,long time agooooooohhhhh >I built a customer toolbar for my blue frog macro, went to some effort to > make it pretty, and now it is gone. The same thing happened on my wife's > computer, I built the toolbar, and it just "disappeared". If I > right-click > on the menu area, my custom toolbar is not in the list of toolbars that > exist so I can't just select it to make it re-appear. > > Any idea where they go? Is there any "getting them back"? > > John W. Colby > www.ColbyConsulting.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From stuart at lexacorp.com.pg Thu Mar 30 07:53:18 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Thu, 30 Mar 2006 23:53:18 +1000 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D3519C@ADGSERVER> Message-ID: <442C6F6E.12569.3822DE6@stuart.lexacorp.com.pg> On 30 Mar 2006 at 8:09, Bobby Heid wrote: > Hey all, > > Sorry for the OT, but this was briefly discussed here earlier and I am > having an issue with Hamachi. > > A while back there was some talk about using Hamachi. Well, I just > installed it and it seems pretty neat. I am able to run tightVNC over it to > securely remote control my home pc. > > I have run up against an issue when I try to browse my home PC through > Hamachi. It returns an error message like : "The path '\\5.x.x.x' does not > exist or is not a directory." with a window title of "Windows Explorer". > > I can message the home pc, but not browse it. I would like to be able to do > file transfers. > Browse the administrative shares \\5.x.x.x\C$ etc. You will need to log in with an administrator account. -- Stuart From bheid at appdevgrp.com Thu Mar 30 08:23:13 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Thu, 30 Mar 2006 09:23:13 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D794AF@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D3519D@ADGSERVER> I do have some shares that I can successfully access from within the home network. Thanks, Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bryan Carbonnell Sent: Thursday, March 30, 2006 8:12 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT: Hamachi - again... On 3/30/06, Bobby Heid wrote: > A while back there was some talk about using Hamachi. Well, I just > installed it and it seems pretty neat. I am able to run tightVNC over it to > securely remote control my home pc. > > I have run up against an issue when I try to browse my home PC through > Hamachi. It returns an error message like : "The path '\\5.x.x.x' does not > exist or is not a directory." with a window title of "Windows Explorer". > > I can message the home pc, but not browse it. I would like to be able to do > file transfers. > > Anyone have any ideas on this? Sounds like it might be a file sharing permissions issue. Can't be much more help than that. -- Bryan Carbonnell - carbonnb at gmail.com From bheid at appdevgrp.com Thu Mar 30 08:24:26 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Thu, 30 Mar 2006 09:24:26 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D794C0@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D3519E@ADGSERVER> All I did was right-click on the Hamachi window and select Browse. It did not give me a chance to log on or select any shares. Thanks, Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stuart McLachlan Sent: Thursday, March 30, 2006 8:53 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT: Hamachi - again... On 30 Mar 2006 at 8:09, Bobby Heid wrote: > Hey all, > > Sorry for the OT, but this was briefly discussed here earlier and I am > having an issue with Hamachi. > > A while back there was some talk about using Hamachi. Well, I just > installed it and it seems pretty neat. I am able to run tightVNC over it to > securely remote control my home pc. > > I have run up against an issue when I try to browse my home PC through > Hamachi. It returns an error message like : "The path '\\5.x.x.x' does not > exist or is not a directory." with a window title of "Windows Explorer". > > I can message the home pc, but not browse it. I would like to be able to do > file transfers. > Browse the administrative shares \\5.x.x.x\C$ etc. You will need to log in with an administrator account. -- Stuart From carbonnb at gmail.com Thu Mar 30 08:26:21 2006 From: carbonnb at gmail.com (Bryan Carbonnell) Date: Thu, 30 Mar 2006 09:26:21 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D3519D@ADGSERVER> References: <916187228923D311A6FE00A0CC3FAA30D794AF@ADGSERVER> <916187228923D311A6FE00A0CC3FAA30D3519D@ADGSERVER> Message-ID: On 3/30/06, Bobby Heid wrote: > I do have some shares that I can successfully access from within the home > network. Yes, but the machine you are on now may not be setup properly to access the shares. I'm thinking that maybe it's a workgroups name issue. I know I ran into that with my laptop accessing files across my home network. -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" From accessd at shaw.ca Thu Mar 30 09:20:57 2006 From: accessd at shaw.ca (Jim Lawrence) Date: Thu, 30 Mar 2006 07:20:57 -0800 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D3519C@ADGSERVER> Message-ID: <0IWY006FG5AHRTP0@l-daemon> Hi Bobby: It sounds like a file sharing issue at the hosting computer. You should be able to just set the remote computer as a drive letter and browse to the extent the host share settings. Do you really need to run VNC over the link? Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Thursday, March 30, 2006 5:09 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] OT: Hamachi - again... Hey all, Sorry for the OT, but this was briefly discussed here earlier and I am having an issue with Hamachi. A while back there was some talk about using Hamachi. Well, I just installed it and it seems pretty neat. I am able to run tightVNC over it to securely remote control my home pc. I have run up against an issue when I try to browse my home PC through Hamachi. It returns an error message like : "The path '\\5.x.x.x' does not exist or is not a directory." with a window title of "Windows Explorer". I can message the home pc, but not browse it. I would like to be able to do file transfers. Anyone have any ideas on this? Thanks, Bobby -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From accessd at shaw.ca Thu Mar 30 09:25:37 2006 From: accessd at shaw.ca (Jim Lawrence) Date: Thu, 30 Mar 2006 07:25:37 -0800 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D3519C@ADGSERVER> Message-ID: <0IWY006DC5I9RSO0@l-daemon> Hi Booby: Can you 'ping' the remote host? Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Thursday, March 30, 2006 5:09 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] OT: Hamachi - again... Hey all, Sorry for the OT, but this was briefly discussed here earlier and I am having an issue with Hamachi. A while back there was some talk about using Hamachi. Well, I just installed it and it seems pretty neat. I am able to run tightVNC over it to securely remote control my home pc. I have run up against an issue when I try to browse my home PC through Hamachi. It returns an error message like : "The path '\\5.x.x.x' does not exist or is not a directory." with a window title of "Windows Explorer". I can message the home pc, but not browse it. I would like to be able to do file transfers. Anyone have any ideas on this? Thanks, Bobby -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bheid at appdevgrp.com Thu Mar 30 10:18:50 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Thu, 30 Mar 2006 11:18:50 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D794D4@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D3519F@ADGSERVER> I am on a domain here and a workgroup at home. Could that be the issue? Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bryan Carbonnell Sent: Thursday, March 30, 2006 9:26 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT: Hamachi - again... On 3/30/06, Bobby Heid wrote: > I do have some shares that I can successfully access from within the home > network. Yes, but the machine you are on now may not be setup properly to access the shares. I'm thinking that maybe it's a workgroups name issue. I know I ran into that with my laptop accessing files across my home network. -- Bryan Carbonnell - carbonnb at gmail.com From bheid at appdevgrp.com Thu Mar 30 10:19:49 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Thu, 30 Mar 2006 11:19:49 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D794EF@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D351A0@ADGSERVER> I run VNC to control the pc at home. You know, to help the kids/wife/etc. Also to check my email at home and what not. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Lawrence Sent: Thursday, March 30, 2006 10:21 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... Hi Bobby: It sounds like a file sharing issue at the hosting computer. You should be able to just set the remote computer as a drive letter and browse to the extent the host share settings. Do you really need to run VNC over the link? Jim From bheid at appdevgrp.com Thu Mar 30 10:21:07 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Thu, 30 Mar 2006 11:21:07 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D794F0@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D351A1@ADGSERVER> No, but from what I read, Hamachi disallows pings. I am able to tunnel with Hamachi to run VNC and can control my home PC. I can also chat with the Hamachi chat. So I do have connectivity. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Lawrence Sent: Thursday, March 30, 2006 10:26 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... Hi Booby: Can you 'ping' the remote host? Jim From bchacc at san.rr.com Thu Mar 30 10:34:12 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 30 Mar 2006 08:34:12 -0800 Subject: [AccessD] Date Comparison Problem Message-ID: <442C0884.6090100@san.rr.com> Dear List: As I was writing this question a solution occurred to me. But since I already spent all this time framing the question thought I'd post it anyway and add the answer to the end. I have a routine which works when regional setting is set to English (United States) and fails when regional settings are set to English (United Kingdom) . The difference is in a date compare. The statement reads: "If datCurrentDate > Me.txtScheduleEndDate Then" When set to United States datCurrentDate contains 12/02/2005 and Me.txtScheduleEndDate contains 07/30/2006 based on making a break point at that statement and hovering the mouse over the two variables. So the test fails, as it should. When regional setting is set to United Kindom datCurrentDate contains 02/12/2005 and Me.txtScheduleEndDate contains 30/07/2006 . This time the test passes which it should not. Turns out that even though the text box shows 30/07/2006 it was not making the comparison correctly. So I Dimmed another date datScheduleEndDate and changed the code to read: datScheduleEndDate = Me.txtScheduleEndDate If datCurrentDate > datScheduleEndDate Then And now it works. Solution in search of a problem. Thanks (for making me think this through) and regards, Rocky -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From carbonnb at gmail.com Thu Mar 30 10:53:49 2006 From: carbonnb at gmail.com (Bryan Carbonnell) Date: Thu, 30 Mar 2006 11:53:49 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D3519F@ADGSERVER> References: <916187228923D311A6FE00A0CC3FAA30D794D4@ADGSERVER> <916187228923D311A6FE00A0CC3FAA30D3519F@ADGSERVER> Message-ID: On 3/30/06, Bobby Heid wrote: > I am on a domain here and a workgroup at home. Could that be the issue? That would be my guess. -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" From carbonnb at gmail.com Thu Mar 30 10:55:08 2006 From: carbonnb at gmail.com (Bryan Carbonnell) Date: Thu, 30 Mar 2006 11:55:08 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D351A0@ADGSERVER> References: <916187228923D311A6FE00A0CC3FAA30D794EF@ADGSERVER> <916187228923D311A6FE00A0CC3FAA30D351A0@ADGSERVER> Message-ID: On 3/30/06, Bobby Heid wrote: > I run VNC to control the pc at home. You know, to help the kids/wife/etc. > Also to check my email at home and what not. Which VNC? I believe UltraVNC allows file transfers. It may not be as easy as using windows explorer, but it may be an option to look at. -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" From bchacc at san.rr.com Thu Mar 30 11:03:00 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 30 Mar 2006 09:03:00 -0800 Subject: [AccessD] Date Comparison Problem In-Reply-To: <442C0884.6090100@san.rr.com> References: <442C0884.6090100@san.rr.com> Message-ID: <442C0F44.9020708@san.rr.com> Well I spoke (or wrote) a little too soon. There's another statement, preceding the others which works right in US date format but not in UK format. The statement reads: rstManpower.FindFirst "fldManpowerDate = #" & datCurrentDate & "# AND " _ & "fldSkillID = " & !fldSkillID datCurrentDate contains 01/12/2006 and !fldSkillID = 8 If .Nomatch = True then it adds the record and cycles back to the .FindFirst where .Nomatch should be False. But it comes back True and adds another record in an endless loop. Even if I do a rstManpower.Requery, it fails. I looked in the Manpower table and the records exists. It works correctly when Windows is in US date format and fails in UK format. Can anyone see what's wrong with this FindFirst statement? MTIA, Rocky Rocky Smolin - Beach Access Software wrote: > Dear List: > > As I was writing this question a solution occurred to me. But since I > already spent all this time framing the question thought I'd post it > anyway and add the answer to the end. > > I have a routine which works when regional setting is set to English > (United States) and fails when regional settings are set to English > (United Kingdom) . The difference is in a date compare. > > The statement reads: "If datCurrentDate > Me.txtScheduleEndDate Then" > > When set to United States datCurrentDate contains 12/02/2005 and > Me.txtScheduleEndDate contains 07/30/2006 based on making a break point > at that statement and hovering the mouse over the two variables. So the > test fails, as it should. > > When regional setting is set to United Kindom datCurrentDate contains > 02/12/2005 and Me.txtScheduleEndDate contains 30/07/2006 . This time > the test passes which it should not. > > Turns out that even though the text box shows 30/07/2006 it was not > making the comparison correctly. So I Dimmed another date > datScheduleEndDate and changed the code to read: > > datScheduleEndDate = Me.txtScheduleEndDate > If datCurrentDate > datScheduleEndDate Then > > > And now it works. > > Solution in search of a problem. > > Thanks (for making me think this through) and regards, > > Rocky > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From bheid at appdevgrp.com Thu Mar 30 11:06:00 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Thu, 30 Mar 2006 12:06:00 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D7950B@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D351A3@ADGSERVER> Update... I can browse my pc at work (via shares) from my home pc. I'm doing this from work via VNC against my home pc. LOL. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Thursday, March 30, 2006 11:21 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... No, but from what I read, Hamachi disallows pings. I am able to tunnel with Hamachi to run VNC and can control my home PC. I can also chat with the Hamachi chat. So I do have connectivity. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Lawrence Sent: Thursday, March 30, 2006 10:26 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... Hi Booby: Can you 'ping' the remote host? Jim -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Thu Mar 30 11:19:28 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Thu, 30 Mar 2006 19:19:28 +0200 Subject: [AccessD] Date Comparison Problem Message-ID: Hi Rocky I'm glad it didn't work because it shouldn't (except sometimes). You need to force a format of the date to a US format string to play safe: strCurrentDate = Format(datCurrentDate, "m\/d\/yyyy") rstManpower.FindFirst "fldManpowerDate = #" & strCurrentDate & "# AND " _ & "fldSkillID = " & !fldSkillID.Value /gustav >>> bchacc at san.rr.com 30-03-2006 19:03 >>> Well I spoke (or wrote) a little too soon. There's another statement, preceding the others which works right in US date format but not in UK format. The statement reads: rstManpower.FindFirst "fldManpowerDate = #" & datCurrentDate & "# AND " _ & "fldSkillID = " & !fldSkillID datCurrentDate contains 01/12/2006 and !fldSkillID = 8 If .Nomatch = True then it adds the record and cycles back to the .FindFirst where .Nomatch should be False. But it comes back True and adds another record in an endless loop. Even if I do a rstManpower.Requery, it fails. I looked in the Manpower table and the records exists. It works correctly when Windows is in US date format and fails in UK format. Can anyone see what's wrong with this FindFirst statement? MTIA, Rocky From bheid at appdevgrp.com Thu Mar 30 11:22:24 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Thu, 30 Mar 2006 12:22:24 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D79522@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D351A4@ADGSERVER> TightVNC. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bryan Carbonnell Sent: Thursday, March 30, 2006 11:55 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT: Hamachi - again... On 3/30/06, Bobby Heid wrote: > I run VNC to control the pc at home. You know, to help the kids/wife/etc. > Also to check my email at home and what not. Which VNC? I believe UltraVNC allows file transfers. It may not be as easy as using windows explorer, but it may be an option to look at. -- Bryan Carbonnell - carbonnb at gmail.com From carbonnb at gmail.com Thu Mar 30 11:27:15 2006 From: carbonnb at gmail.com (Bryan Carbonnell) Date: Thu, 30 Mar 2006 12:27:15 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D351A4@ADGSERVER> References: <916187228923D311A6FE00A0CC3FAA30D79522@ADGSERVER> <916187228923D311A6FE00A0CC3FAA30D351A4@ADGSERVER> Message-ID: On 3/30/06, Bobby Heid wrote: > TightVNC. Try switching to UltraVNC (ultravnc.sourceforge.net) That will allow you to use file transfer over the VNC connection. -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" From bchacc at san.rr.com Thu Mar 30 11:52:57 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 30 Mar 2006 09:52:57 -0800 Subject: [AccessD] Date Comparison Problem In-Reply-To: References: Message-ID: <442C1AF9.9040604@san.rr.com> Gustav: That did it! Many thanks. Best, Rocky Gustav Brock wrote: > Hi Rocky > > I'm glad it didn't work because it shouldn't (except sometimes). > > You need to force a format of the date to a US format string to play safe: > > strCurrentDate = Format(datCurrentDate, "m\/d\/yyyy") > rstManpower.FindFirst "fldManpowerDate = #" & strCurrentDate & "# AND " _ > & "fldSkillID = " & !fldSkillID.Value > > /gustav > > > >>>> bchacc at san.rr.com 30-03-2006 19:03 >>> >>>> > Well I spoke (or wrote) a little too soon. There's another statement, > preceding the others which works right in US date format but not in UK > format. The statement reads: > > rstManpower.FindFirst "fldManpowerDate = #" & datCurrentDate & "# > AND " _ > & "fldSkillID = " & !fldSkillID > > datCurrentDate contains 01/12/2006 and !fldSkillID = 8 > > If .Nomatch = True then it adds the record and cycles back to the > .FindFirst where .Nomatch should be False. But it comes back True and > adds another record in an endless loop. Even if I do a > rstManpower.Requery, it fails. I looked in the Manpower table and the > records exists. > > It works correctly when Windows is in US date format and fails in UK format. > > Can anyone see what's wrong with this FindFirst statement? > > MTIA, > > Rocky > > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From adtp at airtelbroadband.in Thu Mar 30 12:04:52 2006 From: adtp at airtelbroadband.in (A.D.TEJPAL) Date: Thu, 30 Mar 2006 23:34:52 +0530 Subject: [AccessD] Date Comparison Problem References: <442C0884.6090100@san.rr.com> <442C0F44.9020708@san.rr.com> Message-ID: <023f01c65424$83772fe0$9a0665cb@pcadt> Rocky, If direct concatenation of date variable in a string is attempted, it gets embedded as per the short date format governed by regional settings on the particular computer - leading to problems where the settings happen to be ambiguous (using mm instead of mmm) and in deviation from US conventions. For example, if the regional setting for short date is "dd-mm-yy", the value held by date variable will get embedded in the SQL string as "dd-mm-yy". However, at the query execution stage, this part of SQL gets interpreted as "mm-dd-yy" (i.e. day part is seen as month part and month part is seen as day part), leading to unexpected results. There would have been no problem, if the system setting were non-ambiguous (e.g. "dd-mmm-yyyy"). However, the developer may not always be in a position to dictate the settings over user's computers In order to eliminate the scope for such a pitfall (despite varying regional settings on different computers), the date value should always be embedded explicitly in a non-ambiguous manner (leaving no scope for confusion between the values meant for day part and month part respectively). This is done by applying the Format() function before concatenating the date values with main SQL string. Sample given below demonstrates the concept. (TDate is a date type field in table T_Test, while StartDate & FinDate are variables holding date values)- StrSQL = "DELETE * FROM T_Test" StrSQL = StrSQL & " WHERE TDate Between #" & _ Format(StartDate, "dd-mmm-yyyy") & "#" StrSQL = StrSQL & " AND #" & _ Format(FinDate, "dd-mmm-yyyy") & "#;" Best wishes, A.D.Tejpal ----- Original Message ----- From: Rocky Smolin - Beach Access Software To: Access Developers discussion and problem solving Sent: Thursday, March 30, 2006 22:33 Subject: Re: [AccessD] Date Comparison Problem Well I spoke (or wrote) a little too soon. There's another statement, preceding the others which works right in US date format but not in UK format. The statement reads: rstManpower.FindFirst "fldManpowerDate = #" & datCurrentDate & "# AND " _ & "fldSkillID = " & !fldSkillID datCurrentDate contains 01/12/2006 and !fldSkillID = 8 If .Nomatch = True then it adds the record and cycles back to the .FindFirst where .Nomatch should be False. But it comes back True and adds another record in an endless loop. Even if I do a rstManpower.Requery, it fails. I looked in the Manpower table and the records exists. It works correctly when Windows is in US date format and fails in UK format. Can anyone see what's wrong with this FindFirst statement? MTIA, Rocky Rocky Smolin - Beach Access Software wrote: > Dear List: > > As I was writing this question a solution occurred to me. But since I > already spent all this time framing the question thought I'd post it > anyway and add the answer to the end. > > I have a routine which works when regional setting is set to English > (United States) and fails when regional settings are set to English > (United Kingdom) . The difference is in a date compare. > > The statement reads: "If datCurrentDate > Me.txtScheduleEndDate Then" > > When set to United States datCurrentDate contains 12/02/2005 and > Me.txtScheduleEndDate contains 07/30/2006 based on making a break point > at that statement and hovering the mouse over the two variables. So the > test fails, as it should. > > When regional setting is set to United Kindom datCurrentDate contains > 02/12/2005 and Me.txtScheduleEndDate contains 30/07/2006 . This time > the test passes which it should not. > > Turns out that even though the text box shows 30/07/2006 it was not > making the comparison correctly. So I Dimmed another date > datScheduleEndDate and changed the code to read: > > datScheduleEndDate = Me.txtScheduleEndDate > If datCurrentDate > datScheduleEndDate Then > > > And now it works. > > Solution in search of a problem. > > Thanks (for making me think this through) and regards, > > Rocky > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From cfoust at infostatsystems.com Thu Mar 30 12:05:42 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 30 Mar 2006 10:05:42 -0800 Subject: [AccessD] SO CAL MEETING Message-ID: I might be able to make it down, not around the 4th of course. Charlotte -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Joe Hecht Sent: Wednesday, March 29, 2006 3:56 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] SO CAL MEETING Any interest in a SO Cal Conference? Not sure when other than not the week of the 4th of July. This is a mood check only. Not a promise Joe Hecht jmhecht at earthlink.net -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Thu Mar 30 12:11:43 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 30 Mar 2006 10:11:43 -0800 Subject: [AccessD] Date Comparison Problem Message-ID: The easiest way to handle it is to use Cdate functions around each date before comparing them and then forcing a us format, which is what SQL wants: If IsDate(varDate) Then strDate = Format(CDate(varDate), "mm/dd/yyyy") strTime = Format(CDate(varDate), "h:nn:ss AM/PM") If Format(Now(), "/") <> "/" Then ' we have a non-standard date separator strDate = ReplaceChars(strDate, Format(Now(), "/"), "/") End If If Format(Now(), ":") <> ":" Then ' we have a non-standard time separator strTime = ReplaceChars(strTime, Format(Now(), ":"), ":") End If USDate = "#" & strDate & " " & strTime & "#" End If Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 30, 2006 9:03 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Date Comparison Problem Well I spoke (or wrote) a little too soon. There's another statement, preceding the others which works right in US date format but not in UK format. The statement reads: rstManpower.FindFirst "fldManpowerDate = #" & datCurrentDate & "# AND " _ & "fldSkillID = " & !fldSkillID datCurrentDate contains 01/12/2006 and !fldSkillID = 8 If .Nomatch = True then it adds the record and cycles back to the .FindFirst where .Nomatch should be False. But it comes back True and adds another record in an endless loop. Even if I do a rstManpower.Requery, it fails. I looked in the Manpower table and the records exists. It works correctly when Windows is in US date format and fails in UK format. Can anyone see what's wrong with this FindFirst statement? MTIA, Rocky Rocky Smolin - Beach Access Software wrote: > Dear List: > > As I was writing this question a solution occurred to me. But since I > already spent all this time framing the question thought I'd post it > anyway and add the answer to the end. > > I have a routine which works when regional setting is set to English > (United States) and fails when regional settings are set to English > (United Kingdom) . The difference is in a date compare. > > The statement reads: "If datCurrentDate > Me.txtScheduleEndDate Then" > > When set to United States datCurrentDate contains 12/02/2005 and > Me.txtScheduleEndDate contains 07/30/2006 based on making a break > point at that statement and hovering the mouse over the two variables. > So the test fails, as it should. > > When regional setting is set to United Kindom datCurrentDate contains > 02/12/2005 and Me.txtScheduleEndDate contains 30/07/2006 . This time > the test passes which it should not. > > Turns out that even though the text box shows 30/07/2006 it was not > making the comparison correctly. So I Dimmed another date > datScheduleEndDate and changed the code to read: > > datScheduleEndDate = Me.txtScheduleEndDate > If datCurrentDate > datScheduleEndDate Then > > > And now it works. > > Solution in search of a problem. > > Thanks (for making me think this through) and regards, > > Rocky > > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From bchacc at san.rr.com Thu Mar 30 12:14:58 2006 From: bchacc at san.rr.com (Rocky Smolin - Beach Access Software) Date: Thu, 30 Mar 2006 10:14:58 -0800 Subject: [AccessD] Date Comparison Problem In-Reply-To: <023f01c65424$83772fe0$9a0665cb@pcadt> References: <442C0884.6090100@san.rr.com> <442C0F44.9020708@san.rr.com> <023f01c65424$83772fe0$9a0665cb@pcadt> Message-ID: <442C2022.3060809@san.rr.com> A.D.: Thanks for the reply. That clears it up. And you're right, I won't have control over the user's settings. Do you see any problem with Gustav's approach of Format(datCurrentDate, "m\/d\/yyyy") as a general purpose solution? Regards, Rocky A.D.TEJPAL wrote: > > Rocky, > > If direct concatenation of date variable in a string is attempted, it gets embedded as per the short date format governed by regional settings on the particular computer - leading to problems where the settings happen to be ambiguous (using mm instead of mmm) and in deviation from US conventions. > > For example, if the regional setting for short date is "dd-mm-yy", the value held by date variable will get embedded in the SQL string as "dd-mm-yy". However, at the query execution stage, this part of SQL gets interpreted as "mm-dd-yy" (i.e. day part is seen as month part and month part is seen as day part), leading to unexpected results. > > There would have been no problem, if the system setting were non-ambiguous (e.g. "dd-mmm-yyyy"). However, the developer may not always be in a position to dictate the settings over user's computers > > In order to eliminate the scope for such a pitfall (despite varying regional settings on different computers), the date value should always be embedded explicitly in a non-ambiguous manner (leaving no scope for confusion between the values meant for day part and month part respectively). This is done by applying the Format() function before concatenating the date values with main SQL string. > > Sample given below demonstrates the concept. (TDate is a date type field in table T_Test, while StartDate & FinDate are variables holding date values)- > > StrSQL = "DELETE * FROM T_Test" > StrSQL = StrSQL & " WHERE TDate Between #" & _ > Format(StartDate, "dd-mmm-yyyy") & "#" > StrSQL = StrSQL & " AND #" & _ > Format(FinDate, "dd-mmm-yyyy") & "#;" > > Best wishes, > A.D.Tejpal > > ----- Original Message ----- > From: Rocky Smolin - Beach Access Software > To: Access Developers discussion and problem solving > Sent: Thursday, March 30, 2006 22:33 > Subject: Re: [AccessD] Date Comparison Problem > > > Well I spoke (or wrote) a little too soon. There's another statement, > preceding the others which works right in US date format but not in UK > format. The statement reads: > > rstManpower.FindFirst "fldManpowerDate = #" & datCurrentDate & "# > AND " _ > & "fldSkillID = " & !fldSkillID > > datCurrentDate contains 01/12/2006 and !fldSkillID = 8 > > If .Nomatch = True then it adds the record and cycles back to the > .FindFirst where .Nomatch should be False. But it comes back True and > adds another record in an endless loop. Even if I do a > rstManpower.Requery, it fails. I looked in the Manpower table and the > records exists. > > It works correctly when Windows is in US date format and fails in UK format. > > Can anyone see what's wrong with this FindFirst statement? > > MTIA, > > Rocky > > > > Rocky Smolin - Beach Access Software wrote: > > Dear List: > > > > As I was writing this question a solution occurred to me. But since I > > already spent all this time framing the question thought I'd post it > > anyway and add the answer to the end. > > > > I have a routine which works when regional setting is set to English > > (United States) and fails when regional settings are set to English > > (United Kingdom) . The difference is in a date compare. > > > > The statement reads: "If datCurrentDate > Me.txtScheduleEndDate Then" > > > > When set to United States datCurrentDate contains 12/02/2005 and > > Me.txtScheduleEndDate contains 07/30/2006 based on making a break point > > at that statement and hovering the mouse over the two variables. So the > > test fails, as it should. > > > > When regional setting is set to United Kindom datCurrentDate contains > > 02/12/2005 and Me.txtScheduleEndDate contains 30/07/2006 . This time > > the test passes which it should not. > > > > Turns out that even though the text box shows 30/07/2006 it was not > > making the comparison correctly. So I Dimmed another date > > datScheduleEndDate and changed the code to read: > > > > datScheduleEndDate = Me.txtScheduleEndDate > > If datCurrentDate > datScheduleEndDate Then > > > > > > And now it works. > > > > Solution in search of a problem. > > > > Thanks (for making me think this through) and regards, > > > > Rocky > > > > -- > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com From KIsmert at TexasSystems.com Thu Mar 30 12:15:23 2006 From: KIsmert at TexasSystems.com (Ken Ismert) Date: Thu, 30 Mar 2006 12:15:23 -0600 Subject: [AccessD] Interfaces Message-ID: Shamil, > and returns the "good old" principles and makes them the > foundation of the "new" theory and practice but on higher > level of evolution spiral.... As long as it is a spiral, and not a circle, I will be happy. Sometimes I get the sense that neither side of the argument (static vs. dynamic) is winnable, and what is in favor is what is fashionable for the moment. But results are what counts, in the end. > Ken, IMO it can't solve the issues, which can be effectively > solved only by Test Driven Development and Unit Testing - > the latter is the "new school" and in general the new school > programming languages can exist without almost any compile time binding. Test Driven Development as an idea has many attractive points. In theory, it should allow for stability by testing to ensure that changes don't damage existing functionality. This, in turn, gives you the confidence to rapidly evolve a large and complex system. That's great, as long as the new TDD methodology is a genuine advance, and not just a cover-up for dynamic code that is inherently hard to verify. Interestingly, the middle-ground design-by-contract ideas of Eiffel have been largely ignored. Python has a strong TDD community, so I hope to become more acquainted with these ideas. > ... and effectively use and even go on higher level as Ruby ... As Rails goes, so shall Ruby. Rails will be the big test of whether a language of such conceptual purity as Ruby can succeed in the real world. By the way, did you find this site: http://www.snakesandrubies.com/ It has pdf and video presentations by the authors of Rails and Django (a similar Python-based web framework). Lengthy downloads, but worth it. -Ken From Gustav at cactus.dk Thu Mar 30 12:18:00 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Thu, 30 Mar 2006 20:18:00 +0200 Subject: [AccessD] Date Comparison Problem Message-ID: Hi A.D. That may not work as the literal month names are localized as well. /gustav >>> adtp at airtelbroadband.in 30-03-2006 20:04 >>> StrSQL = StrSQL & " WHERE TDate Between #" & _ Format(StartDate, "dd-mmm-yyyy") & "#" From Gustav at cactus.dk Thu Mar 30 12:25:46 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Thu, 30 Mar 2006 20:25:46 +0200 Subject: [AccessD] Date Comparison Problem Message-ID: Hi Charlotte That's really a long way to go. One line of code will do. CDate() is normally not needed as you should (must) have variables of date/time value before you begin building your SQL string. Also, use the backslash as escape character: Public Function StrDateSQL(ByVal dat As Date) As String ' Formats full string of date/time in US format for SQL. ' Overrides local (non US) settings for date/time separators. ' Example output: ' ' #08/16/1998 04:03:36 PM# ' ' 1999-10-21. Cactus Data ApS, CPH. StrDateSQL = Format(dat, "\#mm\/dd\/yyyy hh\:nn\:ss AM/PM\#") End Function Credit goes to Lembit who stressed this many years ago. /gustav >>> cfoust at infostatsystems.com 30-03-2006 20:11 >>> The easiest way to handle it is to use Cdate functions around each date before comparing them and then forcing a us format, which is what SQL wants: If IsDate(varDate) Then strDate = Format(CDate(varDate), "mm/dd/yyyy") strTime = Format(CDate(varDate), "h:nn:ss AM/PM") If Format(Now(), "/") <> "/" Then ' we have a non-standard date separator strDate = ReplaceChars(strDate, Format(Now(), "/"), "/") End If If Format(Now(), ":") <> ":" Then ' we have a non-standard time separator strTime = ReplaceChars(strTime, Format(Now(), ":"), ":") End If USDate = "#" & strDate & " " & strTime & "#" End If Charlotte Foust From cfoust at infostatsystems.com Thu Mar 30 12:39:08 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 30 Mar 2006 10:39:08 -0800 Subject: [AccessD] Date Comparison Problem Message-ID: Maybe in *your* applications, Gustav! LOL Our "dates" can be in multiple date and type formats and may be dates, strings or nulls (if we're lucky). The Cdate converts them all to the system format so we're working with apples instead of fruit salad. We also have to handle time strings without a date attached and a variety of other cute oddities. That's why it goes the long way around, we wanted both insurance and code that a novice could plow through if necessary. ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Thursday, March 30, 2006 10:26 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Date Comparison Problem Hi Charlotte That's really a long way to go. One line of code will do. CDate() is normally not needed as you should (must) have variables of date/time value before you begin building your SQL string. Also, use the backslash as escape character: Public Function StrDateSQL(ByVal dat As Date) As String ' Formats full string of date/time in US format for SQL. ' Overrides local (non US) settings for date/time separators. ' Example output: ' ' #08/16/1998 04:03:36 PM# ' ' 1999-10-21. Cactus Data ApS, CPH. StrDateSQL = Format(dat, "\#mm\/dd\/yyyy hh\:nn\:ss AM/PM\#") End Function Credit goes to Lembit who stressed this many years ago. /gustav >>> cfoust at infostatsystems.com 30-03-2006 20:11 >>> The easiest way to handle it is to use Cdate functions around each date before comparing them and then forcing a us format, which is what SQL wants: If IsDate(varDate) Then strDate = Format(CDate(varDate), "mm/dd/yyyy") strTime = Format(CDate(varDate), "h:nn:ss AM/PM") If Format(Now(), "/") <> "/" Then ' we have a non-standard date separator strDate = ReplaceChars(strDate, Format(Now(), "/"), "/") End If If Format(Now(), ":") <> ":" Then ' we have a non-standard time separator strTime = ReplaceChars(strTime, Format(Now(), ":"), ":") End If USDate = "#" & strDate & " " & strTime & "#" End If Charlotte Foust -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Thu Mar 30 13:00:38 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Thu, 30 Mar 2006 21:00:38 +0200 Subject: [AccessD] Date Comparison Problem Message-ID: Hi Charlotte But all the clumsy code with Replace? Tell me you didn't write it. In our applications when I need a date I convert whatever value that may be to variables of date/time value. If that fails there isn't much to do. The only variation to that is when you have to deal with non-existing dates, Nulls, as only a Variant will hold that. Also, don't confuse the novices: CDate() does not convert expressions to a "system format" but to a date/time value. It fails for Null, but if you need to pass Null to a varDate holding Null or a date, use good old CVDate(). /gustav >>> cfoust at infostatsystems.com 30-03-2006 20:39 >>> Maybe in *your* applications, Gustav! LOL Our "dates" can be in multiple date and type formats and may be dates, strings or nulls (if we're lucky). The Cdate converts them all to the system format so we're working with apples instead of fruit salad. We also have to handle time strings without a date attached and a variety of other cute oddities. That's why it goes the long way around, we wanted both insurance and code that a novice could plow through if necessary. ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Thursday, March 30, 2006 10:26 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Date Comparison Problem Hi Charlotte That's really a long way to go. One line of code will do. CDate() is normally not needed as you should (must) have variables of date/time value before you begin building your SQL string. Also, use the backslash as escape character: Public Function StrDateSQL(ByVal dat As Date) As String ' Formats full string of date/time in US format for SQL. ' Overrides local (non US) settings for date/time separators. ' Example output: ' ' #08/16/1998 04:03:36 PM# ' ' 1999-10-21. Cactus Data ApS, CPH. StrDateSQL = Format(dat, "\#mm\/dd\/yyyy hh\:nn\:ss AM/PM\#") End Function Credit goes to Lembit who stressed this many years ago. /gustav >>> cfoust at infostatsystems.com 30-03-2006 20:11 >>> The easiest way to handle it is to use Cdate functions around each date before comparing them and then forcing a us format, which is what SQL wants: If IsDate(varDate) Then strDate = Format(CDate(varDate), "mm/dd/yyyy") strTime = Format(CDate(varDate), "h:nn:ss AM/PM") If Format(Now(), "/") <> "/" Then ' we have a non-standard date separator strDate = ReplaceChars(strDate, Format(Now(), "/"), "/") End If If Format(Now(), ":") <> ":" Then ' we have a non-standard time separator strTime = ReplaceChars(strTime, Format(Now(), ":"), ":") End If USDate = "#" & strDate & " " & strTime & "#" End If Charlotte Foust From adtp at airtelbroadband.in Thu Mar 30 13:24:28 2006 From: adtp at airtelbroadband.in (A.D.TEJPAL) Date: Fri, 31 Mar 2006 00:54:28 +0530 Subject: [AccessD] Date Comparison Problem References: Message-ID: <002b01c6542f$a3b87a10$f70165cb@pcadt> Gustav, I agree that "m/d/yyyyy" format for concatenation into a string should always give consistent results. Similar have been the findings with adoption of "dd-mmm-yyyy" format. One advantage of non-ambiguous format is that even if the programmer happens to slip up from standard sequence, the result still gets interpreted correctly. For example, all the following permutations will work OK: dd-mmm-yyyy, mmm-dd-yyyy, dd-yyyy-mmm, mmm-yyyy-dd, yyyy-mmm-dd, yyyy-dd-mmm. Are you in a position to test out and verify whether there is any specific situation where non-ambiguous format represented by "dd-mmm-yyyy" is not found to give consistent results ? Do you have some language other than English in mind ? Best wishes, A.D.Tejpal --------------- ----- Original Message ----- From: Gustav Brock To: accessd at databaseadvisors.com Sent: Thursday, March 30, 2006 23:48 Subject: Re: [AccessD] Date Comparison Problem Hi A.D. That may not work as the literal month names are localized as well. /gustav >>> adtp at airtelbroadband.in 30-03-2006 20:04 >>> StrSQL = StrSQL & " WHERE TDate Between #" & _ Format(StartDate, "dd-mmm-yyyy") & "#" From bheid at appdevgrp.com Thu Mar 30 13:26:36 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Thu, 30 Mar 2006 14:26:36 -0500 Subject: [AccessD] [SPAM SUSPECT] Re: OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D79539@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D351AA@ADGSERVER> Thanks, I'll check it out. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bryan Carbonnell Sent: Thursday, March 30, 2006 12:27 PM To: Access Developers discussion and problem solving Subject: [SPAM SUSPECT] Re: [AccessD] OT: Hamachi - again... Importance: Low On 3/30/06, Bobby Heid wrote: > TightVNC. Try switching to UltraVNC (ultravnc.sourceforge.net) That will allow you to use file transfer over the VNC connection. -- Bryan Carbonnell - carbonnb at gmail.com Life's journey is not to arrive at the grave safely in a well preserved body, but rather to skid in sideways, totally worn out, shouting "What a great ride!" -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From adtp at airtelbroadband.in Thu Mar 30 13:41:05 2006 From: adtp at airtelbroadband.in (A.D.TEJPAL) Date: Fri, 31 Mar 2006 01:11:05 +0530 Subject: [AccessD] Date Comparison Problem References: <442C0884.6090100@san.rr.com> <442C0F44.9020708@san.rr.com><023f01c65424$83772fe0$9a0665cb@pcadt> <442C2022.3060809@san.rr.com> Message-ID: <006601c65432$0db08cd0$f70165cb@pcadt> Rocky, You can go ahead with Gustav's solution. No controversy there. Underlyng principle is same. I have requested Gustav to test out regarding non-ambiguous format, i.e. "dd-mmm-yyyy" also, as it has certain merits as explained in my post to him. Best wishes, A.D.Tejpal ---------------- ----- Original Message ----- From: Rocky Smolin - Beach Access Software To: Access Developers discussion and problem solving Sent: Thursday, March 30, 2006 23:44 Subject: Re: [AccessD] Date Comparison Problem A.D.: Thanks for the reply. That clears it up. And you're right, I won't have control over the user's settings. Do you see any problem with Gustav's approach of Format(datCurrentDate, "m\/d\/yyyy") as a general purpose solution? Regards, Rocky A.D.TEJPAL wrote: > > Rocky, > > If direct concatenation of date variable in a string is attempted, it gets embedded as per the short date format governed by regional settings on the particular computer - leading to problems where the settings happen to be ambiguous (using mm instead of mmm) and in deviation from US conventions. > > For example, if the regional setting for short date is "dd-mm-yy", the value held by date variable will get embedded in the SQL string as "dd-mm-yy". However, at the query execution stage, this part of SQL gets interpreted as "mm-dd-yy" (i.e. day part is seen as month part and month part is seen as day part), leading to unexpected results. > > There would have been no problem, if the system setting were non-ambiguous (e.g. "dd-mmm-yyyy"). However, the developer may not always be in a position to dictate the settings over user's computers > > In order to eliminate the scope for such a pitfall (despite varying regional settings on different computers), the date value should always be embedded explicitly in a non-ambiguous manner (leaving no scope for confusion between the values meant for day part and month part respectively). This is done by applying the Format() function before concatenating the date values with main SQL string. > > Sample given below demonstrates the concept. (TDate is a date type field in table T_Test, while StartDate & FinDate are variables holding date values)- > > StrSQL = "DELETE * FROM T_Test" > StrSQL = StrSQL & " WHERE TDate Between #" & _ > Format(StartDate, "dd-mmm-yyyy") & "#" > StrSQL = StrSQL & " AND #" & _ > Format(FinDate, "dd-mmm-yyyy") & "#;" > > Best wishes, > A.D.Tejpal > > ----- Original Message ----- > From: Rocky Smolin - Beach Access Software > To: Access Developers discussion and problem solving > Sent: Thursday, March 30, 2006 22:33 > Subject: Re: [AccessD] Date Comparison Problem > > > Well I spoke (or wrote) a little too soon. There's another statement, > preceding the others which works right in US date format but not in UK > format. The statement reads: > > rstManpower.FindFirst "fldManpowerDate = #" & datCurrentDate & "# > AND " _ > & "fldSkillID = " & !fldSkillID > > datCurrentDate contains 01/12/2006 and !fldSkillID = 8 > > If .Nomatch = True then it adds the record and cycles back to the > .FindFirst where .Nomatch should be False. But it comes back True and > adds another record in an endless loop. Even if I do a > rstManpower.Requery, it fails. I looked in the Manpower table and the > records exists. > > It works correctly when Windows is in US date format and fails in UK format. > > Can anyone see what's wrong with this FindFirst statement? > > MTIA, > > Rocky > << SNIP >> From shamil at users.mns.ru Thu Mar 30 14:29:39 2006 From: shamil at users.mns.ru (Shamil Salakhetdinov) Date: Fri, 31 Mar 2006 00:29:39 +0400 Subject: [AccessD] Date Comparison Problem References: <442C0884.6090100@san.rr.com> <442C0F44.9020708@san.rr.com><023f01c65424$83772fe0$9a0665cb@pcadt> <442C2022.3060809@san.rr.com> <006601c65432$0db08cd0$f70165cb@pcadt> Message-ID: <003a01c65438$c4935710$6501a8c0@Nant> > Format(datCurrentDate, "m\/d\/yyyy") I'd follow Gustav advice - this is the only(/the best) 100% safe formatting to be used in Rocky's question context. And its variations of course: Format(datCurrentDate, "mm\/d\/yyyy") Format(datCurrentDate, "m\/dd\/yyyy") Format(datCurrentDate, "mm\/dd\/yyyy") Others may work, may fail.... Shamil ----- Original Message ----- From: "A.D.TEJPAL" To: "Access Developers discussion and problem solving" Sent: Thursday, March 30, 2006 11:41 PM Subject: Re: [AccessD] Date Comparison Problem > Rocky, > > You can go ahead with Gustav's solution. No controversy there. > Underlyng principle is same. > > I have requested Gustav to test out regarding non-ambiguous format, > i.e. "dd-mmm-yyyy" also, as it has certain merits as explained in my post > to him. > > Best wishes, > A.D.Tejpal > ---------------- > > ----- Original Message ----- > From: Rocky Smolin - Beach Access Software > To: Access Developers discussion and problem solving > Sent: Thursday, March 30, 2006 23:44 > Subject: Re: [AccessD] Date Comparison Problem > > > A.D.: > > Thanks for the reply. That clears it up. And you're right, I won't > have control over the user's settings. Do you see any problem with > Gustav's approach of > > Format(datCurrentDate, "m\/d\/yyyy") > > as a general purpose solution? > > Regards, > > Rocky > > > > A.D.TEJPAL wrote: > > > > Rocky, > > > > If direct concatenation of date variable in a string is attempted, > it gets embedded as per the short date format governed by regional > settings on the particular computer - leading to problems where the > settings happen to be ambiguous (using mm instead of mmm) and in deviation > from US conventions. > > > > For example, if the regional setting for short date is "dd-mm-yy", > the value held by date variable will get embedded in the SQL string as > "dd-mm-yy". However, at the query execution stage, this part of SQL gets > interpreted as "mm-dd-yy" (i.e. day part is seen as month part and month > part is seen as day part), leading to unexpected results. > > > > There would have been no problem, if the system setting were > non-ambiguous (e.g. "dd-mmm-yyyy"). However, the developer may not always > be in a position to dictate the settings over user's computers > > > > In order to eliminate the scope for such a pitfall (despite varying > regional settings on different computers), the date value should always be > embedded explicitly in a non-ambiguous manner (leaving no scope for > confusion between the values meant for day part and month part > respectively). This is done by applying the Format() function before > concatenating the date values with main SQL string. > > > > Sample given below demonstrates the concept. (TDate is a date type > field in table T_Test, while StartDate & FinDate are variables holding > date values)- > > > > StrSQL = "DELETE * FROM T_Test" > > StrSQL = StrSQL & " WHERE TDate Between #" & _ > > Format(StartDate, "dd-mmm-yyyy") & "#" > > StrSQL = StrSQL & " AND #" & _ > > Format(FinDate, "dd-mmm-yyyy") & "#;" > > > > Best wishes, > > A.D.Tejpal > > > > ----- Original Message ----- > > From: Rocky Smolin - Beach Access Software > > To: Access Developers discussion and problem solving > > Sent: Thursday, March 30, 2006 22:33 > > Subject: Re: [AccessD] Date Comparison Problem > > > > > > Well I spoke (or wrote) a little too soon. There's another > statement, > > preceding the others which works right in US date format but not in > UK > > format. The statement reads: > > > > rstManpower.FindFirst "fldManpowerDate = #" & datCurrentDate & "# > > AND " _ > > & "fldSkillID = " & !fldSkillID > > > > datCurrentDate contains 01/12/2006 and !fldSkillID = 8 > > > > If .Nomatch = True then it adds the record and cycles back to the > > .FindFirst where .Nomatch should be False. But it comes back True > and > > adds another record in an endless loop. Even if I do a > > rstManpower.Requery, it fails. I looked in the Manpower table and > the > > records exists. > > > > It works correctly when Windows is in US date format and fails in UK > format. > > > > Can anyone see what's wrong with this FindFirst statement? > > > > MTIA, > > > > Rocky > > > << SNIP >> > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From lmrazek at lcm-res.com Thu Mar 30 15:27:29 2006 From: lmrazek at lcm-res.com (Lawrence Mrazek) Date: Thu, 30 Mar 2006 15:27:29 -0600 Subject: [AccessD] Excel Automation ... Setting Default Formatting In Excel In-Reply-To: <003a01c65438$c4935710$6501a8c0@Nant> Message-ID: <010201c65440$c0154f60$c50b470a@stormy> Hi: I have a fairly complex Access to Excel automation project, and having conquered my named ranges issue, I'm wondering about the best way to set default formatting for columns (percentages, decimals, conditional formats). The application dynamically creates worksheets in the Excel workbook (sometimes it has 5 worksheets, sometimes more) from data stored in Access. The data will always be in the same columns, (EX: column M is percent, Column N is 2 decimals, etc.); Can I have Excel set defaults for these columns before exporting/creating the data, or is it better to just do this in VBA? Thanks in advance. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314.432.5886 fx. 314.432.3304 From darrend at nimble.com.au Thu Mar 30 15:34:01 2006 From: darrend at nimble.com.au (Darren DICK) Date: Fri, 31 Mar 2006 08:34:01 +1100 Subject: [AccessD] A2003 :Rename tables Message-ID: <20060330213718.JTHZ15112.omta03ps.mx.bigpond.com@DENZILLAP> Hi all I have a zillion tables all prefixed with dbo. Does anyone have a loop for the TableDef to rename or remove the dbo bit? Many thanks Darren From stuart at lexacorp.com.pg Thu Mar 30 15:56:33 2006 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Fri, 31 Mar 2006 07:56:33 +1000 Subject: [AccessD] Date Comparison Problem In-Reply-To: <442C0F44.9020708@san.rr.com> References: <442C0884.6090100@san.rr.com> Message-ID: <442CE0B1.31770.53C968D@stuart.lexacorp.com.pg> On 30 Mar 2006 at 9:03, Rocky Smolin - Beach Access S wrote: > Well I spoke (or wrote) a little too soon. There's another statement, > preceding the others which works right in US date format but not in UK > format. The statement reads: > > rstManpower.FindFirst "fldManpowerDate = #" & datCurrentDate & "# > AND " _ Access SQL likes it's dates in US format. To get around the problem where the PC can have any regional setting, I always use: ...fldManpowerDate = Datevalue('" & datCurrentDate & "')..... when building these sorts of strings. -- Stuart From vchas at comcast.net Thu Mar 30 16:18:59 2006 From: vchas at comcast.net (vchas at comcast.net) Date: Thu, 30 Mar 2006 22:18:59 +0000 Subject: [AccessD] A2003 :Rename tables Message-ID: <033020062218.7207.442C595300005CA900001C2722092299279C0E080C90@comcast.net> Hi Darren., This should do the trick. Function dbo_Remover() As Integer ' Use this module remove the linked table start name dbo_ 'Dim db As Database Dim i As Integer Dim c As Long c = 0 Set db = DBEngine.Workspaces(0).Databases(0) dbo_Remover = False db.TableDefs.Refresh For i = 0 To db.TableDefs.Count - 1 If (Left(db.TableDefs(i).Name, 4) = "DBO_") Then 'MsgBox "found " & db.TableDefs(i).Name db.TableDefs(i).Name = Mid(db.TableDefs(i).Name, 5) c = c + 1 'MsgBox "new name = " & db.TableDefs(i).Name End If Next i Set db = Nothing MsgBox "dbo_ Removed From " & c & " Filenames....." End Function Vinnie Chas www.vinniechas.com > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darren DICK > Sent: Thursday, March 30, 2006 1:34 PM > To: 'Access Developers discussion and problem solving' > Subject: [AccessD] A2003 :Rename tables > > Hi all > I have a zillion tables all prefixed with dbo. > Does anyone have a loop for the TableDef to rename or remove > the dbo bit? > > Many thanks > > Darren > -- > From darrend at nimble.com.au Thu Mar 30 16:21:02 2006 From: darrend at nimble.com.au (Darren DICK) Date: Fri, 31 Mar 2006 09:21:02 +1100 Subject: [AccessD] A2003 :Rename tables In-Reply-To: <033020062218.7207.442C595300005CA900001C2722092299279C0E080C90@comcast.net> Message-ID: <20060330222328.CBGN14751.omta05ps.mx.bigpond.com@DENZILLAP> Thanks Vinnie - I'll try it now Darren ------------------------------ T: 0424 696 433 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of vchas at comcast.net Sent: Friday, 31 March 2006 9:19 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] A2003 :Rename tables Hi Darren., This should do the trick. Function dbo_Remover() As Integer ' Use this module remove the linked table start name dbo_ 'Dim db As Database Dim i As Integer Dim c As Long c = 0 Set db = DBEngine.Workspaces(0).Databases(0) dbo_Remover = False db.TableDefs.Refresh For i = 0 To db.TableDefs.Count - 1 If (Left(db.TableDefs(i).Name, 4) = "DBO_") Then 'MsgBox "found " & db.TableDefs(i).Name db.TableDefs(i).Name = Mid(db.TableDefs(i).Name, 5) c = c + 1 'MsgBox "new name = " & db.TableDefs(i).Name End If Next i Set db = Nothing MsgBox "dbo_ Removed From " & c & " Filenames....." End Function Vinnie Chas www.vinniechas.com > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darren DICK > Sent: Thursday, March 30, 2006 1:34 PM > To: 'Access Developers discussion and problem solving' > Subject: [AccessD] A2003 :Rename tables > > Hi all > I have a zillion tables all prefixed with dbo. > Does anyone have a loop for the TableDef to rename or remove the dbo > bit? > > Many thanks > > Darren > -- > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From darrend at nimble.com.au Thu Mar 30 16:27:29 2006 From: darrend at nimble.com.au (Darren DICK) Date: Fri, 31 Mar 2006 09:27:29 +1100 Subject: [AccessD] A2003 :Rename tables In-Reply-To: <033020062218.7207.442C595300005CA900001C2722092299279C0E080C90@comcast.net> Message-ID: <20060330222958.LMTD15112.omta03ps.mx.bigpond.com@DENZILLAP> Perfect Vinnie Many thanks Your rename procedure was cleaner than mine I was using docmd.rename blah blah Many thanks Darren -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of vchas at comcast.net Sent: Friday, 31 March 2006 9:19 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] A2003 :Rename tables Hi Darren., This should do the trick. Function dbo_Remover() As Integer ' Use this module remove the linked table start name dbo_ 'Dim db As Database Dim i As Integer Dim c As Long c = 0 Set db = DBEngine.Workspaces(0).Databases(0) dbo_Remover = False db.TableDefs.Refresh For i = 0 To db.TableDefs.Count - 1 If (Left(db.TableDefs(i).Name, 4) = "DBO_") Then 'MsgBox "found " & db.TableDefs(i).Name db.TableDefs(i).Name = Mid(db.TableDefs(i).Name, 5) c = c + 1 'MsgBox "new name = " & db.TableDefs(i).Name End If Next i Set db = Nothing MsgBox "dbo_ Removed From " & c & " Filenames....." End Function Vinnie Chas www.vinniechas.com > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darren DICK > Sent: Thursday, March 30, 2006 1:34 PM > To: 'Access Developers discussion and problem solving' > Subject: [AccessD] A2003 :Rename tables > > Hi all > I have a zillion tables all prefixed with dbo. > Does anyone have a loop for the TableDef to rename or remove the dbo > bit? > > Many thanks > > Darren > -- > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From accessd at shaw.ca Thu Mar 30 17:21:36 2006 From: accessd at shaw.ca (Jim Lawrence) Date: Thu, 30 Mar 2006 15:21:36 -0800 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D3519F@ADGSERVER> Message-ID: <0IWY002GZRJJ0HF0@l-daemon> Hi Bobby: When I am calling a workgroup, just the name and password are all that is necessary but when calling a domain, I have to prefix the username with the domain name. Like: MyDomain\Username HTH Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Thursday, March 30, 2006 8:19 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... I am on a domain here and a workgroup at home. Could that be the issue? Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bryan Carbonnell Sent: Thursday, March 30, 2006 9:26 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT: Hamachi - again... On 3/30/06, Bobby Heid wrote: > I do have some shares that I can successfully access from within the home > network. Yes, but the machine you are on now may not be setup properly to access the shares. I'm thinking that maybe it's a workgroups name issue. I know I ran into that with my laptop accessing files across my home network. -- Bryan Carbonnell - carbonnb at gmail.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From accessd at shaw.ca Thu Mar 30 17:28:21 2006 From: accessd at shaw.ca (Jim Lawrence) Date: Thu, 30 Mar 2006 15:28:21 -0800 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D351A1@ADGSERVER> Message-ID: <0IWY006T4RUSFNB0@l-daemon> Hi Bobby: When bringing up the Hamachi window and right-clicking the remote site options you should have, Ping, Browse, Send Message and Copy Address available. HTH Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Thursday, March 30, 2006 8:21 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... No, but from what I read, Hamachi disallows pings. I am able to tunnel with Hamachi to run VNC and can control my home PC. I can also chat with the Hamachi chat. So I do have connectivity. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Lawrence Sent: Thursday, March 30, 2006 10:26 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... Hi Booby: Can you 'ping' the remote host? Jim -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From accessd at shaw.ca Thu Mar 30 17:29:55 2006 From: accessd at shaw.ca (Jim Lawrence) Date: Thu, 30 Mar 2006 15:29:55 -0800 Subject: [AccessD] Date Comparison Problem In-Reply-To: <442C0884.6090100@san.rr.com> Message-ID: <0IWY004MIRXEQTC0@l-daemon> Smart solution, Rocky. Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin - Beach Access Software Sent: Thursday, March 30, 2006 8:34 AM To: Access Developers discussion and problem solving Subject: [AccessD] Date Comparison Problem Dear List: As I was writing this question a solution occurred to me. But since I already spent all this time framing the question thought I'd post it anyway and add the answer to the end. I have a routine which works when regional setting is set to English (United States) and fails when regional settings are set to English (United Kingdom) . The difference is in a date compare. The statement reads: "If datCurrentDate > Me.txtScheduleEndDate Then" When set to United States datCurrentDate contains 12/02/2005 and Me.txtScheduleEndDate contains 07/30/2006 based on making a break point at that statement and hovering the mouse over the two variables. So the test fails, as it should. When regional setting is set to United Kindom datCurrentDate contains 02/12/2005 and Me.txtScheduleEndDate contains 30/07/2006 . This time the test passes which it should not. Turns out that even though the text box shows 30/07/2006 it was not making the comparison correctly. So I Dimmed another date datScheduleEndDate and changed the code to read: datScheduleEndDate = Me.txtScheduleEndDate If datCurrentDate > datScheduleEndDate Then And now it works. Solution in search of a problem. Thanks (for making me think this through) and regards, Rocky -- Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From tom.p at piedpiper.com.au Thu Mar 30 17:33:11 2006 From: tom.p at piedpiper.com.au (Tom Keatley) Date: Fri, 31 Mar 2006 07:33:11 +0800 Subject: [AccessD] Halting Execution of Function when form opens and resuming afterwards References: <20060330222958.LMTD15112.omta03ps.mx.bigpond.com@DENZILLAP> Message-ID: <001101c65452$50da67e0$2900a8c0@TOMNEW> Hi all..... I have a function(1) that is looping through customer records and calling another function(2) during each iteration to re-calculate what that customer owes... If the function(2) finds an imbalance between what was previously calculated and what is being calculated now I have it opening a form showing the two sets of calculations to allow the amounts to be edited. The criteria for opening the form is actually part of the 2nd function This works fine when used for a single customer but as part of the above loop the form pops up when it is needed but the loop continues to execute behind it How can I make the execution of the loop suspend until I close the form? and then continue..... As always any help would be appreciated Regards Tom Keatley From DWUTKA at marlow.com Thu Mar 30 17:39:28 2006 From: DWUTKA at marlow.com (DWUTKA at marlow.com) Date: Thu, 30 Mar 2006 17:39:28 -0600 Subject: [AccessD] Halting Execution of Function when form opens and r esuming afterwards Message-ID: <17724746D360394AA3BFE5B8D40A9C1B6A6A7D@main2.marlow.com> Open that form modally. That will pause the running code that called it. Drew -----Original Message----- From: Tom Keatley [mailto:tom.p at piedpiper.com.au] Sent: Thursday, March 30, 2006 5:33 PM To: Access Developers discussion and problem solving Subject: [AccessD] Halting Execution of Function when form opens and resuming afterwards Hi all..... I have a function(1) that is looping through customer records and calling another function(2) during each iteration to re-calculate what that customer owes... If the function(2) finds an imbalance between what was previously calculated and what is being calculated now I have it opening a form showing the two sets of calculations to allow the amounts to be edited. The criteria for opening the form is actually part of the 2nd function This works fine when used for a single customer but as part of the above loop the form pops up when it is needed but the loop continues to execute behind it How can I make the execution of the loop suspend until I close the form? and then continue..... As always any help would be appreciated Regards Tom Keatley -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From stuart at lexacorp.com.pg Thu Mar 30 17:45:00 2006 From: stuart at lexacorp.com.pg (stuart at lexacorp.com.pg) Date: Fri, 31 Mar 2006 09:45:00 +1000 Subject: [AccessD] Halting Execution of Function when form opens and resuming afterwards In-Reply-To: <001101c65452$50da67e0$2900a8c0@TOMNEW> Message-ID: <442CFA1C.12239.5760BA@stuart.lexacorp.com.pg> On 31 Mar 2006 at 7:33, Tom Keatley wrote: > > How can I make the execution of the loop suspend until I close the > form? and then continue..... > Open the form as "modal" . docmd.OpenForm "frmMyForm",,,,,acDialog From Jim.Hale at FleetPride.com Thu Mar 30 17:47:00 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Thu, 30 Mar 2006 17:47:00 -0600 Subject: [AccessD] Excel Automation ... Setting Default Formatting In Excel Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB2F@corp-es01.fleetpride.com> I use a template with a worksheet formatted the way I need. After opening the template in code I create as many sheets as needed copying the preformatted sheet. This is better then slugging it out in vba since the inevitable tweaks to the format can be handled by simply changing the template. Jim Hale -----Original Message----- From: Lawrence Mrazek [mailto:lmrazek at lcm-res.com] Sent: Thursday, March 30, 2006 3:27 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Excel Automation ... Setting Default Formatting In Excel Hi: I have a fairly complex Access to Excel automation project, and having conquered my named ranges issue, I'm wondering about the best way to set default formatting for columns (percentages, decimals, conditional formats). The application dynamically creates worksheets in the Excel workbook (sometimes it has 5 worksheets, sometimes more) from data stored in Access. The data will always be in the same columns, (EX: column M is percent, Column N is 2 decimals, etc.); Can I have Excel set defaults for these columns before exporting/creating the data, or is it better to just do this in VBA? Thanks in advance. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314.432.5886 fx. 314.432.3304 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From Erwin.Craps at ithelps.be Fri Mar 31 00:32:23 2006 From: Erwin.Craps at ithelps.be (Erwin Craps - IT Helps) Date: Fri, 31 Mar 2006 08:32:23 +0200 Subject: [AccessD] Excel Automation ... Setting Default Formatting InExcel Message-ID: <46B976F2B698FF46A4FE7636509B22DF3CB688@stekelbes.ithelps.local> If I'm not mistaken, when using .copyrecordset to a formatted spreadsheet your formatting will be killed. I'm using VBA formatting on the spot for everything because my spreadsheets are not straigth forward tables-type sheets. But is does slow down the building of the spreadsheet. But if it's only colomn based formatting, it will probably not matter that much in speed. Erwin -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Friday, March 31, 2006 1:47 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Excel Automation ... Setting Default Formatting InExcel I use a template with a worksheet formatted the way I need. After opening the template in code I create as many sheets as needed copying the preformatted sheet. This is better then slugging it out in vba since the inevitable tweaks to the format can be handled by simply changing the template. Jim Hale -----Original Message----- From: Lawrence Mrazek [mailto:lmrazek at lcm-res.com] Sent: Thursday, March 30, 2006 3:27 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Excel Automation ... Setting Default Formatting In Excel Hi: I have a fairly complex Access to Excel automation project, and having conquered my named ranges issue, I'm wondering about the best way to set default formatting for columns (percentages, decimals, conditional formats). The application dynamically creates worksheets in the Excel workbook (sometimes it has 5 worksheets, sometimes more) from data stored in Access. The data will always be in the same columns, (EX: column M is percent, Column N is 2 decimals, etc.); Can I have Excel set defaults for these columns before exporting/creating the data, or is it better to just do this in VBA? Thanks in advance. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314.432.5886 fx. 314.432.3304 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Fri Mar 31 03:07:17 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 31 Mar 2006 11:07:17 +0200 Subject: [AccessD] Date Comparison Problem Message-ID: Hi A.D. Yes, in fact most other languages than English will fail - even worse it may only fail for some months. For example, the Danish abbreviations for months equal the English except for one month, October, which is okt. Thus, using that, an October date will be formatted as 3-okt-2006, which when put in an SQL string as #3-okt-2006# will raise a syntax error. Note that even the slash has been replaced with the localized date separator which here is "-". The use of d/m/yyyy is highly recommended as that is standard SQL which will work for any decent SQL engine. Most modern SQL engines with MaxDB (SAP DB) in front accepts or even prefers the ISO format with 24 hour time of yyyy-mm-dd hh:nn:ss or even yyyymmddhhnnss. /gustav >>> adtp at airtelbroadband.in 30-03-2006 21:24 >>> Gustav, I agree that "m/d/yyyyy" format for concatenation into a string should always give consistent results. Similar have been the findings with adoption of "dd-mmm-yyyy" format. One advantage of non-ambiguous format is that even if the programmer happens to slip up from standard sequence, the result still gets interpreted correctly. For example, all the following permutations will work OK: dd-mmm-yyyy, mmm-dd-yyyy, dd-yyyy-mmm, mmm-yyyy-dd, yyyy-mmm-dd, yyyy-dd-mmm. Are you in a position to test out and verify whether there is any specific situation where non-ambiguous format represented by "dd-mmm-yyyy" is not found to give consistent results ? Do you have some language other than English in mind ? Best wishes, A.D.Tejpal --------------- ----- Original Message ----- From: Gustav Brock To: accessd at databaseadvisors.com Sent: Thursday, March 30, 2006 23:48 Subject: Re: [AccessD] Date Comparison Problem Hi A.D. That may not work as the literal month names are localized as well. /gustav >>> adtp at airtelbroadband.in 30-03-2006 20:04 >>> StrSQL = StrSQL & " WHERE TDate Between #" & _ Format(StartDate, "dd-mmm-yyyy") & "#" From Gustav at cactus.dk Fri Mar 31 03:55:07 2006 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 31 Mar 2006 11:55:07 +0200 Subject: [AccessD] Date Comparison Problem Message-ID: Hi Stuart That will work as well but for dates only - a time part will be lost which, however, may be exactly what you wish. If you need the time part just add TimeValue: ...fldManpowerDate = DateValue('" & datCurrentDate & "') + TimeValue('" & datCurrentDate & "')..... The reason why this works is that the date/time variable is converted to a localized string expression (that was Rocky's problem). But this is exactly what DateValue (and TimeValue) expects. Feeding an English string like "10-oct-2006" to DateValue in a localized environment will cause a syntax error. /gustav >>> stuart at lexacorp.com.pg 30-03-2006 23:56 >>> On 30 Mar 2006 at 9:03, Rocky Smolin - Beach Access S wrote: > Well I spoke (or wrote) a little too soon. There's another statement, > preceding the others which works right in US date format but not in UK > format. The statement reads: > > rstManpower.FindFirst "fldManpowerDate = #" & datCurrentDate & "# > AND " _ Access SQL likes it's dates in US format. To get around the problem where the PC can have any regional setting, I always use: ...fldManpowerDate = Datevalue('" & datCurrentDate & "')..... when building these sorts of strings. -- Stuart From bheid at appdevgrp.com Fri Mar 31 06:22:03 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Fri, 31 Mar 2006 07:22:03 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D795F6@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D351AF@ADGSERVER> Hi Jim, I can access my pc here at work (on a domain) from home (workgroup) just fine. It's going the other way that I can not get to work. Thanks, Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Lawrence Sent: Thursday, March 30, 2006 6:22 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... Hi Bobby: When I am calling a workgroup, just the name and password are all that is necessary but when calling a domain, I have to prefix the username with the domain name. Like: MyDomain\Username HTH Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Thursday, March 30, 2006 8:19 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... I am on a domain here and a workgroup at home. Could that be the issue? Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bryan Carbonnell Sent: Thursday, March 30, 2006 9:26 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT: Hamachi - again... On 3/30/06, Bobby Heid wrote: > I do have some shares that I can successfully access from within the home > network. Yes, but the machine you are on now may not be setup properly to access the shares. I'm thinking that maybe it's a workgroups name issue. I know I ran into that with my laptop accessing files across my home network. -- Bryan Carbonnell - carbonnb at gmail.com From bheid at appdevgrp.com Fri Mar 31 06:23:07 2006 From: bheid at appdevgrp.com (Bobby Heid) Date: Fri, 31 Mar 2006 07:23:07 -0500 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D795F7@ADGSERVER> Message-ID: <916187228923D311A6FE00A0CC3FAA30D351B0@ADGSERVER> Jim, Yes, I saw that. Browse is what I am trying to do to access my home pc. Thanks, Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Lawrence Sent: Thursday, March 30, 2006 6:28 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... Hi Bobby: When bringing up the Hamachi window and right-clicking the remote site options you should have, Ping, Browse, Send Message and Copy Address available. HTH Jim From Johncliviger at aol.com Fri Mar 31 08:41:24 2006 From: Johncliviger at aol.com (Johncliviger at aol.com) Date: Fri, 31 Mar 2006 09:41:24 EST Subject: [AccessD] Trigger a macro Message-ID: <36c.d680a2.315e9994@aol.com> Hi all How do I run a macro in a Backend AXP database from its FrontEnd? It must be simple but my brain can't hack it regards johnc From adtp at airtelbroadband.in Fri Mar 31 08:47:11 2006 From: adtp at airtelbroadband.in (A.D.TEJPAL) Date: Fri, 31 Mar 2006 20:17:11 +0530 Subject: [AccessD] Date Comparison Problem References: Message-ID: <006c01c654d2$172342d0$541865cb@pcadt> Thanks Gustav! I agree - Considering the implications associated with languages other than English, "m/d/yyyy" format mentioned by you would be safest. Alternatively, explicit conversion to DateValue() within the SQL string as suggested by Stuart. A.D.Tejpal --------------- ----- Original Message ----- From: Gustav Brock To: accessd at databaseadvisors.com Sent: Friday, March 31, 2006 14:37 Subject: Re: [AccessD] Date Comparison Problem Hi A.D. Yes, in fact most other languages than English will fail - even worse it may only fail for some months. For example, the Danish abbreviations for months equal the English except for one month, October, which is okt. Thus, using that, an October date will be formatted as 3-okt-2006, which when put in an SQL string as #3-okt-2006# will raise a syntax error. Note that even the slash has been replaced with the localized date separator which here is "-". The use of d/m/yyyy is highly recommended as that is standard SQL which will work for any decent SQL engine. Most modern SQL engines with MaxDB (SAP DB) in front accepts or even prefers the ISO format with 24 hour time of yyyy-mm-dd hh:nn:ss or even yyyymmddhhnnss. /gustav >>> adtp at airtelbroadband.in 30-03-2006 21:24 >>> Gustav, I agree that "m/d/yyyyy" format for concatenation into a string should always give consistent results. Similar have been the findings with adoption of "dd-mmm-yyyy" format. One advantage of non-ambiguous format is that even if the programmer happens to slip up from standard sequence, the result still gets interpreted correctly. For example, all the following permutations will work OK: dd-mmm-yyyy, mmm-dd-yyyy, dd-yyyy-mmm, mmm-yyyy-dd, yyyy-mmm-dd, yyyy-dd-mmm. Are you in a position to test out and verify whether there is any specific situation where non-ambiguous format represented by "dd-mmm-yyyy" is not found to give consistent results ? Do you have some language other than English in mind ? Best wishes, A.D.Tejpal --------------- ----- Original Message ----- From: Gustav Brock To: accessd at databaseadvisors.com Sent: Thursday, March 30, 2006 23:48 Subject: Re: [AccessD] Date Comparison Problem Hi A.D. That may not work as the literal month names are localized as well. /gustav >>> adtp at airtelbroadband.in 30-03-2006 20:04 >>> StrSQL = StrSQL & " WHERE TDate Between #" & _ Format(StartDate, "dd-mmm-yyyy") & "#" From cfoust at infostatsystems.com Fri Mar 31 10:32:04 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 31 Mar 2006 08:32:04 -0800 Subject: [AccessD] Date Comparison Problem Message-ID: Actually, no, I didn't. My boss did. And yes, I meant the system date/time format. The snippet I posted is called from all over and the user might enter anything including a long date. Like a lot of applications, this one has grown organically over time and I have only been allowed to maintain and extend it, not rewrite. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Thursday, March 30, 2006 11:01 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Date Comparison Problem Hi Charlotte But all the clumsy code with Replace? Tell me you didn't write it. In our applications when I need a date I convert whatever value that may be to variables of date/time value. If that fails there isn't much to do. The only variation to that is when you have to deal with non-existing dates, Nulls, as only a Variant will hold that. Also, don't confuse the novices: CDate() does not convert expressions to a "system format" but to a date/time value. It fails for Null, but if you need to pass Null to a varDate holding Null or a date, use good old CVDate(). /gustav >>> cfoust at infostatsystems.com 30-03-2006 20:39 >>> Maybe in *your* applications, Gustav! LOL Our "dates" can be in multiple date and type formats and may be dates, strings or nulls (if we're lucky). The Cdate converts them all to the system format so we're working with apples instead of fruit salad. We also have to handle time strings without a date attached and a variety of other cute oddities. That's why it goes the long way around, we wanted both insurance and code that a novice could plow through if necessary. ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Thursday, March 30, 2006 10:26 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Date Comparison Problem Hi Charlotte That's really a long way to go. One line of code will do. CDate() is normally not needed as you should (must) have variables of date/time value before you begin building your SQL string. Also, use the backslash as escape character: Public Function StrDateSQL(ByVal dat As Date) As String ' Formats full string of date/time in US format for SQL. ' Overrides local (non US) settings for date/time separators. ' Example output: ' ' #08/16/1998 04:03:36 PM# ' ' 1999-10-21. Cactus Data ApS, CPH. StrDateSQL = Format(dat, "\#mm\/dd\/yyyy hh\:nn\:ss AM/PM\#") End Function Credit goes to Lembit who stressed this many years ago. /gustav >>> cfoust at infostatsystems.com 30-03-2006 20:11 >>> The easiest way to handle it is to use Cdate functions around each date before comparing them and then forcing a us format, which is what SQL wants: If IsDate(varDate) Then strDate = Format(CDate(varDate), "mm/dd/yyyy") strTime = Format(CDate(varDate), "h:nn:ss AM/PM") If Format(Now(), "/") <> "/" Then ' we have a non-standard date separator strDate = ReplaceChars(strDate, Format(Now(), "/"), "/") End If If Format(Now(), ":") <> ":" Then ' we have a non-standard time separator strTime = ReplaceChars(strTime, Format(Now(), ":"), ":") End If USDate = "#" & strDate & " " & strTime & "#" End If Charlotte Foust -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Fri Mar 31 10:35:37 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 31 Mar 2006 08:35:37 -0800 Subject: [AccessD] Trigger a macro Message-ID: The first question is why you have a macro in a backend database. If the tables are attached, you can do anything a backend macro could do from the front end. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Johncliviger at aol.com Sent: Friday, March 31, 2006 6:41 AM To: accessD at databaseadvisors.com Subject: [AccessD] Trigger a macro Hi all How do I run a macro in a Backend AXP database from its FrontEnd? It must be simple but my brain can't hack it regards johnc -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Fri Mar 31 10:37:58 2006 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 31 Mar 2006 08:37:58 -0800 Subject: [AccessD] Date Comparison Problem Message-ID: Oh, and we also have to deal with converting data between systems that use different date formats and delimiters. Start playing with languages that use a dot as a date delimiter or a space. ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Thursday, March 30, 2006 11:01 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Date Comparison Problem Hi Charlotte But all the clumsy code with Replace? Tell me you didn't write it. In our applications when I need a date I convert whatever value that may be to variables of date/time value. If that fails there isn't much to do. The only variation to that is when you have to deal with non-existing dates, Nulls, as only a Variant will hold that. Also, don't confuse the novices: CDate() does not convert expressions to a "system format" but to a date/time value. It fails for Null, but if you need to pass Null to a varDate holding Null or a date, use good old CVDate(). /gustav >>> cfoust at infostatsystems.com 30-03-2006 20:39 >>> Maybe in *your* applications, Gustav! LOL Our "dates" can be in multiple date and type formats and may be dates, strings or nulls (if we're lucky). The Cdate converts them all to the system format so we're working with apples instead of fruit salad. We also have to handle time strings without a date attached and a variety of other cute oddities. That's why it goes the long way around, we wanted both insurance and code that a novice could plow through if necessary. ;o> Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Thursday, March 30, 2006 10:26 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Date Comparison Problem Hi Charlotte That's really a long way to go. One line of code will do. CDate() is normally not needed as you should (must) have variables of date/time value before you begin building your SQL string. Also, use the backslash as escape character: Public Function StrDateSQL(ByVal dat As Date) As String ' Formats full string of date/time in US format for SQL. ' Overrides local (non US) settings for date/time separators. ' Example output: ' ' #08/16/1998 04:03:36 PM# ' ' 1999-10-21. Cactus Data ApS, CPH. StrDateSQL = Format(dat, "\#mm\/dd\/yyyy hh\:nn\:ss AM/PM\#") End Function Credit goes to Lembit who stressed this many years ago. /gustav >>> cfoust at infostatsystems.com 30-03-2006 20:11 >>> The easiest way to handle it is to use Cdate functions around each date before comparing them and then forcing a us format, which is what SQL wants: If IsDate(varDate) Then strDate = Format(CDate(varDate), "mm/dd/yyyy") strTime = Format(CDate(varDate), "h:nn:ss AM/PM") If Format(Now(), "/") <> "/" Then ' we have a non-standard date separator strDate = ReplaceChars(strDate, Format(Now(), "/"), "/") End If If Format(Now(), ":") <> ":" Then ' we have a non-standard time separator strTime = ReplaceChars(strTime, Format(Now(), ":"), ":") End If USDate = "#" & strDate & " " & strTime & "#" End If Charlotte Foust -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jim.Hale at FleetPride.com Fri Mar 31 11:45:55 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Fri, 31 Mar 2006 11:45:55 -0600 Subject: [AccessD] Las Vegas conference Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB34@corp-es01.fleetpride.com> Anybody going to vague-us for the Access conference 4/9? Jim Hale *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From lmrazek at lcm-res.com Fri Mar 31 13:06:44 2006 From: lmrazek at lcm-res.com (Lawrence Mrazek) Date: Fri, 31 Mar 2006 13:06:44 -0600 Subject: [AccessD] Excel Automation ... Setting Default Formatting InExcel In-Reply-To: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB2F@corp-es01.fleetpride.com> Message-ID: <023301c654f6$409878a0$c50b470a@stormy> Thanks Jim: I'm currently using the following code to create my workbook: Set xlApp = New Excel.Application xlApp.Visible = True Set xlWb = xlApp.Workbooks.Add To use a template, do I simply alter the last line so that it points to a template? Set xlWb = xlApp.Workbooks.Add("c:\template.xlt") Also, how do you make sure that each new worksheet inherits the template's formatting? I'm using the following code to add the worksheet: Set xlWs = xlWb.Worksheets.Add Thanks in advance for all of your advice. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314.432.5886 fx. 314.432.3304 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hale, Jim Sent: Thursday, March 30, 2006 5:47 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Excel Automation ... Setting Default Formatting InExcel I use a template with a worksheet formatted the way I need. After opening the template in code I create as many sheets as needed copying the preformatted sheet. This is better then slugging it out in vba since the inevitable tweaks to the format can be handled by simply changing the template. Jim Hale -----Original Message----- From: Lawrence Mrazek [mailto:lmrazek at lcm-res.com] Sent: Thursday, March 30, 2006 3:27 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Excel Automation ... Setting Default Formatting In Excel Hi: I have a fairly complex Access to Excel automation project, and having conquered my named ranges issue, I'm wondering about the best way to set default formatting for columns (percentages, decimals, conditional formats). The application dynamically creates worksheets in the Excel workbook (sometimes it has 5 worksheets, sometimes more) from data stored in Access. The data will always be in the same columns, (EX: column M is percent, Column N is 2 decimals, etc.); Can I have Excel set defaults for these columns before exporting/creating the data, or is it better to just do this in VBA? Thanks in advance. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314.432.5886 fx. 314.432.3304 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Jim.Hale at FleetPride.com Fri Mar 31 14:10:10 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Fri, 31 Mar 2006 14:10:10 -0600 Subject: [AccessD] Excel Automation ... Setting Default Formatting InE xcel Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB38@corp-es01.fleetpride.com> I use this code open the template: strPathname="c:\template.xlt" appExcel.Workbooks.Open strPathname, 0 The path I actually use is the path where Excel stores the templates by default, something like C:\Documents and Settings\jhale\Application Data\Microsoft\Templates\TrialBal_Excel_6mo.xlt In the code segment below I copy the worksheet Dept1 as many times as called for from a recordset: 'routine to create and rename Worksheets recset(1).MoveFirst Dim y As Integer, z As Integer, x As Integer z = .Worksheets("Dept1").Index For y = z To intRst4cnt + z - 1 strName = recset(1)("fldDPname") .Worksheets(y).Name = strName .Worksheets(y).Select .Range("A10").FormulaR1C1 = y - z + 1 'set index number of sheet .Range("A1").Select If Not recset(1).RecordCount = y - z + 1 Then .Worksheets(z).Copy After:=Worksheets(y) End If If Not recset(5).EOF Then recset(1).MoveNext Next y I am sending you a sample database off list that shows how to paste data into template. HTH Jim Hale -----Original Message----- From: Lawrence Mrazek [mailto:lmrazek at lcm-res.com] Sent: Friday, March 31, 2006 1:07 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Excel Automation ... Setting Default Formatting InExcel Thanks Jim: I'm currently using the following code to create my workbook: Set xlApp = New Excel.Application xlApp.Visible = True Set xlWb = xlApp.Workbooks.Add To use a template, do I simply alter the last line so that it points to a template? Set xlWb = xlApp.Workbooks.Add("c:\template.xlt") Also, how do you make sure that each new worksheet inherits the template's formatting? I'm using the following code to add the worksheet: Set xlWs = xlWb.Worksheets.Add Thanks in advance for all of your advice. Larry Mrazek LCM Research, Inc. www.lcm-res.com lmrazek at lcm-res.com ph. 314.432.5886 fx. 314.432.3304 *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From jim.moss at jlmoss.net Fri Mar 31 16:41:42 2006 From: jim.moss at jlmoss.net (Jim Moss) Date: Fri, 31 Mar 2006 16:41:42 -0600 (CST) Subject: [AccessD] Access automation of Excel Column Summing After CopyFromRecordset In-Reply-To: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB38@corp-es01.fleetpride.com> References: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB38@corp-es01.fleetpride.com> Message-ID: <51089.65.196.182.34.1143844902.squirrel@65.196.182.34> How do I programatically insert a SUM into the row following a CopyFromRecordset? All that I seen to get is the text of SUM. Thanks, Jim From Jim.Hale at FleetPride.com Fri Mar 31 17:06:29 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Fri, 31 Mar 2006 17:06:29 -0600 Subject: [AccessD] Access automation of Excel Column Summing After Cop yFromRecordset Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB39@corp-es01.fleetpride.com> try something like .Range("f63").Formula = "=sum(f1:f62)" Jim Hale -----Original Message----- From: Jim Moss [mailto:jim.moss at jlmoss.net] Sent: Friday, March 31, 2006 4:42 PM To: Access Developers discussion and problem solving Subject: [AccessD] Access automation of Excel Column Summing After CopyFromRecordset How do I programatically insert a SUM into the row following a CopyFromRecordset? All that I seen to get is the text of SUM. Thanks, Jim -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From jim.moss at jlmoss.net Fri Mar 31 17:16:30 2006 From: jim.moss at jlmoss.net (Jim Moss) Date: Fri, 31 Mar 2006 17:16:30 -0600 (CST) Subject: [AccessD] Access automation of Excel Column Summing After Cop yFromRecordset In-Reply-To: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB39@corp-es01.fleetpride.com> References: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB39@corp-es01.fleetpride.com> Message-ID: <52678.65.196.182.34.1143846990.squirrel@65.196.182.34> I guess that I don't know enough about the Range object. I'm using something like: With objSht .range(.Cells(2, 1), .Cells(intMaxRow, _ intMaxCol)).CopyFromRecordset rs1 End With because my recordsets always have different row counts. Normally when I need a total I just loop through the rs. Thanks, Jim > try something like > .Range("f63").Formula = "=sum(f1:f62)" > Jim Hale > > -----Original Message----- > From: Jim Moss [mailto:jim.moss at jlmoss.net] > Sent: Friday, March 31, 2006 4:42 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Access automation of Excel Column Summing After > CopyFromRecordset > > > How do I programatically insert a SUM into the row following a > CopyFromRecordset? All that I seen to get is the text of SUM. > > Thanks, > > Jim > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > *********************************************************************** > The information transmitted is intended solely for the individual or > entity to which it is addressed and may contain confidential and/or > privileged material. Any review, retransmission, dissemination or > other use of or taking action in reliance upon this information by > persons or entities other than the intended recipient is prohibited. > If you have received this email in error please contact the sender and > delete the material from any computer. As a recipient of this email, > you are responsible for screening its contents and the contents of any > attachments for the presence of viruses. No liability is accepted for > any damages caused by any virus transmitted by this email. > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From Jim.Hale at FleetPride.com Fri Mar 31 17:34:48 2006 From: Jim.Hale at FleetPride.com (Hale, Jim) Date: Fri, 31 Mar 2006 17:34:48 -0600 Subject: [AccessD] Access automation of Excel Column Summing After Cop yFromRecordset Message-ID: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB3A@corp-es01.fleetpride.com> If you know how many rows the rs has and what row you start at you can build the the sum string, ie beginning row+record count+1 is where to paste the sum function Jim Hale -----Original Message----- From: Jim Moss [mailto:jim.moss at jlmoss.net] Sent: Friday, March 31, 2006 5:16 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access automation of Excel Column Summing After Cop yFromRecordset I guess that I don't know enough about the Range object. I'm using something like: With objSht .range(.Cells(2, 1), .Cells(intMaxRow, _ intMaxCol)).CopyFromRecordset rs1 End With because my recordsets always have different row counts. Normally when I need a total I just loop through the rs. Thanks, Jim > try something like > .Range("f63").Formula = "=sum(f1:f62)" > Jim Hale > > -----Original Message----- > From: Jim Moss [mailto:jim.moss at jlmoss.net] > Sent: Friday, March 31, 2006 4:42 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Access automation of Excel Column Summing After > CopyFromRecordset > > > How do I programatically insert a SUM into the row following a > CopyFromRecordset? All that I seen to get is the text of SUM. > > Thanks, > > Jim > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > *********************************************************************** > The information transmitted is intended solely for the individual or > entity to which it is addressed and may contain confidential and/or > privileged material. Any review, retransmission, dissemination or > other use of or taking action in reliance upon this information by > persons or entities other than the intended recipient is prohibited. > If you have received this email in error please contact the sender and > delete the material from any computer. As a recipient of this email, > you are responsible for screening its contents and the contents of any > attachments for the presence of viruses. No liability is accepted for > any damages caused by any virus transmitted by this email. > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com *********************************************************************** The information transmitted is intended solely for the individual or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this email in error please contact the sender and delete the material from any computer. As a recipient of this email, you are responsible for screening its contents and the contents of any attachments for the presence of viruses. No liability is accepted for any damages caused by any virus transmitted by this email. From jim.moss at jlmoss.net Fri Mar 31 18:10:48 2006 From: jim.moss at jlmoss.net (Jim Moss) Date: Fri, 31 Mar 2006 18:10:48 -0600 (CST) Subject: [AccessD] Access automation of Excel Column Summing After Cop yFromRecordset In-Reply-To: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB3A@corp-es01.fleetpride.com> References: <6A6AA9DF57E4F046BDA1E273BDDB67727DDB3A@corp-es01.fleetpride.com> Message-ID: <52982.65.196.182.34.1143850248.squirrel@65.196.182.34> Jim, I'm getting object doesn't support this property or method runtime 438. It's probably my built string. I will look at over the weekend. Thanks, Jim > If you know how many rows the rs has and what row you start at you can > build > the the sum string, ie beginning row+record count+1 is where to paste the > sum function > Jim Hale > > -----Original Message----- > From: Jim Moss [mailto:jim.moss at jlmoss.net] > Sent: Friday, March 31, 2006 5:16 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access automation of Excel Column Summing After > Cop yFromRecordset > > > I guess that I don't know enough about the Range object. I'm using > something like: > > With objSht > .range(.Cells(2, 1), .Cells(intMaxRow, _ > intMaxCol)).CopyFromRecordset rs1 > End With > > because my recordsets always have different row counts. Normally when I > need a total I just loop through the rs. > > Thanks, > > Jim > >> try something like >> .Range("f63").Formula = "=sum(f1:f62)" >> Jim Hale >> >> -----Original Message----- >> From: Jim Moss [mailto:jim.moss at jlmoss.net] >> Sent: Friday, March 31, 2006 4:42 PM >> To: Access Developers discussion and problem solving >> Subject: [AccessD] Access automation of Excel Column Summing After >> CopyFromRecordset >> >> >> How do I programatically insert a SUM into the row following a >> CopyFromRecordset? All that I seen to get is the text of SUM. >> >> Thanks, >> >> Jim >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> >> *********************************************************************** >> The information transmitted is intended solely for the individual or >> entity to which it is addressed and may contain confidential and/or >> privileged material. Any review, retransmission, dissemination or >> other use of or taking action in reliance upon this information by >> persons or entities other than the intended recipient is prohibited. >> If you have received this email in error please contact the sender and >> delete the material from any computer. As a recipient of this email, >> you are responsible for screening its contents and the contents of any >> attachments for the presence of viruses. No liability is accepted for >> any damages caused by any virus transmitted by this email. >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > *********************************************************************** > The information transmitted is intended solely for the individual or > entity to which it is addressed and may contain confidential and/or > privileged material. Any review, retransmission, dissemination or > other use of or taking action in reliance upon this information by > persons or entities other than the intended recipient is prohibited. > If you have received this email in error please contact the sender and > delete the material from any computer. As a recipient of this email, > you are responsible for screening its contents and the contents of any > attachments for the presence of viruses. No liability is accepted for > any damages caused by any virus transmitted by this email. > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From martyconnelly at shaw.ca Fri Mar 31 18:37:10 2006 From: martyconnelly at shaw.ca (MartyConnelly) Date: Fri, 31 Mar 2006 16:37:10 -0800 Subject: [AccessD] Trigger a macro References: <36c.d680a2.315e9994@aol.com> Message-ID: <442DCB36.70706@shaw.ca> If you really need to, try this from Michael Kaplan TSI SOON (Shut One, Open New) database add-in http://www.trigeminal.com/lang/1033/utility.asp?ItemID=8#8 Or this works but not sure of all the ramifications. Sub OpenmdbMacro() 'open macro in a second mdb Dim objAccess As Object Set objAccess = CreateObject("Access.Application") 'objAccess.Visible = True 'to see what's happening man objAccess.OpenCurrentDatabase "C:\Temp\test macro 2003.mdb", False objAccess.DoCmd.RunMacro ("MyMacro") Set objAccess = Nothing End Sub Johncliviger at aol.com wrote: >Hi all > >How do I run a macro in a Backend AXP database from its FrontEnd? It must be >simple but my brain can't hack it > >regards > >johnc > > -- Marty Connelly Victoria, B.C. Canada From accessd at shaw.ca Fri Mar 31 19:02:22 2006 From: accessd at shaw.ca (Jim Lawrence) Date: Fri, 31 Mar 2006 17:02:22 -0800 Subject: [AccessD] OT: Hamachi - again... In-Reply-To: <916187228923D311A6FE00A0CC3FAA30D351B0@ADGSERVER> Message-ID: <0IX0001YAQVGG1N0@l-daemon> Hi Bobby: These questions may sound overly obvious for that I apologize but: 1. Is 'Hamachi' left running on PC at home... it will show at the bottom right section of your task bar when it is. 2. Have you setup shares on your home PC? No share(s), no access. By adding the appropriate security to these shares it will either ask for login validation or not. Set the level of security and who is allowed access by right-mouse-clicking the directory/share in question, opening the security tab and attaching the required user. HTH Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Friday, March 31, 2006 4:23 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... Jim, Yes, I saw that. Browse is what I am trying to do to access my home pc. Thanks, Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Lawrence Sent: Thursday, March 30, 2006 6:28 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Hamachi - again... Hi Bobby: When bringing up the Hamachi window and right-clicking the remote site options you should have, Ping, Browse, Send Message and Copy Address available. HTH Jim -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com