From ssharkins at gmail.com Mon Sep 1 07:14:41 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Mon, 1 Sep 2008 08:14:41 -0400 Subject: [AccessD] A2003: Calculating tax amounts (OT) References: <57E6E6CA42105A48B977303A2CDC2720076DA26E6C@WPEXCH22.retail.ad.cmltd.net.au> Message-ID: <07e901c90c2c$eb2d03e0$2f8601c7@SusanOne> > > Yeah, but our personal tax rates are pretty fierce compared to the US. On > the other hand, if you get hit by a Bus here and taken to hospital, you > will get fixed up pretty much for free and won't have to sell your house > to be the medical bills. ==========They don't do that to you anymore overhere either. You can file a special medical bankruptcy -- I don't know the details though. Susan H. From rockysmolin at bchacc.com Mon Sep 1 07:59:54 2008 From: rockysmolin at bchacc.com (rockysmolin at bchacc.com) Date: Mon, 1 Sep 2008 08:59:54 -0400 Subject: [AccessD] A2003: Calculating tax amounts (OT) Message-ID: <380-22008911125954103@M2W012.mail2web.com> The only thing I could find on that is a proposal to shelter $250,000 of home equity n the event of a bankruptcy due to medical bills. THis assumes that you have not already consumed the equity in your house paying bills. But I can't find anything other than that one proposal. I think you're still exposed to bankruptcy from medical bills. AFAIK you can't segregate your debts like that. But I didn't do an exhaustive search. Do you know of a link which describes asset exemptions in a bankruptcy due to medical bills? Rocky Original Message: ----------------- From: Susan Harkins ssharkins at gmail.com Date: Mon, 1 Sep 2008 08:14:41 -0400 To: accessd at databaseadvisors.com Subject: Re: [AccessD] A2003: Calculating tax amounts (OT) > > Yeah, but our personal tax rates are pretty fierce compared to the US. On > the other hand, if you get hit by a Bus here and taken to hospital, you > will get fixed up pretty much for free and won't have to sell your house > to be the medical bills. ==========They don't do that to you anymore overhere either. You can file a special medical bankruptcy -- I don't know the details though. Susan H. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -------------------------------------------------------------------- mail2web.com ? What can On Demand Business Solutions do for you? http://link.mail2web.com/Business/SharePoint From tinanfields at torchlake.com Mon Sep 1 11:19:35 2008 From: tinanfields at torchlake.com (Tina Norris Fields) Date: Mon, 01 Sep 2008 12:19:35 -0400 Subject: [AccessD] Clear the display in a combo box Message-ID: <48BC1617.2040003@torchlake.com> Hi, I know this should be easy, but I'm not getting it. I have a combo box, I make a selection from the list, I click a button that opens another form based on my selection in the combo box. So far, so good. I close the second form and return to the form with the combo box on it. I want the box to be empty of the choice last made. That is, I want the form with the combo box to appear the way it does before it gets used. I don't want the previous selection to appear in the textbox portion of the combo box. What action or method do I want? And should it be called in the On Activate event? Thanks, Tina From dbdoug at gmail.com Mon Sep 1 12:00:45 2008 From: dbdoug at gmail.com (Doug Steele) Date: Mon, 1 Sep 2008 10:00:45 -0700 Subject: [AccessD] Clear the display in a combo box In-Reply-To: <48BC1617.2040003@torchlake.com> References: <48BC1617.2040003@torchlake.com> Message-ID: <4dd71a0c0809011000t5ad6fadby6154a62c405efc2a@mail.gmail.com> I think you can just set it to null: mycombobox = null I generally use the Current or Activate events of the form. Doug Steele On Mon, Sep 1, 2008 at 9:19 AM, Tina Norris Fields < tinanfields at torchlake.com> wrote: > Hi, > > I know this should be easy, but I'm not getting it. I have a combo box, > I make a selection from the list, I click a button that opens another > form based on my selection in the combo box. So far, so good. I close > the second form and return to the form with the combo box on it. I want > the box to be empty of the choice last made. That is, I want the form > with the combo box to appear the way it does before it gets used. I > don't want the previous selection to appear in the textbox portion of > the combo box. What action or method do I want? And should it be > called in the On Activate event? > > Thanks, > Tina > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From bheid at sc.rr.com Mon Sep 1 12:49:33 2008 From: bheid at sc.rr.com (Bobby Heid) Date: Mon, 1 Sep 2008 13:49:33 -0400 Subject: [AccessD] Clear the display in a combo box In-Reply-To: <48BC1617.2040003@torchlake.com> References: <48BC1617.2040003@torchlake.com> Message-ID: <003901c90c5b$18211bb0$48635310$@rr.com> Tina, Either before you go to the second form or when you get beck, try setting the ListIndex property to -1. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Tina Norris Fields Sent: Monday, September 01, 2008 12:20 PM To: AccessD at databaseadvisors.com Subject: [AccessD] Clear the display in a combo box Hi, I know this should be easy, but I'm not getting it. I have a combo box, I make a selection from the list, I click a button that opens another form based on my selection in the combo box. So far, so good. I close the second form and return to the form with the combo box on it. I want the box to be empty of the choice last made. That is, I want the form with the combo box to appear the way it does before it gets used. I don't want the previous selection to appear in the textbox portion of the combo box. What action or method do I want? And should it be called in the On Activate event? Thanks, Tina From tinanfields at torchlake.com Tue Sep 2 07:56:24 2008 From: tinanfields at torchlake.com (Tina Norris Fields) Date: Tue, 02 Sep 2008 08:56:24 -0400 Subject: [AccessD] Clear the display in a combo box In-Reply-To: <4dd71a0c0809011000t5ad6fadby6154a62c405efc2a@mail.gmail.com> References: <48BC1617.2040003@torchlake.com> <4dd71a0c0809011000t5ad6fadby6154a62c405efc2a@mail.gmail.com> Message-ID: <48BD37F8.3020006@torchlake.com> Doug, Thank you, this worked perfectly. Tina Doug Steele wrote: > I think you can just set it to null: > > mycombobox = null > > I generally use the Current or Activate events of the form. > > Doug Steele > > On Mon, Sep 1, 2008 at 9:19 AM, Tina Norris Fields < > tinanfields at torchlake.com> wrote: > > >> Hi, >> >> I know this should be easy, but I'm not getting it. I have a combo box, >> I make a selection from the list, I click a button that opens another >> form based on my selection in the combo box. So far, so good. I close >> the second form and return to the form with the combo box on it. I want >> the box to be empty of the choice last made. That is, I want the form >> with the combo box to appear the way it does before it gets used. I >> don't want the previous selection to appear in the textbox portion of >> the combo box. What action or method do I want? And should it be >> called in the On Activate event? >> >> Thanks, >> Tina >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> >> From tinanfields at torchlake.com Tue Sep 2 08:09:34 2008 From: tinanfields at torchlake.com (Tina Norris Fields) Date: Tue, 02 Sep 2008 09:09:34 -0400 Subject: [AccessD] Clear the display in a combo box In-Reply-To: <003901c90c5b$18211bb0$48635310$@rr.com> References: <48BC1617.2040003@torchlake.com> <003901c90c5b$18211bb0$48635310$@rr.com> Message-ID: <48BD3B0E.1090103@torchlake.com> Bobby, This ListIndex property is pretty interesting. I had never looked at it before. As of now, I'm not doing it right - and since setting the combo box to Null works well, I have a solution for now. However, I am interested in knowing some more about using this property. I tried it according to what I understood the syntax to be, by Dimming the form name and the control name as strings (stFormName and stComboName) and defining them: Dim stFormName As String Dim stComboName As String stFormName = ""frmMemberLookup" stComboName = "cboMemberLookup" Forms(stFormName).Controls(stComboName).ListIndex = -1 I got the error message that I wasn't using it the right way, and decided this was something I would learn later. I can see lots of uses for this ListIndex property if I can learn to use it correctly. Would you tell me more about how you use it? Thanks, Tina Bobby Heid wrote: > Tina, > > Either before you go to the second form or when you get beck, try setting > the ListIndex property to -1. > > Bobby > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Tina Norris > Fields > Sent: Monday, September 01, 2008 12:20 PM > To: AccessD at databaseadvisors.com > Subject: [AccessD] Clear the display in a combo box > > Hi, > > I know this should be easy, but I'm not getting it. I have a combo box, > I make a selection from the list, I click a button that opens another > form based on my selection in the combo box. So far, so good. I close > the second form and return to the form with the combo box on it. I want > the box to be empty of the choice last made. That is, I want the form > with the combo box to appear the way it does before it gets used. I > don't want the previous selection to appear in the textbox portion of > the combo box. What action or method do I want? And should it be > called in the On Activate event? > > Thanks, > Tina > > > From dwaters at usinternet.com Tue Sep 2 08:42:38 2008 From: dwaters at usinternet.com (Dan Waters) Date: Tue, 2 Sep 2008 08:42:38 -0500 Subject: [AccessD] Mouse Wheel Scrolling in the Code Window Message-ID: <5B401E1193D04A63A7425711D08FCB58@danwaters> A couple of weeks ago I found out that the latest version of IntelliType Pro (6.2) does support mouse wheel scrolling in the code window for Access 2003. IntelliType Pro 6.1 did NOT support mouse wheel scrolling. IntelliType Pro 6.2 can be downloaded from multiple sites. Dan From davidmcafee at gmail.com Tue Sep 2 14:50:43 2008 From: davidmcafee at gmail.com (David McAfee) Date: Tue, 2 Sep 2008 12:50:43 -0700 Subject: [AccessD] OT: Word help Message-ID: <8786a4c00809021250pcf12477g38e66ea0c517cd98@mail.gmail.com> With each new version of Office, my hatred for Word grows and grows. Using word 2003, I was going to print out a document, but accidentally hit the email button. I got stuck with my document now stuck as an attachment to an email message. I've even closed the doc, and re-opened the doc, and it has all the email stuff on top (to, cc, subject, introduction) Does anyone know how to revert back to a plain old .doc file? TIA, David From ssharkins at gmail.com Tue Sep 2 15:13:57 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Tue, 2 Sep 2008 16:13:57 -0400 Subject: [AccessD] OT: Word help References: <8786a4c00809021250pcf12477g38e66ea0c517cd98@mail.gmail.com> Message-ID: <03d901c90d38$6f13fb80$2f8601c7@SusanOne> I think, all you have to do is just click the button again -- isn't it a toggle button? Susan H. > With each new version of Office, my hatred for Word grows and grows. > > Using word 2003, I was going to print out a document, but accidentally hit > the email button. > > I got stuck with my document now stuck as an attachment to an email > message. > > I've even closed the doc, and re-opened the doc, and it has all the email > stuff on top (to, cc, subject, introduction) > > > Does anyone know how to revert back to a plain old .doc file? From garykjos at gmail.com Tue Sep 2 16:13:12 2008 From: garykjos at gmail.com (Gary Kjos) Date: Tue, 2 Sep 2008 16:13:12 -0500 Subject: [AccessD] OT: Word help In-Reply-To: <8786a4c00809021250pcf12477g38e66ea0c517cd98@mail.gmail.com> References: <8786a4c00809021250pcf12477g38e66ea0c517cd98@mail.gmail.com> Message-ID: I've done that too. As Susan has said, hit the button again and it will switch back. GK On 9/2/08, David McAfee wrote: > With each new version of Office, my hatred for Word grows and grows. > > Using word 2003, I was going to print out a document, but accidentally hit > the email button. > > I got stuck with my document now stuck as an attachment to an email message. > > I've even closed the doc, and re-opened the doc, and it has all the email > stuff on top (to, cc, subject, introduction) > > > Does anyone know how to revert back to a plain old .doc file? > > TIA, > David > -- > 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 ssharkins at gmail.com Tue Sep 2 17:09:32 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Tue, 2 Sep 2008 18:09:32 -0400 Subject: [AccessD] OT: Word help References: <8786a4c00809021250pcf12477g38e66ea0c517cd98@mail.gmail.com> Message-ID: <047501c90d49$13297eb0$2f8601c7@SusanOne> It's in a bad spot if you ask me. I do it all the time and it annoys me. Susan H. > I've done that too. As Susan has said, hit the button again and it > will switch back. From rockysmolin at bchacc.com Tue Sep 2 17:22:14 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Tue, 2 Sep 2008 15:22:14 -0700 Subject: [AccessD] FW: Slashdot | Microsoft Patents "Pg Up" and "Pg Dn" Message-ID: <03d301c90d4a$5a3abe30$0301a8c0@HAL9005> Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com _____ From: Jack Stone [mailto:jack.stone at solidcounsel.com] Sent: Tuesday, September 02, 2008 3:09 PM To: rockysmolin at bchacc.com Subject: FW: Slashdot | Microsoft Patents "Pg Up" and "Pg Dn" Thought you should be aware of this .... :-) http://yro.slashdot.org/article.pl?sid=08/08/31/2224217 &from=rss From davidmcafee at gmail.com Tue Sep 2 17:53:28 2008 From: davidmcafee at gmail.com (David McAfee) Date: Tue, 2 Sep 2008 15:53:28 -0700 Subject: [AccessD] OT: Word help In-Reply-To: <047501c90d49$13297eb0$2f8601c7@SusanOne> References: <8786a4c00809021250pcf12477g38e66ea0c517cd98@mail.gmail.com> <047501c90d49$13297eb0$2f8601c7@SusanOne> Message-ID: <8786a4c00809021553q1ea5fe43reb2aac3dc0edfbf2@mail.gmail.com> Boy, don't I feel stupid. I was looking through menus and help. And it was just a toggle button. lol Thanks! D On Tue, Sep 2, 2008 at 3:09 PM, Susan Harkins wrote: > It's in a bad spot if you ask me. I do it all the time and it annoys me. > > Susan H. > > > > I've done that too. As Susan has said, hit the button again and it > > will switch back. > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From davidmcafee at gmail.com Tue Sep 2 17:55:03 2008 From: davidmcafee at gmail.com (David McAfee) Date: Tue, 2 Sep 2008 15:55:03 -0700 Subject: [AccessD] OT: Word help In-Reply-To: <047501c90d49$13297eb0$2f8601c7@SusanOne> References: <8786a4c00809021250pcf12477g38e66ea0c517cd98@mail.gmail.com> <047501c90d49$13297eb0$2f8601c7@SusanOne> Message-ID: <8786a4c00809021555s189a5871tb2c35e16f24116f8@mail.gmail.com> I just went to customize and removed it. I never use it anyway. Thanks again, D On Tue, Sep 2, 2008 at 3:09 PM, Susan Harkins wrote: > It's in a bad spot if you ask me. I do it all the time and it annoys me. > > Susan H. > > > > I've done that too. As Susan has said, hit the button again and it > > will switch back. > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From Darryl.Collins at coles.com.au Tue Sep 2 20:25:20 2008 From: Darryl.Collins at coles.com.au (Darryl Collins) Date: Wed, 3 Sep 2008 11:25:20 +1000 Subject: [AccessD] Mouse Wheel Scrolling in the Code Window In-Reply-To: <5B401E1193D04A63A7425711D08FCB58@danwaters> Message-ID: <57E6E6CA42105A48B977303A2CDC2720076DA26E9C@WPEXCH22.retail.ad.cmltd.net.au> I suggest you install freewheel. It is free, been around for ever and works very well. MS also have a fix, but you need to jump thru a few hoops and have admin rights as well. Freewheel you don't. http://www.excelyourbusiness.com.au/VBE_Issues.htm#Mouse%20scroll%20wheel hth Darryl -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Dan Waters Sent: Tuesday, 2 September 2008 11:43 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Mouse Wheel Scrolling in the Code Window A couple of weeks ago I found out that the latest version of IntelliType Pro (6.2) does support mouse wheel scrolling in the code window for Access 2003. IntelliType Pro 6.1 did NOT support mouse wheel scrolling. IntelliType Pro 6.2 can be downloaded from multiple sites. Dan -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. From ssharkins at gmail.com Tue Sep 2 20:26:22 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Tue, 2 Sep 2008 21:26:22 -0400 Subject: [AccessD] OT: Word help References: <8786a4c00809021250pcf12477g38e66ea0c517cd98@mail.gmail.com><047501c90d49$13297eb0$2f8601c7@SusanOne> <8786a4c00809021555s189a5871tb2c35e16f24116f8@mail.gmail.com> Message-ID: <04ef01c90d64$1ea6ac20$2f8601c7@SusanOne> Yeah, I'd like to do that, but I have to keep everything pretty much in place for screen shots and instructions -- if something's missing, it confuses readers. Susan H. >I just went to customize and removed it. I never use it anyway. > > Thanks again, From Darryl.Collins at coles.com.au Tue Sep 2 20:28:42 2008 From: Darryl.Collins at coles.com.au (Darryl Collins) Date: Wed, 3 Sep 2008 11:28:42 +1000 Subject: [AccessD] OT: Word help In-Reply-To: <8786a4c00809021553q1ea5fe43reb2aac3dc0edfbf2@mail.gmail.com> Message-ID: <57E6E6CA42105A48B977303A2CDC2720076DA26E9D@WPEXCH22.retail.ad.cmltd.net.au> My gut feel on this David, it sounds much more like 'bad UI design' than 'dumb user'. Glad I am not alone in loathing MS Word. I only use it when I am desperate... -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of David McAfee Sent: Wednesday, 3 September 2008 8:53 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT: Word help Boy, don't I feel stupid. I was looking through menus and help. And it was just a toggle button. lol Thanks! D On Tue, Sep 2, 2008 at 3:09 PM, Susan Harkins wrote: > It's in a bad spot if you ask me. I do it all the time and it annoys me. > > Susan H. > > > > I've done that too. As Susan has said, hit the button again and it > > will switch back. > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/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 email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. From dwaters at usinternet.com Tue Sep 2 20:38:54 2008 From: dwaters at usinternet.com (Dan Waters) Date: Tue, 2 Sep 2008 20:38:54 -0500 Subject: [AccessD] Mouse Wheel Scrolling in the Code Window In-Reply-To: <57E6E6CA42105A48B977303A2CDC2720076DA26E9C@WPEXCH22.retail.ad.cmltd.net.au> References: <5B401E1193D04A63A7425711D08FCB58@danwaters> <57E6E6CA42105A48B977303A2CDC2720076DA26E9C@WPEXCH22.retail.ad.cmltd.net.au> Message-ID: Hi Darryl, I'm not pounding my chest for MS, but IntelliType Pro 6.2 is free and it's just an installation. No hoops - honest! Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darryl Collins Sent: Tuesday, September 02, 2008 8:25 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Mouse Wheel Scrolling in the Code Window I suggest you install freewheel. It is free, been around for ever and works very well. MS also have a fix, but you need to jump thru a few hoops and have admin rights as well. Freewheel you don't. http://www.excelyourbusiness.com.au/VBE_Issues.htm#Mouse%20scroll%20wheel hth Darryl -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Dan Waters Sent: Tuesday, 2 September 2008 11:43 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Mouse Wheel Scrolling in the Code Window A couple of weeks ago I found out that the latest version of IntelliType Pro (6.2) does support mouse wheel scrolling in the code window for Access 2003. IntelliType Pro 6.1 did NOT support mouse wheel scrolling. IntelliType Pro 6.2 can be downloaded from multiple sites. Dan -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Darryl.Collins at coles.com.au Tue Sep 2 20:45:33 2008 From: Darryl.Collins at coles.com.au (Darryl Collins) Date: Wed, 3 Sep 2008 11:45:33 +1000 Subject: [AccessD] Mouse Wheel Scrolling in the Code Window In-Reply-To: Message-ID: <57E6E6CA42105A48B977303A2CDC2720076DA26EA0@WPEXCH22.retail.ad.cmltd.net.au> aaah, cool! :) that would be good. I have always ended up using freewheel as the original MS fix required a registry change, which is impossible on those locked down corporate PCs. The beauty of freewheel is you can run it from anywhere (like your personal network drive for example) and it still works. Anything that needs to be registered or put in a system folder is usually useless as those OS areas are blocked to many users at work. darryl. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Dan Waters Sent: Wednesday, 3 September 2008 11:39 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Mouse Wheel Scrolling in the Code Window Hi Darryl, I'm not pounding my chest for MS, but IntelliType Pro 6.2 is free and it's just an installation. No hoops - honest! Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darryl Collins Sent: Tuesday, September 02, 2008 8:25 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Mouse Wheel Scrolling in the Code Window I suggest you install freewheel. It is free, been around for ever and works very well. MS also have a fix, but you need to jump thru a few hoops and have admin rights as well. Freewheel you don't. http://www.excelyourbusiness.com.au/VBE_Issues.htm#Mouse%20scroll%20wheel hth Darryl -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Dan Waters Sent: Tuesday, 2 September 2008 11:43 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Mouse Wheel Scrolling in the Code Window A couple of weeks ago I found out that the latest version of IntelliType Pro (6.2) does support mouse wheel scrolling in the code window for Access 2003. IntelliType Pro 6.1 did NOT support mouse wheel scrolling. IntelliType Pro 6.2 can be downloaded from multiple sites. Dan -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/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 email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. From bryan.fitzpatrick at cyberone.com.au Tue Sep 2 22:40:29 2008 From: bryan.fitzpatrick at cyberone.com.au (Bryan Fitzpatrick) Date: Wed, 03 Sep 2008 13:40:29 +1000 Subject: [AccessD] Mouse Wheel Scrolling in the Code Window In-Reply-To: <57E6E6CA42105A48B977303A2CDC2720076DA26E9C@WPEXCH22.retail.ad.cmltd.net.au> References: <57E6E6CA42105A48B977303A2CDC2720076DA26E9C@WPEXCH22.retail.ad.cmltd.net.au> Message-ID: <48BE072D.7020007@cyberone.com.au> Another option is Logitech mouse drivers. I have found that they have allowed scrolling in the VBE windows for several years now. Cheers Bryan Darryl Collins wrote: > I suggest you install freewheel. It is free, been around for ever and works very well. MS also have a fix, but you need to jump thru a few hoops and have admin rights as well. Freewheel you don't. > > http://www.excelyourbusiness.com.au/VBE_Issues.htm#Mouse%20scroll%20wheel > > hth > > Darryl > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Dan Waters > Sent: Tuesday, 2 September 2008 11:43 PM > To: 'Access Developers discussion and problem solving' > Subject: [AccessD] Mouse Wheel Scrolling in the Code Window > > > A couple of weeks ago I found out that the latest version of IntelliType Pro > (6.2) does support mouse wheel scrolling in the code window for Access 2003. > IntelliType Pro 6.1 did NOT support mouse wheel scrolling. > > IntelliType Pro 6.2 can be downloaded from multiple sites. > > Dan > > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > This email and any attachments may contain privileged and confidential information > and are intended for the named addressee only. If you have received this e-mail in > error, please notify the sender and delete this e-mail immediately. Any > confidentiality, privilege or copyright is not waived or lost because this e-mail > has been sent to you in error. It is your responsibility to check this e-mail and > any attachments for viruses. No warranty is made that this material is free from > computer virus or any other defect or error. Any loss/damage incurred by using this > material is not the sender's responsibility. The sender's entire liability will be > limited to resupplying the material. > > > From cfoust at infostatsystems.com Wed Sep 3 10:05:12 2008 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Wed, 3 Sep 2008 08:05:12 -0700 Subject: [AccessD] OT: Word help In-Reply-To: <57E6E6CA42105A48B977303A2CDC2720076DA26E9D@WPEXCH22.retail.ad.cmltd.net.au> References: <8786a4c00809021553q1ea5fe43reb2aac3dc0edfbf2@mail.gmail.com> <57E6E6CA42105A48B977303A2CDC2720076DA26E9D@WPEXCH22.retail.ad.cmltd.net.au> Message-ID: Don't blame Word itself, Darryl. The 2007 implementation of Office was evidently designed to reduce experienced, fully competent computer users to a state of complete despair and utter confusion. Things you need are on non-intuitive context menus instead of on the ribbon. The ribbon isn't there when you need it because *IT'S* context-sensitive. All the essential basics are hiding behind something that doesn't even look like a button. And the whole thing makes my head ache. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darryl Collins Sent: Tuesday, September 02, 2008 6:29 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Word help My gut feel on this David, it sounds much more like 'bad UI design' than 'dumb user'. Glad I am not alone in loathing MS Word. I only use it when I am desperate... -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of David McAfee Sent: Wednesday, 3 September 2008 8:53 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT: Word help Boy, don't I feel stupid. I was looking through menus and help. And it was just a toggle button. lol Thanks! D On Tue, Sep 2, 2008 at 3:09 PM, Susan Harkins wrote: > It's in a bad spot if you ask me. I do it all the time and it annoys me. > > Susan H. > > > > I've done that too. As Susan has said, hit the button again and it > > will switch back. > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/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 email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From davidmcafee at gmail.com Wed Sep 3 13:37:48 2008 From: davidmcafee at gmail.com (David McAfee) Date: Wed, 3 Sep 2008 11:37:48 -0700 Subject: [AccessD] OT: Word help In-Reply-To: References: <8786a4c00809021553q1ea5fe43reb2aac3dc0edfbf2@mail.gmail.com> <57E6E6CA42105A48B977303A2CDC2720076DA26E9D@WPEXCH22.retail.ad.cmltd.net.au> Message-ID: <8786a4c00809031137u480efce7s13eec0830c983877@mail.gmail.com> Don't get me started on the ribbon! I was testing on a box using 2007 and that thing 1. takes up a lot of real estate. 2. I could not figure out how to switch windows (Alt -W, pic a form or report you want to switch to) 3. When a report opened up, you have to click close on the ribbon (I didnt see it at first), unlike forms which display an X in the upper right hand corner, Reports dont display an X in the upper right hand corner. If you close that X, the whole MDB/ADP closes. Another thing to rant about Word: (Or is it me, am I getting too old?) In all older versions of word (or notepad/Wordpad). if you type the following: Hello World Double click on the word World (or highlight the word by any other means), then proceed to type "Friend" over "World", you would overwrite the word with the new text. In Word 2003 & 2007, it seems to insert your new text just before the W then shift the word "World" to the right with each character that you type. Why did they change the way that this has worked since the stone age? David On Wed, Sep 3, 2008 at 8:05 AM, Charlotte Foust wrote: > Don't blame Word itself, Darryl. The 2007 implementation of Office was > evidently designed to reduce experienced, fully competent computer users > to a state of complete despair and utter confusion. Things you need are > on non-intuitive context menus instead of on the ribbon. The ribbon > isn't there when you need it because *IT'S* context-sensitive. All the > essential basics are hiding behind something that doesn't even look like > a button. And the whole thing makes my head ache. > > Charlotte Foust > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darryl > Collins > Sent: Tuesday, September 02, 2008 6:29 PM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] OT: Word help > > > My gut feel on this David, it sounds much more like 'bad UI design' than > 'dumb user'. Glad I am not alone in loathing MS Word. I only use it > when I am desperate... > > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of David McAfee > Sent: Wednesday, 3 September 2008 8:53 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] OT: Word help > > > Boy, don't I feel stupid. I was looking through menus and help. > > And it was just a toggle button. lol > > Thanks! > > D > > On Tue, Sep 2, 2008 at 3:09 PM, Susan Harkins > wrote: > > > It's in a bad spot if you ask me. I do it all the time and it annoys > me. > > > > Susan H. > > > > > > > I've done that too. As Susan has said, hit the button again and it > > > will switch back. > > > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/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 email and any attachments may contain privileged and confidential > information and are intended for the named addressee only. If you have > received this e-mail in error, please notify the sender and delete this > e-mail immediately. Any confidentiality, privilege or copyright is not > waived or lost because this e-mail has been sent to you in error. It is > your responsibility to check this e-mail and any attachments for > viruses. No warranty is made that this material is free from computer > virus or any other defect or error. Any loss/damage incurred by using > this material is not the sender's responsibility. The sender's entire > liability will be limited to resupplying the material. > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/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 ssharkins at gmail.com Wed Sep 3 13:42:15 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Wed, 3 Sep 2008 14:42:15 -0400 Subject: [AccessD] OT: Word help References: <8786a4c00809021553q1ea5fe43reb2aac3dc0edfbf2@mail.gmail.com><57E6E6CA42105A48B977303A2CDC2720076DA26E9D@WPEXCH22.retail.ad.cmltd.net.au> <8786a4c00809031137u480efce7s13eec0830c983877@mail.gmail.com> Message-ID: <03cc01c90df4$cb7f2ae0$2f8601c7@SusanOne> > I was testing on a box using 2007 and that thing > 1. takes up a lot of real estate. =======Double-click a tab to toggle it on and off. Susan H. From wdhindman at dejpolsystems.com Wed Sep 3 14:14:37 2008 From: wdhindman at dejpolsystems.com (William Hindman) Date: Wed, 3 Sep 2008 15:14:37 -0400 Subject: [AccessD] OT: Word help References: <8786a4c00809021553q1ea5fe43reb2aac3dc0edfbf2@mail.gmail.com><57E6E6CA42105A48B977303A2CDC2720076DA26E9D@WPEXCH22.retail.ad.cmltd.net.au> Message-ID: ...that would be hilarious if it didn't make my head ache as well :( William -------------------------------------------------- From: "Charlotte Foust" Sent: Wednesday, September 03, 2008 11:05 AM To: "Access Developers discussion and problem solving" Subject: Re: [AccessD] OT: Word help > Don't blame Word itself, Darryl. The 2007 implementation of Office was > evidently designed to reduce experienced, fully competent computer users > to a state of complete despair and utter confusion. Things you need are > on non-intuitive context menus instead of on the ribbon. The ribbon > isn't there when you need it because *IT'S* context-sensitive. All the > essential basics are hiding behind something that doesn't even look like > a button. And the whole thing makes my head ache. > > Charlotte Foust > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darryl > Collins > Sent: Tuesday, September 02, 2008 6:29 PM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] OT: Word help > > > My gut feel on this David, it sounds much more like 'bad UI design' than > 'dumb user'. Glad I am not alone in loathing MS Word. I only use it > when I am desperate... > > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of David McAfee > Sent: Wednesday, 3 September 2008 8:53 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] OT: Word help > > > Boy, don't I feel stupid. I was looking through menus and help. > > And it was just a toggle button. lol > > Thanks! > > D > > On Tue, Sep 2, 2008 at 3:09 PM, Susan Harkins > wrote: > >> It's in a bad spot if you ask me. I do it all the time and it annoys > me. >> >> Susan H. >> >> >> > I've done that too. As Susan has said, hit the button again and it >> > will switch back. >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/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 email and any attachments may contain privileged and confidential > information and are intended for the named addressee only. If you have > received this e-mail in error, please notify the sender and delete this > e-mail immediately. Any confidentiality, privilege or copyright is not > waived or lost because this e-mail has been sent to you in error. It is > your responsibility to check this e-mail and any attachments for > viruses. No warranty is made that this material is free from computer > virus or any other defect or error. Any loss/damage incurred by using > this material is not the sender's responsibility. The sender's entire > liability will be limited to resupplying the material. > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/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 sturner at mseco.com Wed Sep 3 16:19:02 2008 From: sturner at mseco.com (Steve Turner) Date: Wed, 3 Sep 2008 16:19:02 -0500 Subject: [AccessD] access report to pdf to email in VBA Message-ID: <31B7F3CC8CC4454F87FCBEFF82B61892020A248C@PE2850-03.mseco.com> Hello list, I searched the archives but didn't quit understand any solutions. We have an Access report written in VBA where we use acFormatSNP to write the report to a SNP file and it emails the report to each person it needs to. We were wondering if Access now had the capability to write a report to a PDF file so it could be emailed automatically as the SNP file is. We use Access 2K at the moment. This code creates the SNP report. Any suggestions? CREATE THE REPORT IN TEMPORARY FOLDER strTempReport = "C:\Temp\EmailReport.snp" DoCmd.OutputTo acOutputReport, strDocName, acFormatSNP, strTempReport, 0 DoEvents Steve A. Turner Controller Mid-South Engineering Co. Inc P.O. Box 1399 Hot Springs, AR 71902 E-Mail: sturner at mseco.com and saturner at mseco.com Phone:(501)321-2276 Fax: (501)321-4750 From mmattys at rochester.rr.com Wed Sep 3 17:28:54 2008 From: mmattys at rochester.rr.com (Eric's) Date: Wed, 3 Sep 2008 17:28:54 -0500 Subject: [AccessD] access report to pdf to email in VBA References: <31B7F3CC8CC4454F87FCBEFF82B61892020A248C@PE2850-03.mseco.com> Message-ID: Hi Steve, Use a pdf driver instead. Primo pdf is good for that - Michael R Mattys MapPoint and Database Dev www.mattysconsulting.com - ----- Original Message ----- From: "Steve Turner" To: Sent: Wednesday, September 03, 2008 4:19 PM Subject: [AccessD] access report to pdf to email in VBA > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From dw-murphy at cox.net Wed Sep 3 16:32:22 2008 From: dw-murphy at cox.net (Doug Murphy) Date: Wed, 3 Sep 2008 14:32:22 -0700 Subject: [AccessD] access report to pdf to email in VBA In-Reply-To: <31B7F3CC8CC4454F87FCBEFF82B61892020A248C@PE2850-03.mseco.com> References: <31B7F3CC8CC4454F87FCBEFF82B61892020A248C@PE2850-03.mseco.com> Message-ID: <00a101c90e0c$8d22bbf0$0200a8c0@murphy3234aaf1> There is a report to pdf utility on Stephan Lebans site that can be used to create the pdf file. You can take those and email them. http://www.lebans.com/reporttopdf.htm Doug -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Turner Sent: Wednesday, September 03, 2008 2:19 PM To: accessD at databaseadvisors.com Subject: [AccessD] access report to pdf to email in VBA Hello list, I searched the archives but didn't quit understand any solutions. We have an Access report written in VBA where we use acFormatSNP to write the report to a SNP file and it emails the report to each person it needs to. We were wondering if Access now had the capability to write a report to a PDF file so it could be emailed automatically as the SNP file is. We use Access 2K at the moment. This code creates the SNP report. Any suggestions? CREATE THE REPORT IN TEMPORARY FOLDER strTempReport = "C:\Temp\EmailReport.snp" DoCmd.OutputTo acOutputReport, strDocName, acFormatSNP, strTempReport, 0 DoEvents Steve A. Turner Controller Mid-South Engineering Co. Inc P.O. Box 1399 Hot Springs, AR 71902 E-Mail: sturner at mseco.com and saturner at mseco.com Phone:(501)321-2276 Fax: (501)321-4750 From stuart at lexacorp.com.pg Wed Sep 3 17:27:50 2008 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Thu, 04 Sep 2008 08:27:50 +1000 Subject: [AccessD] OT: Word help In-Reply-To: <8786a4c00809031137u480efce7s13eec0830c983877@mail.gmail.com> References: <8786a4c00809021553q1ea5fe43reb2aac3dc0edfbf2@mail.gmail.com>, , <8786a4c00809031137u480efce7s13eec0830c983877@mail.gmail.com> Message-ID: <48BF0F66.2332.76320B63@stuart.lexacorp.com.pg> You've just got an option set wrong. In 2003: Select Tools-Options-Edit-Typing replaces selection. Don't ask me where to find it in 2007 :-( On 3 Sep 2008 at 11:37, David McAfee wrote: > > In Word 2003 & 2007, it seems to insert your new text just before the W then > shift the word "World" to the right with each character that you type. > Why did they change the way that this has worked since the stone age? > -- Stuart Mclachlan From stuart at lexacorp.com.pg Wed Sep 3 17:37:13 2008 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Thu, 04 Sep 2008 08:37:13 +1000 Subject: [AccessD] access report to pdf to email in VBA In-Reply-To: References: <31B7F3CC8CC4454F87FCBEFF82B61892020A248C@PE2850-03.mseco.com>, Message-ID: <48BF1199.16626.763AA191@stuart.lexacorp.com.pg> I've recently been using Polestar which is both print to PDF and print to image. http://www.polestarsoft.com/ Polestar Virtual Printer is a combination of virtual PDF printer and virtual image printer, which enables you to convert VSD, Word, Excel, PowerPoint, PDF, AutoCAD, Photoshop and much more printable document types into PDF, TIFF, JPEG, GIF, PNG, BMP, or EMF with high quality. It is a completely FREE software with no watermarks and no popup web ads! One very nice feature: # Automatic Output is to generate PDFs and images with unique name and specific path. If you select this, each file you print is named with a pre-defined prefix and a datetime stamp. It means that you can do all sorts of things programatically in VBA with the file after it is printed. On 3 Sep 2008 at 17:28, Eric's wrote: > Hi Steve, > > Use a pdf driver instead. > Primo pdf is good for that > > - > Michael R Mattys > MapPoint and Database Dev > www.mattysconsulting.com > - > ----- Original Message ----- > From: "Steve Turner" > To: > Sent: Wednesday, September 03, 2008 4:19 PM > Subject: [AccessD] access report to pdf to email in VBA > > > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- Stuart Mclachlan From davidmcafee at gmail.com Wed Sep 3 18:17:19 2008 From: davidmcafee at gmail.com (David McAfee) Date: Wed, 3 Sep 2008 16:17:19 -0700 Subject: [AccessD] OT: Word help In-Reply-To: <48BF0F66.2332.76320B63@stuart.lexacorp.com.pg> References: <8786a4c00809021553q1ea5fe43reb2aac3dc0edfbf2@mail.gmail.com> <8786a4c00809031137u480efce7s13eec0830c983877@mail.gmail.com> <48BF0F66.2332.76320B63@stuart.lexacorp.com.pg> Message-ID: <8786a4c00809031617y54dbb115va2d71b6acf125fb0@mail.gmail.com> Wow, three different computers were set up like that at work, I thought that was just how W03 operates. Why would they even have that option? Isn't that what the Insert key is for? :) Thanks for the tip Stuart! On Wed, Sep 3, 2008 at 3:27 PM, Stuart McLachlan wrote: > You've just got an option set wrong. > > In 2003: > Select Tools-Options-Edit-Typing replaces selection. > > Don't ask me where to find it in 2007 :-( > > On 3 Sep 2008 at 11:37, David McAfee wrote: > > > > > In Word 2003 & 2007, it seems to insert your new text just before the W > then > > shift the word "World" to the right with each character that you type. > > Why did they change the way that this has worked since the stone age? > > > -- > Stuart Mclachlan > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From cfoust at infostatsystems.com Wed Sep 3 18:28:34 2008 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Wed, 3 Sep 2008 16:28:34 -0700 Subject: [AccessD] OT: Word help In-Reply-To: <8786a4c00809031617y54dbb115va2d71b6acf125fb0@mail.gmail.com> References: <8786a4c00809021553q1ea5fe43reb2aac3dc0edfbf2@mail.gmail.com><8786a4c00809031137u480efce7s13eec0830c983877@mail.gmail.com><48BF0F66.2332.76320B63@stuart.lexacorp.com.pg> <8786a4c00809031617y54dbb115va2d71b6acf125fb0@mail.gmail.com> Message-ID: Didn't that option exist in previous versions? I seem to remember it. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David McAfee Sent: Wednesday, September 03, 2008 4:17 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT: Word help Wow, three different computers were set up like that at work, I thought that was just how W03 operates. Why would they even have that option? Isn't that what the Insert key is for? :) Thanks for the tip Stuart! On Wed, Sep 3, 2008 at 3:27 PM, Stuart McLachlan wrote: > You've just got an option set wrong. > > In 2003: > Select Tools-Options-Edit-Typing replaces selection. > > Don't ask me where to find it in 2007 :-( > > On 3 Sep 2008 at 11:37, David McAfee wrote: > > > > > In Word 2003 & 2007, it seems to insert your new text just before > > the W > then > > shift the word "World" to the right with each character that you type. > > Why did they change the way that this has worked since the stone age? > > > -- > Stuart Mclachlan > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/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 Darryl.Collins at coles.com.au Thu Sep 4 00:27:32 2008 From: Darryl.Collins at coles.com.au (Darryl Collins) Date: Thu, 4 Sep 2008 15:27:32 +1000 Subject: [AccessD] Counting Records on Form (when Nav buttons are turned off) In-Reply-To: Message-ID: <57E6E6CA42105A48B977303A2CDC2720076DA26EB4@WPEXCH22.retail.ad.cmltd.net.au> Hi All, Am sure this is easy (which usually means it turns out to be absurdly complicated!!). I have my own custom Nav button on the bottom of a form, but it would be nice to have: "Record x of y" showing somewhere down the bottom like it does when you have the built in Nav buttons visible. I tried to search for this, but I must be getting the syntax wrong (or the words are too common - not really getting the results I need). Any pointers? Cheers Darryl This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. From miscellany at mvps.org Thu Sep 4 01:21:33 2008 From: miscellany at mvps.org (Steve Schapel) Date: Thu, 04 Sep 2008 18:21:33 +1200 Subject: [AccessD] Counting Records on Form (when Nav buttons are turned off) In-Reply-To: <57E6E6CA42105A48B977303A2CDC2720076DA26EB4@WPEXCH22.retail.ad.cmltd.net.au> References: <57E6E6CA42105A48B977303A2CDC2720076DA26EB4@WPEXCH22.retail.ad.cmltd.net.au> Message-ID: <48BF7E6D.6010906@mvps.org> Hi Darryl, In the Control Source of an unbound textbox: =[CurrentRecord] & " of " & RecordsetClone.RecordCount ... or variations on the theme. Regards Steve Darryl Collins wrote: > Hi All, > > Am sure this is easy (which usually means it turns out to be absurdly > complicated!!). I have my own custom Nav button on the bottom of a > form, but it would be nice to have: "Record x of y" showing somewhere > down the bottom like it does when you have the built in Nav buttons > visible. > > I tried to search for this, but I must be getting the syntax wrong > (or the words are too common - not really getting the results I > need). From Gustav at cactus.dk Thu Sep 4 01:28:39 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Thu, 04 Sep 2008 08:28:39 +0200 Subject: [AccessD] OT: Word help Message-ID: Hi Stuart et al Thanks for that tip - I thought that was a new non-feature to please I don't know who. In 2007, pick Office Butt, Word options, Advanced, mark checkbox 8 "Use the INS key to switch type-over mode on and off" (from my localized version) and checkbox 8.1 "Use type-over". /gustav >>> stuart at lexacorp.com.pg 04-09-2008 00:27 >>> You've just got an option set wrong. In 2003: Select Tools-Options-Edit-Typing replaces selection. Don't ask me where to find it in 2007 :-( On 3 Sep 2008 at 11:37, David McAfee wrote: > > In Word 2003 & 2007, it seems to insert your new text just before the W then > shift the word "World" to the right with each character that you type. > Why did they change the way that this has worked since the stone age? > -- Stuart Mclachlan From stuart at lexacorp.com.pg Thu Sep 4 01:32:59 2008 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Thu, 04 Sep 2008 16:32:59 +1000 Subject: [AccessD] Counting Records on Form (when Nav buttons are turned off) In-Reply-To: <57E6E6CA42105A48B977303A2CDC2720076DA26EB4@WPEXCH22.retail.ad.cmltd.net.au> References: , <57E6E6CA42105A48B977303A2CDC2720076DA26EB4@WPEXCH22.retail.ad.cmltd.net.au> Message-ID: <48BF811B.22160.77EE335D@stuart.lexacorp.com.pg> One way:- Two text boxes in the form's Footer: txtCurrent and txtCount Set txtCount's control source to "=Count([ID])" where [ID] is a field in the forms recordset txtCurrent is unbound. Insert the following in the form's On_Current event: Private Sub Form_Current() txtCurrent = Me.CurrentRecord End Sub On 4 Sep 2008 at 15:27, Darryl Collins wrote: > Hi All, > > Am sure this is easy (which usually means it turns out to be absurdly complicated!!). I have my own custom Nav button on the bottom of a form, but it would be nice to have: "Record x of y" showing somewhere down the bottom like it does when you have the built in Nav buttons visible. > > I tried to search for this, but I must be getting the syntax wrong (or the words are too common - not really getting the results I need). > > Any pointers? > > Cheers > Darryl > > This email and any attachments may contain privileged and confidential information > and are intended for the named addressee only. If you have received this e-mail in > error, please notify the sender and delete this e-mail immediately. Any > confidentiality, privilege or copyright is not waived or lost because this e-mail > has been sent to you in error. It is your responsibility to check this e-mail and > any attachments for viruses. No warranty is made that this material is free from > computer virus or any other defect or error. Any loss/damage incurred by using this > material is not the sender's responsibility. The sender's entire liability will be > limited to resupplying the material. > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- Stuart Mclachlan From Darryl.Collins at coles.com.au Thu Sep 4 01:33:36 2008 From: Darryl.Collins at coles.com.au (Darryl Collins) Date: Thu, 4 Sep 2008 16:33:36 +1000 Subject: [AccessD] Counting Records on Form (when Nav buttons are turned off) In-Reply-To: <48BF7E6D.6010906@mvps.org> Message-ID: <57E6E6CA42105A48B977303A2CDC2720076DA26EB6@WPEXCH22.retail.ad.cmltd.net.au> Steve, Many thanks, that works great once I get the form to requery the text box upon "On Current". Adds a bit of overhead, but seems to be acceptable. cheers Darryl. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Steve Schapel Sent: Thursday, 4 September 2008 4:22 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Counting Records on Form (when Nav buttons are turned off) Hi Darryl, In the Control Source of an unbound textbox: =[CurrentRecord] & " of " & RecordsetClone.RecordCount ... or variations on the theme. Regards Steve Darryl Collins wrote: > Hi All, > > Am sure this is easy (which usually means it turns out to be absurdly > complicated!!). I have my own custom Nav button on the bottom of a > form, but it would be nice to have: "Record x of y" showing somewhere > down the bottom like it does when you have the built in Nav buttons > visible. > > I tried to search for this, but I must be getting the syntax wrong > (or the words are too common - not really getting the results I > need). -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. From miscellany at mvps.org Thu Sep 4 02:59:21 2008 From: miscellany at mvps.org (Steve Schapel) Date: Thu, 04 Sep 2008 19:59:21 +1200 Subject: [AccessD] Counting Records on Form (when Nav buttons are turned off) In-Reply-To: <57E6E6CA42105A48B977303A2CDC2720076DA26EB6@WPEXCH22.retail.ad.cmltd.net.au> References: <57E6E6CA42105A48B977303A2CDC2720076DA26EB6@WPEXCH22.retail.ad.cmltd.net.au> Message-ID: <48BF9559.4010500@mvps.org> Hi Darryl, I did not find any such need. I am not sure under what circumstances you would need to requery. But in any case, if you need to do something to force the update of the display from record to record, I would expect that Me.Recalc would do the job more effectively than a Requery anywhere. Regards Steve Darryl Collins wrote: > Steve, > > Many thanks, that works great once I get the form to requery the text box upon "On Current". Adds a bit of overhead, but seems to be acceptable. > From sturner at mseco.com Thu Sep 4 09:15:39 2008 From: sturner at mseco.com (Steve Turner) Date: Thu, 4 Sep 2008 09:15:39 -0500 Subject: [AccessD] access report to pdf to email in VBA In-Reply-To: <48BF1199.16626.763AA191@stuart.lexacorp.com.pg> References: <31B7F3CC8CC4454F87FCBEFF82B61892020A248C@PE2850-03.mseco.com>, <48BF1199.16626.763AA191@stuart.lexacorp.com.pg> Message-ID: <31B7F3CC8CC4454F87FCBEFF82B61892020A24D2@PE2850-03.mseco.com> Thanks a bunch, We'll try and see what we come up with. steve -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stuart McLachlan Sent: Wednesday, September 03, 2008 5:37 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] access report to pdf to email in VBA I've recently been using Polestar which is both print to PDF and print to image. http://www.polestarsoft.com/ Polestar Virtual Printer is a combination of virtual PDF printer and virtual image printer, which enables you to convert VSD, Word, Excel, PowerPoint, PDF, AutoCAD, Photoshop and much more printable document types into PDF, TIFF, JPEG, GIF, PNG, BMP, or EMF with high quality. It is a completely FREE software with no watermarks and no popup web ads! One very nice feature: # Automatic Output is to generate PDFs and images with unique name and specific path. If you select this, each file you print is named with a pre-defined prefix and a datetime stamp. It means that you can do all sorts of things programatically in VBA with the file after it is printed. On 3 Sep 2008 at 17:28, Eric's wrote: > Hi Steve, > > Use a pdf driver instead. > Primo pdf is good for that > > - > Michael R Mattys > MapPoint and Database Dev > www.mattysconsulting.com > - > ----- Original Message ----- > From: "Steve Turner" > To: > Sent: Wednesday, September 03, 2008 4:19 PM > Subject: [AccessD] access report to pdf to email in VBA > > > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- Stuart Mclachlan -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From dwaters at usinternet.com Thu Sep 4 10:05:57 2008 From: dwaters at usinternet.com (Dan Waters) Date: Thu, 4 Sep 2008 10:05:57 -0500 Subject: [AccessD] Counting Records on Form (when Nav buttons are turned off) In-Reply-To: <57E6E6CA42105A48B977303A2CDC2720076DA26EB4@WPEXCH22.retail.ad.cmltd.net.au> References: <57E6E6CA42105A48B977303A2CDC2720076DA26EB4@WPEXCH22.retail.ad.cmltd.net.au> Message-ID: <4C6485D95901407C8FBFFE69FEF9751F@danwaters> Hi Darryl, I've use this method on continuous forms for several years - requerying or refreshing is not needed. First, create a public function like this: -------------------------------------------------- Public Function RowNumber(frm As Form) As Variant On Error GoTo EH '-- This is used to number records on a continuous form If frm.Recordset.RecordCount = 0 Then '-- This shows the number 1 for the first record _ even if there are no records yet. RowNumber = 1 Else frm.RecordsetClone.Bookmark = frm.Bookmark RowNumber = frm.RecordsetClone.AbsolutePosition + 1 End If Exit Function EH: Application.Echo True GlngErrNumber = Err.Number GstgErrDescription = Err.Description Select Case GlngErrNumber Case 3021 '-- blank row Exit Function Case 7951 '-- removed table behind form while deleting a record Exit Function Case Else Call GlobalErrors() End Select End Function -------------------------------------------------- Next, in an unbound textbox, enter the following: -------------------------------------------------- =IIf([txtRecordID] Is Null,"",RowNumber([Form])) -------------------------------------------------- Now, as you scroll up and down in the continuous form, the textbox will display the correct record number. HTH, Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darryl Collins Sent: Thursday, September 04, 2008 12:28 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Counting Records on Form (when Nav buttons are turned off) Hi All, Am sure this is easy (which usually means it turns out to be absurdly complicated!!). I have my own custom Nav button on the bottom of a form, but it would be nice to have: "Record x of y" showing somewhere down the bottom like it does when you have the built in Nav buttons visible. I tried to search for this, but I must be getting the syntax wrong (or the words are too common - not really getting the results I need). Any pointers? Cheers Darryl This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Darryl.Collins at coles.com.au Thu Sep 4 19:14:20 2008 From: Darryl.Collins at coles.com.au (Darryl Collins) Date: Fri, 5 Sep 2008 10:14:20 +1000 Subject: [AccessD] Counting Records on Form (when Nav buttons are turned off) In-Reply-To: <4C6485D95901407C8FBFFE69FEF9751F@danwaters> Message-ID: <57E6E6CA42105A48B977303A2CDC2720076DA26EBE@WPEXCH22.retail.ad.cmltd.net.au> Cool! Thanks for that Dan. Will have a play with this for sure. regards Darryl -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Dan Waters Sent: Friday, 5 September 2008 1:06 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Counting Records on Form (when Nav buttons are turned off) Hi Darryl, I've use this method on continuous forms for several years - requerying or refreshing is not needed. First, create a public function like this: -------------------------------------------------- Public Function RowNumber(frm As Form) As Variant On Error GoTo EH '-- This is used to number records on a continuous form If frm.Recordset.RecordCount = 0 Then '-- This shows the number 1 for the first record _ even if there are no records yet. RowNumber = 1 Else frm.RecordsetClone.Bookmark = frm.Bookmark RowNumber = frm.RecordsetClone.AbsolutePosition + 1 End If Exit Function EH: Application.Echo True GlngErrNumber = Err.Number GstgErrDescription = Err.Description Select Case GlngErrNumber Case 3021 '-- blank row Exit Function Case 7951 '-- removed table behind form while deleting a record Exit Function Case Else Call GlobalErrors() End Select End Function -------------------------------------------------- Next, in an unbound textbox, enter the following: -------------------------------------------------- =IIf([txtRecordID] Is Null,"",RowNumber([Form])) -------------------------------------------------- Now, as you scroll up and down in the continuous form, the textbox will display the correct record number. HTH, Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darryl Collins Sent: Thursday, September 04, 2008 12:28 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Counting Records on Form (when Nav buttons are turned off) Hi All, Am sure this is easy (which usually means it turns out to be absurdly complicated!!). I have my own custom Nav button on the bottom of a form, but it would be nice to have: "Record x of y" showing somewhere down the bottom like it does when you have the built in Nav buttons visible. I tried to search for this, but I must be getting the syntax wrong (or the words are too common - not really getting the results I need). Any pointers? Cheers Darryl This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/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 email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. From kp at sdsonline.net Thu Sep 4 19:51:16 2008 From: kp at sdsonline.net (Kath Pelletti) Date: Fri, 5 Sep 2008 10:51:16 +1000 Subject: [AccessD] Next, Prev Message-ID: <004c01c90ef1$819ae8d0$6501a8c0@DELLAPTOP> Must be the week for working on Next, Prev functions on the list............ This is a bit of an odd situation, but what I have a continuous form which displays names and ID's. It's source is a query which is sorted by the Name field. In another area of the application, I need to be able to know the ID of the 'next' rec in that continuous form. eg. Continuous form shows: Name ID AAB 90312 AAC 23 AAD 845 AAE 32 If I have a form for AAB open, I need to get the ID of the next item AAC, which is 23. Maybe I am making this too hard, but the fact that the list is alphabetically sorted has me thrown............... tia Kath ______________________________________ Kath Pelletti Software Design and Solutions Pty Ltd kp at sdsonline.net From ssharkins at gmail.com Thu Sep 4 19:58:51 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Thu, 4 Sep 2008 20:58:51 -0400 Subject: [AccessD] Off Topic -- Re: Next, Prev References: <004c01c90ef1$819ae8d0$6501a8c0@DELLAPTOP> Message-ID: <010601c90ef2$9369d1b0$2f8601c7@SusanOne> Oh my, Oh my... I do apologize, but did you guys catch our name in Kath's header?????? "Normal List" --- AHAHAHAHAHAHAHAHAHAHAAHAHAH AHAHAHAHAHAHAHAHAHHAHAHAAH Okay, I'm sorry, but there's not a normal one in the bunch. :) Kath, please, never, never change that. :) Carry on... Susan H. > Must be the week for working on Next, Prev functions on the > list............ From kp at sdsonline.net Thu Sep 4 20:02:32 2008 From: kp at sdsonline.net (Kath Pelletti) Date: Fri, 5 Sep 2008 11:02:32 +1000 Subject: [AccessD] Off Topic -- Re: Next, Prev References: <004c01c90ef1$819ae8d0$6501a8c0@DELLAPTOP> <010601c90ef2$9369d1b0$2f8601c7@SusanOne> Message-ID: <006801c90ef3$14564650$6501a8c0@DELLAPTOP> .....who wants to be normal anyway?? ;) ----- Original Message ----- From: "Susan Harkins" To: "Access Developers discussion and problem solving" Sent: Friday, September 05, 2008 10:58 AM Subject: [AccessD] Off Topic -- Re: Next, Prev > Oh my, Oh my... I do apologize, but did you guys catch our name in Kath's > header?????? "Normal List" --- AHAHAHAHAHAHAHAHAHAHAAHAHAH > AHAHAHAHAHAHAHAHAHHAHAHAAH > > Okay, I'm sorry, but there's not a normal one in the bunch. :) Kath, > please, > never, never change that. :) > > Carry on... > > Susan H. > > >> Must be the week for working on Next, Prev functions on the >> list............ > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From kp at sdsonline.net Thu Sep 4 20:36:14 2008 From: kp at sdsonline.net (Kath Pelletti) Date: Fri, 5 Sep 2008 11:36:14 +1000 Subject: [AccessD] Next, Prev References: <004c01c90ef1$819ae8d0$6501a8c0@DELLAPTOP> Message-ID: <007a01c90ef7$c9bd09d0$6501a8c0@DELLAPTOP> Actually, I may be able to work this out if I can add a sequential number to each record in my name-sorted query. Can anyone remind me how to do that? ----- Original Message ----- From: "Kath Pelletti" To: "Access D Normal List" Sent: Friday, September 05, 2008 10:51 AM Subject: [AccessD] Next, Prev > Must be the week for working on Next, Prev functions on the > list............ > > This is a bit of an odd situation, but what I have a continuous form which > displays names and ID's. It's source is a query which is sorted by the > Name field. > > In another area of the application, I need to be able to know the ID of > the 'next' rec in that continuous form. > > eg. Continuous form shows: > Name ID > AAB 90312 > AAC 23 > AAD 845 > AAE 32 > > If I have a form for AAB open, I need to get the ID of the next item AAC, > which is 23. > > Maybe I am making this too hard, but the fact that the list is > alphabetically sorted has me thrown............... > > tia > Kath > > ______________________________________ > Kath Pelletti > Software Design and Solutions Pty Ltd > kp at sdsonline.net > -- > 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 Sep 4 21:01:15 2008 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Fri, 05 Sep 2008 12:01:15 +1000 Subject: [AccessD] Next, Prev In-Reply-To: <004c01c90ef1$819ae8d0$6501a8c0@DELLAPTOP> References: <004c01c90ef1$819ae8d0$6501a8c0@DELLAPTOP> Message-ID: <48C092EB.8625.7C1BCACB@stuart.lexacorp.com.pg> NextItemID = Dlookup("ID","qryMyFormQuery","[Name] > " & [Name]) Incidentally, it's very bad practice to use "Name" as a field name - it can bite you in all sorts of ways. On 5 Sep 2008 at 10:51, Kath Pelletti wrote: > Must be the week for working on Next, Prev functions on the list............ > > This is a bit of an odd situation, but what I have a continuous form which displays names and ID's. It's source is a query which is sorted by the Name field. > > In another area of the application, I need to be able to know the ID of the 'next' rec in that continuous form. > > eg. Continuous form shows: > Name ID > AAB 90312 > AAC 23 > AAD 845 > AAE 32 > > If I have a form for AAB open, I need to get the ID of the next item AAC, which is 23. > > Maybe I am making this too hard, but the fact that the list is alphabetically sorted has me thrown............... > > tia > Kath > > ______________________________________ > Kath Pelletti > Software Design and Solutions Pty Ltd > kp at sdsonline.net > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- Stuart Mclachlan From kp at sdsonline.net Thu Sep 4 21:12:40 2008 From: kp at sdsonline.net (Kath Pelletti) Date: Fri, 5 Sep 2008 12:12:40 +1000 Subject: [AccessD] Next, Prev References: <004c01c90ef1$819ae8d0$6501a8c0@DELLAPTOP> <48C092EB.8625.7C1BCACB@stuart.lexacorp.com.pg> Message-ID: <009f01c90efc$e0685090$6501a8c0@DELLAPTOP> Thx Stuart - and no, I haven't really used 'Name' as a field name - just trying to keep my message simple to the list. kath ----- Original Message ----- From: "Stuart McLachlan" To: "Access Developers discussion and problem solving" Sent: Friday, September 05, 2008 12:01 PM Subject: Re: [AccessD] Next, Prev > NextItemID = > Dlookup("ID","qryMyFormQuery","[Name] > " & [Name]) > > > Incidentally, it's very bad practice to use "Name" as a field name - it > can bite you in all sorts > of ways. > > > On 5 Sep 2008 at 10:51, Kath Pelletti wrote: > >> Must be the week for working on Next, Prev functions on the >> list............ >> >> This is a bit of an odd situation, but what I have a continuous form >> which displays names and ID's. It's source is a query which is sorted by >> the Name field. >> >> In another area of the application, I need to be able to know the ID of >> the 'next' rec in that continuous form. >> >> eg. Continuous form shows: >> Name ID >> AAB 90312 >> AAC 23 >> AAD 845 >> AAE 32 >> >> If I have a form for AAB open, I need to get the ID of the next item AAC, >> which is 23. >> >> Maybe I am making this too hard, but the fact that the list is >> alphabetically sorted has me thrown............... >> >> tia >> Kath >> >> ______________________________________ >> Kath Pelletti >> Software Design and Solutions Pty Ltd >> kp at sdsonline.net >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com > > -- > Stuart Mclachlan > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From kp at sdsonline.net Thu Sep 4 21:33:33 2008 From: kp at sdsonline.net (Kath Pelletti) Date: Fri, 5 Sep 2008 12:33:33 +1000 Subject: [AccessD] Next, Prev References: <004c01c90ef1$819ae8d0$6501a8c0@DELLAPTOP> <48C092EB.8625.7C1BCACB@stuart.lexacorp.com.pg> Message-ID: <00d101c90eff$cb4a66f0$6501a8c0@DELLAPTOP> Your solution is nice and simple but think it is going to get me into all kinds of problems when I hit names (workplacenames) with strange characters and apostrophes in them. And if I use code to handle the apostrophes (replace them etc.) then the statement won't work. hhmm.. ----- Original Message ----- From: "Stuart McLachlan" To: "Access Developers discussion and problem solving" Sent: Friday, September 05, 2008 12:01 PM Subject: Re: [AccessD] Next, Prev > NextItemID = > Dlookup("ID","qryMyFormQuery","[Name] > " & [Name]) > > > Incidentally, it's very bad practice to use "Name" as a field name - it > can bite you in all sorts > of ways. > > > On 5 Sep 2008 at 10:51, Kath Pelletti wrote: > >> Must be the week for working on Next, Prev functions on the >> list............ >> >> This is a bit of an odd situation, but what I have a continuous form >> which displays names and ID's. It's source is a query which is sorted by >> the Name field. >> >> In another area of the application, I need to be able to know the ID of >> the 'next' rec in that continuous form. >> >> eg. Continuous form shows: >> Name ID >> AAB 90312 >> AAC 23 >> AAD 845 >> AAE 32 >> >> If I have a form for AAB open, I need to get the ID of the next item AAC, >> which is 23. >> >> Maybe I am making this too hard, but the fact that the list is >> alphabetically sorted has me thrown............... >> >> tia >> Kath >> >> ______________________________________ >> Kath Pelletti >> Software Design and Solutions Pty Ltd >> kp at sdsonline.net >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com > > -- > Stuart Mclachlan > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From Gustav at cactus.dk Fri Sep 5 01:37:15 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 05 Sep 2008 08:37:15 +0200 Subject: [AccessD] Next, Prev Message-ID: Hi Kath I guess you could and should use DMin without any issues: NextItemID = DMin("ID","qryMyFormQuery","[Name] > '" & [Name] & "'") It will sort "correctly", that is the default sorting of your database. If you need any other sorting the plot thickens. /gustav >>> kp at sdsonline.net 05-09-2008 04:33 >>> Your solution is nice and simple but think it is going to get me into all kinds of problems when I hit names (workplacenames) with strange characters and apostrophes in them. And if I use code to handle the apostrophes (replace them etc.) then the statement won't work. hhmm.. ----- Original Message ----- From: "Stuart McLachlan" To: "Access Developers discussion and problem solving" Sent: Friday, September 05, 2008 12:01 PM Subject: Re: [AccessD] Next, Prev > NextItemID = > Dlookup("ID","qryMyFormQuery","[Name] > " & [Name]) > > > Incidentally, it's very bad practice to use "Name" as a field name - it can bite you in all sorts > of ways. > > > On 5 Sep 2008 at 10:51, Kath Pelletti wrote: > >> Must be the week for working on Next, Prev functions on the list............ >> >> This is a bit of an odd situation, but what I have a continuous form >> which displays names and ID's. It's source is a query which is sorted by >> the Name field. >> >> In another area of the application, I need to be able to know the ID of >> the 'next' rec in that continuous form. >> >> eg. Continuous form shows: >> Name ID >> AAB 90312 >> AAC 23 >> AAD 845 >> AAE 32 >> >> If I have a form for AAB open, I need to get the ID of the next item AAC, >> which is 23. >> >> Maybe I am making this too hard, but the fact that the list is >> alphabetically sorted has me thrown............... >> >> tia >> Kath >> >> ______________________________________ >> Kath Pelletti >> Software Design and Solutions Pty Ltd >> kp at sdsonline.net From ssharkins at gmail.com Fri Sep 5 07:50:30 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Fri, 5 Sep 2008 08:50:30 -0400 Subject: [AccessD] Next, Prev References: Message-ID: <008201c90f55$fcbbe960$2f8601c7@SusanOne> And it can be slow if you're dealing with a lot of data. Susan H. > I guess you could and should use DMin without any issues: > > NextItemID = DMin("ID","qryMyFormQuery","[Name] > '" & [Name] & "'") > > It will sort "correctly", that is the default sorting of your database. If > you need any other sorting the plot thickens. From wdhindman at dejpolsystems.com Fri Sep 5 08:48:43 2008 From: wdhindman at dejpolsystems.com (William Hindman) Date: Fri, 5 Sep 2008 09:48:43 -0400 Subject: [AccessD] Next, Prev References: <008201c90f55$fcbbe960$2f8601c7@SusanOne> Message-ID: <2070C085578D40BDB5B90CA10E192217@jislaptopdev> ...and by a "lot" of data you don't mean a LOT of data ...ime DMin is slow even on a 10k record set ...I use Trevor Best's replacement module functions which are much faster and work on everything from 97 to A2k3. William -------------------------------------------------- From: "Susan Harkins" Sent: Friday, September 05, 2008 8:50 AM To: "Access Developers discussion and problem solving" Subject: Re: [AccessD] Next, Prev > And it can be slow if you're dealing with a lot of data. > > Susan H. > >> I guess you could and should use DMin without any issues: >> >> NextItemID = DMin("ID","qryMyFormQuery","[Name] > '" & [Name] & "'") >> >> It will sort "correctly", that is the default sorting of your database. >> If >> you need any other sorting the plot thickens. > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From jimdettman at verizon.net Fri Sep 5 09:04:25 2008 From: jimdettman at verizon.net (Jim Dettman) Date: Fri, 05 Sep 2008 10:04:25 -0400 Subject: [AccessD] Next, Prev In-Reply-To: <2070C085578D40BDB5B90CA10E192217@jislaptopdev> References: <008201c90f55$fcbbe960$2f8601c7@SusanOne> <2070C085578D40BDB5B90CA10E192217@jislaptopdev> Message-ID: <003001c90f60$4ed02270$8abea8c0@XPS> It's a bit of a myth that Domain functions are slow. An article ran in Smart Access about 7 or 8 yeas ago that debunked this. Domain functions can be as fast as or faster then comparable DAO methods. If your looking for the ultimate in performance, you should test both ways, otherwise use what's most convenient for you. Jim. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of William Hindman Sent: Friday, September 05, 2008 9:49 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Next, Prev ...and by a "lot" of data you don't mean a LOT of data ...ime DMin is slow even on a 10k record set ...I use Trevor Best's replacement module functions which are much faster and work on everything from 97 to A2k3. William -------------------------------------------------- From: "Susan Harkins" Sent: Friday, September 05, 2008 8:50 AM To: "Access Developers discussion and problem solving" Subject: Re: [AccessD] Next, Prev > And it can be slow if you're dealing with a lot of data. > > Susan H. > >> I guess you could and should use DMin without any issues: >> >> NextItemID = DMin("ID","qryMyFormQuery","[Name] > '" & [Name] & "'") >> >> It will sort "correctly", that is the default sorting of your database. >> If >> you need any other sorting the plot thickens. > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/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 Sep 5 09:17:27 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 05 Sep 2008 16:17:27 +0200 Subject: [AccessD] Next, Prev Message-ID: Hi Jim That is pretty much my experience too. /gustav >>> jimdettman at verizon.net 05-09-2008 16:04 >>> It's a bit of a myth that Domain functions are slow. .. From ssharkins at gmail.com Fri Sep 5 09:29:45 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Fri, 5 Sep 2008 10:29:45 -0400 Subject: [AccessD] Next, Prev References: Message-ID: <01e901c90f63$da548180$2f8601c7@SusanOne> I've never used one that didn't make me wish I hadn't -- so Gustav and Jim -- share the secret of making them performance friendly???? Susan H. > Hi Jim > > That is pretty much my experience too. > > /gustav > > > It's a bit of a myth that Domain functions are slow. .. From Gustav at cactus.dk Fri Sep 5 09:50:15 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 05 Sep 2008 16:50:15 +0200 Subject: [AccessD] Next, Prev Message-ID: Hi Susan No secrets except for an index but that is common sense. Some tests are found here: http://www.access-programmers.co.uk/forums/showthread.php?t=79622 As you can see, no basis for the usual statements like "the domain aggregate functions are notoriously slow". /gustav >>> ssharkins at gmail.com 05-09-2008 16:29 >>> I've never used one that didn't make me wish I hadn't -- so Gustav and Jim -- share the secret of making them performance friendly???? Susan H. > Hi Jim > > That is pretty much my experience too. > > /gustav > > > It's a bit of a myth that Domain functions are slow. .. From wdhindman at dejpolsystems.com Fri Sep 5 11:48:37 2008 From: wdhindman at dejpolsystems.com (William Hindman) Date: Fri, 5 Sep 2008 12:48:37 -0400 Subject: [AccessD] Next, Prev References: Message-ID: <675A7F5EB39E4B43AD0EB66902225A0B@jislaptopdev> ...except that your linked tests explicitly demonstrate that they are ...and in my own experience before I stopped using them, I almost always found them to perform poorly compared to the alternatives. William -------------------------------------------------- From: "Gustav Brock" Sent: Friday, September 05, 2008 10:50 AM To: Subject: Re: [AccessD] Next, Prev > Hi Susan > > No secrets except for an index but that is common sense. > Some tests are found here: > > http://www.access-programmers.co.uk/forums/showthread.php?t=79622 > > As you can see, no basis for the usual statements like "the domain > aggregate functions are notoriously slow". > > /gustav > >>>> ssharkins at gmail.com 05-09-2008 16:29 >>> > I've never used one that didn't make me wish I hadn't -- so Gustav and > Jim -- share the secret of making them performance friendly???? > > Susan H. > > >> Hi Jim >> >> That is pretty much my experience too. >> >> /gustav >> >> >> It's a bit of a myth that Domain functions are slow. .. > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From Gustav at cactus.dk Fri Sep 5 12:27:21 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 05 Sep 2008 19:27:21 +0200 Subject: [AccessD] Next, Prev Message-ID: Hi William Where do you "explicitly" see that? Did we read the same page? These tests show comparable or - for the DAO and tabledirect methods - about 30% slower performance. That is not "notoriously slow". Of course, it may be important in some cases but quite often it doesn't matter - and you are done with one line of code. /gustav >>> wdhindman at dejpolsystems.com 05-09-2008 18:48 >>> ...except that your linked tests explicitly demonstrate that they are ...and in my own experience before I stopped using them, I almost always found them to perform poorly compared to the alternatives. William -------------------------------------------------- From: "Gustav Brock" Sent: Friday, September 05, 2008 10:50 AM To: Subject: Re: [AccessD] Next, Prev > Hi Susan > > No secrets except for an index but that is common sense. > Some tests are found here: > > http://www.access-programmers.co.uk/forums/showthread.php?t=79622 > > As you can see, no basis for the usual statements like "the domain > aggregate functions are notoriously slow". > > /gustav > >>>> ssharkins at gmail.com 05-09-2008 16:29 >>> > I've never used one that didn't make me wish I hadn't -- so Gustav and > Jim -- share the secret of making them performance friendly???? > > Susan H. > > >> Hi Jim >> >> That is pretty much my experience too. >> >> /gustav >> >> >> It's a bit of a myth that Domain functions are slow. .. From wdhindman at dejpolsystems.com Fri Sep 5 13:01:08 2008 From: wdhindman at dejpolsystems.com (William Hindman) Date: Fri, 5 Sep 2008 14:01:08 -0400 Subject: [AccessD] Next, Prev References: Message-ID: <03935B6D52E346CFBFD8ABBD7CC947F1@jislaptopdev> 3.6534 DLookup 2.2010 DAO recordset ...on a linked table (and who runs otherwise) that's more than 60% slower ...and in my book that's "notoriously slow" ...while its not true in every case, my normative is against linked tables where even small tables exhibit the performance discrepancy ...and I'll grant that I started using the alternatives with A97 and have not retried the originals in subsequent versions ...my habit is to go with what I know works and not to change working code without a damn good reason ...your experience may differ :) William -------------------------------------------------- From: "Gustav Brock" Sent: Friday, September 05, 2008 1:27 PM To: Subject: Re: [AccessD] Next, Prev > Hi William > > Where do you "explicitly" see that? Did we read the same page? > > These tests show comparable or - for the DAO and tabledirect methods - > about 30% slower performance. That is not "notoriously slow". > Of course, it may be important in some cases but quite often it doesn't > matter - and you are done with one line of code. > > /gustav > >>>> wdhindman at dejpolsystems.com 05-09-2008 18:48 >>> > ...except that your linked tests explicitly demonstrate that they are > ...and > in my own experience before I stopped using them, I almost always found > them > to perform poorly compared to the alternatives. > > William > > > -------------------------------------------------- > From: "Gustav Brock" > Sent: Friday, September 05, 2008 10:50 AM > To: > Subject: Re: [AccessD] Next, Prev > >> Hi Susan >> >> No secrets except for an index but that is common sense. >> Some tests are found here: >> >> http://www.access-programmers.co.uk/forums/showthread.php?t=79622 >> >> As you can see, no basis for the usual statements like "the domain >> aggregate functions are notoriously slow". >> >> /gustav >> >>>>> ssharkins at gmail.com 05-09-2008 16:29 >>> >> I've never used one that didn't make me wish I hadn't -- so Gustav and >> Jim -- share the secret of making them performance friendly???? >> >> Susan H. >> >> >>> Hi Jim >>> >>> That is pretty much my experience too. >>> >>> /gustav >>> >>> >>> It's a bit of a myth that Domain functions are slow. .. > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From adtp at airtelmail.in Sat Sep 6 02:12:13 2008 From: adtp at airtelmail.in (A.D.Tejpal) Date: Sat, 6 Sep 2008 12:42:13 +0530 Subject: [AccessD] Next, Prev References: Message-ID: <01d601c90fef$fc029d80$0485a37a@personald6374f> Kath, If the name field (let us call it PName) is likely to have embedded quotes, use of domain aggregate functions would generate error unless the value is duly fixed before concatenation. Gustav - You might like to verify again - Use of DMin() with "ID" as the first argument would lead to inconsistent results, returning the record with lowest ID (out of all subsequent records), not necessarily the very next record. Perhaps you intended name field as the first argument. As an alternative, function Fn_GetNextID() as given below, can be considered. It also circumvents the problem associated with embedded quotes in PName field. Best wishes, A.D. Tejpal ------------- ' Code in general module '=================================== Function Fn_GetNextID(frm As Form) As Variant Dim rst As DAO.Recordset, LastRec As Long Fn_GetNextID = Null ' Default If frm.NewRecord = False Then Set rst = frm.RecordsetClone rst.MoveLast LastRec = rst.AbsolutePosition + 1 If frm.CurrentRecord < LastRec Then ' Grab inf from next record ' (Abs Pos is zero based) rst.AbsolutePosition = frm.CurrentRecord Fn_GetNextID = rst.Fields("ID") End If rst.Close Set rst = Nothing End If End Function '=================================== ----- Original Message ----- From: Gustav Brock To: accessd at databaseadvisors.com Sent: Friday, September 05, 2008 12:07 Subject: Re: [AccessD] Next, Prev Hi Kath I guess you could and should use DMin without any issues: NextItemID = DMin("ID","qryMyFormQuery","[Name] > '" & [Name] & "'") It will sort "correctly", that is the default sorting of your database. If you need any other sorting the plot thickens. /gustav >>> kp at sdsonline.net 05-09-2008 04:33 >>> Your solution is nice and simple but think it is going to get me into all kinds of problems when I hit names (workplacenames) with strange characters and apostrophes in them. And if I use code to handle the apostrophes (replace them etc.) then the statement won't work. hhmm.. ----- Original Message ----- From: "Stuart McLachlan" To: "Access Developers discussion and problem solving" Sent: Friday, September 05, 2008 12:01 PM Subject: Re: [AccessD] Next, Prev > NextItemID = > Dlookup("ID","qryMyFormQuery","[Name] > " & [Name]) > > > Incidentally, it's very bad practice to use "Name" as a field name - it can bite you in all sorts > of ways. > > > On 5 Sep 2008 at 10:51, Kath Pelletti wrote: > >> Must be the week for working on Next, Prev functions on the list............ >> >> This is a bit of an odd situation, but what I have a continuous form >> which displays names and ID's. It's source is a query which is sorted by >> the Name field. >> >> In another area of the application, I need to be able to know the ID of >> the 'next' rec in that continuous form. >> >> eg. Continuous form shows: >> Name ID >> AAB 90312 >> AAC 23 >> AAD 845 >> AAE 32 >> >> If I have a form for AAB open, I need to get the ID of the next item AAC, >> which is 23. >> >> Maybe I am making this too hard, but the fact that the list is >> alphabetically sorted has me thrown............... >> >> tia >> Kath >> >> ______________________________________ >> Kath Pelletti >> Software Design and Solutions Pty Ltd >> kp at sdsonline.net From stephen at bondsoftware.co.nz Sat Sep 6 02:45:02 2008 From: stephen at bondsoftware.co.nz (Stephen) Date: Sat, 06 Sep 2008 19:45:02 +1200 Subject: [AccessD] Building a spreadsheet from Access ... slow segment of code Message-ID: <569E08FC48047F4F848850B118195FBE0382C8@server.BondSoftware.local> The code segment below takes around 10 seconds to run. The worksheet has been just created in code, an embedded chart has been built on the worksheet (again, code), and the code below is the 'prettying up' bit. Yep, to get it, I recorded a macro in Excel and then commented out the bits I didn't want/didn't work. I put some rudimentary time checks at random places in this segment. Embedded in the sample, I have put the elapsed time it took to get to the indicated line. Any ideas? The rest of it runs really fast on a 6-year-old PC (768MB, WinXP SP2, Processor x86 Family 6 Model 8 Stepping 0 AuthenticAMD ~1529 Mhz) but I can't see why this is happening. I am generating a couple of hundred sheets at a time, so the slowness is not trivial. TIA Stephen Bond ' finally build print specs xlWs.Range("A1").Select With xlWb.ActiveSheet.PageSetup .PrintArea = "" .PrintTitleRows = "" .PrintTitleColumns = "" .LeftHeader = "&6&Z&F!&A" ' 0 seconds .CenterHeader = "&""Arial,Bold""&16&A" .RightHeader = "&6Printed &D &T" .LeftFooter = "&6Prepared by Stephen Bond for " & conUser1 .CenterFooter = "&""Arial,Bold""&16&A" .RightFooter = "&6based on an idea by J McKinlay, Southland Boys' High School" ' 3 seconds ' .LeftMargin = Application.InchesToPoints(0.75) ' .RightMargin = Application.InchesToPoints(0.75) ' .TopMargin = Application.InchesToPoints(0.75) ' .BottomMargin = Application.InchesToPoints(0.75) ' .HeaderMargin = Application.InchesToPoints(0.5) ' .FooterMargin = Application.InchesToPoints(0.5) .PrintHeadings = False .PrintGridlines = True .PrintComments = xlPrintNoComments ' 5 seconds ''''' .PrintQuality = -4 .CenterHorizontally = True .CenterVertically = False .Orientation = xlLandscape .Draft = False ' 7 seconds .PaperSize = xlPaperA4 .FirstPageNumber = xlAutomatic .Order = xlDownThenOver .BlackAndWhite = False .Zoom = False ' 10 seconds .FitToPagesWide = 1 .FitToPagesTall = 1 .PrintErrors = xlPrintErrorsDisplayed ' 10 seconds End With From dwaters at usinternet.com Sat Sep 6 09:04:57 2008 From: dwaters at usinternet.com (Dan Waters) Date: Sat, 6 Sep 2008 09:04:57 -0500 Subject: [AccessD] Building a spreadsheet from Access ... slow segment of code In-Reply-To: <569E08FC48047F4F848850B118195FBE0382C8@server.BondSoftware.local> References: <569E08FC48047F4F848850B118195FBE0382C8@server.BondSoftware.local> Message-ID: <0220138EC8D640BCBEDF3FFF2953E9BE@danwaters> Hi Stephen, I'm surprised that formatting a single sheet in Excel takes so long. From your data it's not a single method, but all of them. This makes me think that the first thing to look at is your PC. 768 Mb of Ram seems a little low. 1529 MHz seems fine. I would look next at your computer's performance settings. Go to My Computer Properties, Advanced tab, then push Settings under Performance. 1) Under Visual Effects, uncheck everything except 'Smooth edges...' and 'Use visual styles ...'. 2) Under Advanced, check Programs for best performance. 3) Under Advanced, push Change under Virtual memory. Then select System Managed Size and push Set. Or you can select your own numbers which are higher than what is displayed as the recommended (shown at the bottom). 4) Under Data Execution Prevention, select 'Turn on DEP for essential...', assuming you have a firewall installed. Next, I would use a Registry Cleaner and Disk Cleaner. If you haven't done this for a while, you'll see a noticeable performance increase. I've been using Wise Disk Cleaner and Wise Registry Cleaner, both free. With Excel: - Maybe there is a way to change formatting for the entire workbook at once instead of looping through 200 sheets. - Perhaps you could format one sheet in code and then copy it 200 more times - which might be faster. - Perhaps you could format the sheet(s) first, and then create the embedded chart. Without Excel: In the code you displayed what you're doing is essentially page setup for the header and footer. I've been use MSGraph charts for quite a while now. An MSGraph chart is an object on an Access Report. You can put the chart on the page wherever you want and what size you want. You can put more than one chart on a report, or you can mix a chart object with normal report content. This is a pretty nice way to go because once you design the chart & report, you can loop through a dataset with different parameters very quickly, and print the reports or export them as snapshots and programmatically email them out. HTH! Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stephen Sent: Saturday, September 06, 2008 2:45 AM To: Access Developers discussion and problem solving Subject: [AccessD] Building a spreadsheet from Access ... slow segment of code The code segment below takes around 10 seconds to run. The worksheet has been just created in code, an embedded chart has been built on the worksheet (again, code), and the code below is the 'prettying up' bit. Yep, to get it, I recorded a macro in Excel and then commented out the bits I didn't want/didn't work. I put some rudimentary time checks at random places in this segment. Embedded in the sample, I have put the elapsed time it took to get to the indicated line. Any ideas? The rest of it runs really fast on a 6-year-old PC (768MB, WinXP SP2, Processor x86 Family 6 Model 8 Stepping 0 AuthenticAMD ~1529 Mhz) but I can't see why this is happening. I am generating a couple of hundred sheets at a time, so the slowness is not trivial. TIA Stephen Bond ' finally build print specs xlWs.Range("A1").Select With xlWb.ActiveSheet.PageSetup .PrintArea = "" .PrintTitleRows = "" .PrintTitleColumns = "" .LeftHeader = "&6&Z&F!&A" ' 0 seconds .CenterHeader = "&""Arial,Bold""&16&A" .RightHeader = "&6Printed &D &T" .LeftFooter = "&6Prepared by Stephen Bond for " & conUser1 .CenterFooter = "&""Arial,Bold""&16&A" .RightFooter = "&6based on an idea by J McKinlay, Southland Boys' High School" ' 3 seconds ' .LeftMargin = Application.InchesToPoints(0.75) ' .RightMargin = Application.InchesToPoints(0.75) ' .TopMargin = Application.InchesToPoints(0.75) ' .BottomMargin = Application.InchesToPoints(0.75) ' .HeaderMargin = Application.InchesToPoints(0.5) ' .FooterMargin = Application.InchesToPoints(0.5) .PrintHeadings = False .PrintGridlines = True .PrintComments = xlPrintNoComments ' 5 seconds ''''' .PrintQuality = -4 .CenterHorizontally = True .CenterVertically = False .Orientation = xlLandscape .Draft = False ' 7 seconds .PaperSize = xlPaperA4 .FirstPageNumber = xlAutomatic .Order = xlDownThenOver .BlackAndWhite = False .Zoom = False ' 10 seconds .FitToPagesWide = 1 .FitToPagesTall = 1 .PrintErrors = xlPrintErrorsDisplayed ' 10 seconds End With -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From stephen at bondsoftware.co.nz Sat Sep 6 14:27:09 2008 From: stephen at bondsoftware.co.nz (Stephen) Date: Sun, 07 Sep 2008 07:27:09 +1200 Subject: [AccessD] Building a spreadsheet from Access ... slow segment ofcode Message-ID: <569E08FC48047F4F848850B118195FBE0382C9@server.BondSoftware.local> Dan, Wow, thanks for your fulsome reply. I shall look at each of these in turn. May take a couple of days. I use CCleaner regularly, other than that, a lot of things to try. Will report in a few days. Stephen -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Dan Waters Sent: Sunday, 7 September 2008 2:16 a.m. To: Stephen Subject: Re: [AccessD] Building a spreadsheet from Access ... slow segment ofcode Hi Stephen, I'm surprised that formatting a single sheet in Excel takes so long. >From your data it's not a single method, but all of them. This makes me think that the first thing to look at is your PC. 768 Mb of Ram seems a little low. 1529 MHz seems fine. I would look next at your computer's performance settings. Go to My Computer Properties, Advanced tab, then push Settings under Performance. 1) Under Visual Effects, uncheck everything except 'Smooth edges...' and 'Use visual styles ...'. 2) Under Advanced, check Programs for best performance. 3) Under Advanced, push Change under Virtual memory. Then select System Managed Size and push Set. Or you can select your own numbers which are higher than what is displayed as the recommended (shown at the bottom). 4) Under Data Execution Prevention, select 'Turn on DEP for essential...', assuming you have a firewall installed. Next, I would use a Registry Cleaner and Disk Cleaner. If you haven't done this for a while, you'll see a noticeable performance increase. I've been using Wise Disk Cleaner and Wise Registry Cleaner, both free. With Excel: - Maybe there is a way to change formatting for the entire workbook at once instead of looping through 200 sheets. - Perhaps you could format one sheet in code and then copy it 200 more times - which might be faster. - Perhaps you could format the sheet(s) first, and then create the embedded chart. Without Excel: In the code you displayed what you're doing is essentially page setup for the header and footer. I've been use MSGraph charts for quite a while now. An MSGraph chart is an object on an Access Report. You can put the chart on the page wherever you want and what size you want. You can put more than one chart on a report, or you can mix a chart object with normal report content. This is a pretty nice way to go because once you design the chart & report, you can loop through a dataset with different parameters very quickly, and print the reports or export them as snapshots and programmatically email them out. HTH! Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stephen Sent: Saturday, September 06, 2008 2:45 AM To: Access Developers discussion and problem solving Subject: [AccessD] Building a spreadsheet from Access ... slow segment of code The code segment below takes around 10 seconds to run. The worksheet has been just created in code, an embedded chart has been built on the worksheet (again, code), and the code below is the 'prettying up' bit. Yep, to get it, I recorded a macro in Excel and then commented out the bits I didn't want/didn't work. I put some rudimentary time checks at random places in this segment. Embedded in the sample, I have put the elapsed time it took to get to the indicated line. Any ideas? The rest of it runs really fast on a 6-year-old PC (768MB, WinXP SP2, Processor x86 Family 6 Model 8 Stepping 0 AuthenticAMD ~1529 Mhz) but I can't see why this is happening. I am generating a couple of hundred sheets at a time, so the slowness is not trivial. TIA Stephen Bond ' finally build print specs xlWs.Range("A1").Select With xlWb.ActiveSheet.PageSetup .PrintArea = "" .PrintTitleRows = "" .PrintTitleColumns = "" .LeftHeader = "&6&Z&F!&A" ' 0 seconds .CenterHeader = "&""Arial,Bold""&16&A" .RightHeader = "&6Printed &D &T" .LeftFooter = "&6Prepared by Stephen Bond for " & conUser1 .CenterFooter = "&""Arial,Bold""&16&A" .RightFooter = "&6based on an idea by J McKinlay, Southland Boys' High School" ' 3 seconds ' .LeftMargin = Application.InchesToPoints(0.75) ' .RightMargin = Application.InchesToPoints(0.75) ' .TopMargin = Application.InchesToPoints(0.75) ' .BottomMargin = Application.InchesToPoints(0.75) ' .HeaderMargin = Application.InchesToPoints(0.5) ' .FooterMargin = Application.InchesToPoints(0.5) .PrintHeadings = False .PrintGridlines = True .PrintComments = xlPrintNoComments ' 5 seconds ''''' .PrintQuality = -4 .CenterHorizontally = True .CenterVertically = False .Orientation = xlLandscape .Draft = False ' 7 seconds .PaperSize = xlPaperA4 .FirstPageNumber = xlAutomatic .Order = xlDownThenOver .BlackAndWhite = False .Zoom = False ' 10 seconds .FitToPagesWide = 1 .FitToPagesTall = 1 .PrintErrors = xlPrintErrorsDisplayed ' 10 seconds End With -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/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 Sep 6 16:24:06 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Sat, 06 Sep 2008 23:24:06 +0200 Subject: [AccessD] Next, Prev Message-ID: Hi A.D. Good catch! You are right as always. I had a general situation in mind. The method using the RecordsetClone is indeed preferable - and probably superior in speed too. /gustav >>> adtp at airtelmail.in 06-09-2008 09:12 >>> Kath, If the name field (let us call it PName) is likely to have embedded quotes, use of domain aggregate functions would generate error unless the value is duly fixed before concatenation. Gustav - You might like to verify again - Use of DMin() with "ID" as the first argument would lead to inconsistent results, returning the record with lowest ID (out of all subsequent records), not necessarily the very next record. Perhaps you intended name field as the first argument. As an alternative, function Fn_GetNextID() as given below, can be considered. It also circumvents the problem associated with embedded quotes in PName field. Best wishes, A.D. Tejpal ------------- ' Code in general module '=================================== Function Fn_GetNextID(frm As Form) As Variant Dim rst As DAO.Recordset, LastRec As Long Fn_GetNextID = Null ' Default If frm.NewRecord = False Then Set rst = frm.RecordsetClone rst.MoveLast LastRec = rst.AbsolutePosition + 1 If frm.CurrentRecord < LastRec Then ' Grab inf from next record ' (Abs Pos is zero based) rst.AbsolutePosition = frm.CurrentRecord Fn_GetNextID = rst.Fields("ID") End If rst.Close Set rst = Nothing End If End Function '=================================== ----- Original Message ----- From: Gustav Brock To: accessd at databaseadvisors.com Sent: Friday, September 05, 2008 12:07 Subject: Re: [AccessD] Next, Prev Hi Kath I guess you could and should use DMin without any issues: NextItemID = DMin("ID","qryMyFormQuery","[Name] > '" & [Name] & "'") It will sort "correctly", that is the default sorting of your database. If you need any other sorting the plot thickens. /gustav >>> kp at sdsonline.net 05-09-2008 04:33 >>> Your solution is nice and simple but think it is going to get me into all kinds of problems when I hit names (workplacenames) with strange characters and apostrophes in them. And if I use code to handle the apostrophes (replace them etc.) then the statement won't work. hhmm.. ----- Original Message ----- From: "Stuart McLachlan" To: "Access Developers discussion and problem solving" Sent: Friday, September 05, 2008 12:01 PM Subject: Re: [AccessD] Next, Prev > NextItemID = > Dlookup("ID","qryMyFormQuery","[Name] > " & [Name]) > > > Incidentally, it's very bad practice to use "Name" as a field name - it can bite you in all sorts > of ways. > > > On 5 Sep 2008 at 10:51, Kath Pelletti wrote: > >> Must be the week for working on Next, Prev functions on the list............ >> >> This is a bit of an odd situation, but what I have a continuous form >> which displays names and ID's. It's source is a query which is sorted by >> the Name field. >> >> In another area of the application, I need to be able to know the ID of >> the 'next' rec in that continuous form. >> >> eg. Continuous form shows: >> Name ID >> AAB 90312 >> AAC 23 >> AAD 845 >> AAE 32 >> >> If I have a form for AAB open, I need to get the ID of the next item AAC, >> which is 23. >> >> Maybe I am making this too hard, but the fact that the list is >> alphabetically sorted has me thrown............... >> >> tia >> Kath >> >> ______________________________________ >> Kath Pelletti >> Software Design and Solutions Pty Ltd >> kp at sdsonline.net From Gustav at cactus.dk Sat Sep 6 16:30:08 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Sat, 06 Sep 2008 23:30:08 +0200 Subject: [AccessD] Building a spreadsheet from Access ... slow segment of code Message-ID: Hi Stephen Don't use Select except if you really wish to have the WorkSheet visible and select something for the user. /gustav >>> stephen at bondsoftware.co.nz 06-09-2008 09:45 >>> The code segment below takes around 10 seconds to run. The worksheet has been just created in code, an embedded chart has been built on the worksheet (again, code), and the code below is the 'prettying up' bit. Yep, to get it, I recorded a macro in Excel and then commented out the bits I didn't want/didn't work. I put some rudimentary time checks at random places in this segment. Embedded in the sample, I have put the elapsed time it took to get to the indicated line. Any ideas? The rest of it runs really fast on a 6-year-old PC (768MB, WinXP SP2, Processor x86 Family 6 Model 8 Stepping 0 AuthenticAMD ~1529 Mhz) but I can't see why this is happening. I am generating a couple of hundred sheets at a time, so the slowness is not trivial. TIA Stephen Bond ' finally build print specs xlWs.Range("A1").Select With xlWb.ActiveSheet.PageSetup .PrintArea = "" .PrintTitleRows = "" .PrintTitleColumns = "" .LeftHeader = "&6&Z&F!&A" ' 0 seconds .CenterHeader = "&""Arial,Bold""&16&A" .RightHeader = "&6Printed &D &T" .LeftFooter = "&6Prepared by Stephen Bond for " & conUser1 .CenterFooter = "&""Arial,Bold""&16&A" .RightFooter = "&6based on an idea by J McKinlay, Southland Boys' High School" ' 3 seconds ' .LeftMargin = Application.InchesToPoints(0.75) ' .RightMargin = Application.InchesToPoints(0.75) ' .TopMargin = Application.InchesToPoints(0.75) ' .BottomMargin = Application.InchesToPoints(0.75) ' .HeaderMargin = Application.InchesToPoints(0.5) ' .FooterMargin = Application.InchesToPoints(0.5) .PrintHeadings = False .PrintGridlines = True .PrintComments = xlPrintNoComments ' 5 seconds ''''' .PrintQuality = -4 .CenterHorizontally = True .CenterVertically = False .Orientation = xlLandscape .Draft = False ' 7 seconds .PaperSize = xlPaperA4 .FirstPageNumber = xlAutomatic .Order = xlDownThenOver .BlackAndWhite = False .Zoom = False ' 10 seconds .FitToPagesWide = 1 .FitToPagesTall = 1 .PrintErrors = xlPrintErrorsDisplayed ' 10 seconds End With From Darryl.Collins at coles.com.au Sat Sep 6 20:03:18 2008 From: Darryl.Collins at coles.com.au (Darryl Collins) Date: Sun, 7 Sep 2008 11:03:18 +1000 Subject: [AccessD] Building a spreadsheet from Access ... slow segment of code In-Reply-To: <569E08FC48047F4F848850B118195FBE0382C8@server.BondSoftware.local> Message-ID: <57E6E6CA42105A48B977303A2CDC2720076DA26ECA@WPEXCH22.retail.ad.cmltd.net.au> Stephen, Excel has always had an issue that setting up print ranges in Code takes F O R E V E R!!! I am not sure it is a 'bug' as such, but it is well known and long standingn issue. I suggest you take out absolutely everything except what you need to change. Check what Excel's Defaults are and DO NOT set them again in code, only put in there the stuff that changes the default. Add in BEFORE the code starts Application.calculation = xlcalculationmanual Application.screenupdating = False If it is still super slow, email me the file offlist and I will clean up your Excel VBA code so it all runs faster. Cheers Darryl. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Stephen Sent: Saturday, 6 September 2008 5:45 PM To: Access Developers discussion and problem solving Subject: [AccessD] Building a spreadsheet from Access ... slow segment of code The code segment below takes around 10 seconds to run. The worksheet has been just created in code, an embedded chart has been built on the worksheet (again, code), and the code below is the 'prettying up' bit. Yep, to get it, I recorded a macro in Excel and then commented out the bits I didn't want/didn't work. I put some rudimentary time checks at random places in this segment. Embedded in the sample, I have put the elapsed time it took to get to the indicated line. Any ideas? The rest of it runs really fast on a 6-year-old PC (768MB, WinXP SP2, Processor x86 Family 6 Model 8 Stepping 0 AuthenticAMD ~1529 Mhz) but I can't see why this is happening. I am generating a couple of hundred sheets at a time, so the slowness is not trivial. TIA Stephen Bond ' finally build print specs xlWs.Range("A1").Select With xlWb.ActiveSheet.PageSetup .PrintArea = "" .PrintTitleRows = "" .PrintTitleColumns = "" .LeftHeader = "&6&Z&F!&A" ' 0 seconds .CenterHeader = "&""Arial,Bold""&16&A" .RightHeader = "&6Printed &D &T" .LeftFooter = "&6Prepared by Stephen Bond for " & conUser1 .CenterFooter = "&""Arial,Bold""&16&A" .RightFooter = "&6based on an idea by J McKinlay, Southland Boys' High School" ' 3 seconds ' .LeftMargin = Application.InchesToPoints(0.75) ' .RightMargin = Application.InchesToPoints(0.75) ' .TopMargin = Application.InchesToPoints(0.75) ' .BottomMargin = Application.InchesToPoints(0.75) ' .HeaderMargin = Application.InchesToPoints(0.5) ' .FooterMargin = Application.InchesToPoints(0.5) .PrintHeadings = False .PrintGridlines = True .PrintComments = xlPrintNoComments ' 5 seconds ''''' .PrintQuality = -4 .CenterHorizontally = True .CenterVertically = False .Orientation = xlLandscape .Draft = False ' 7 seconds .PaperSize = xlPaperA4 .FirstPageNumber = xlAutomatic .Order = xlDownThenOver .BlackAndWhite = False .Zoom = False ' 10 seconds .FitToPagesWide = 1 .FitToPagesTall = 1 .PrintErrors = xlPrintErrorsDisplayed ' 10 seconds End With -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. From Darryl.Collins at coles.com.au Sat Sep 6 20:08:19 2008 From: Darryl.Collins at coles.com.au (Darryl Collins) Date: Sun, 7 Sep 2008 11:08:19 +1000 Subject: [AccessD] Building a spreadsheet from Access ... slow segment of code In-Reply-To: <569E08FC48047F4F848850B118195FBE0382C8@server.BondSoftware.local> Message-ID: <57E6E6CA42105A48B977303A2CDC2720076DA26ECB@WPEXCH22.retail.ad.cmltd.net.au> Actually, Stephen - send me the file anyway and I will clean the VBA code up for you. Can normally get good performance gains with few changes. If it is bigger than 4 MB you had better zip it up. cheers Darryl. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Stephen Sent: Saturday, 6 September 2008 5:45 PM To: Access Developers discussion and problem solving Subject: [AccessD] Building a spreadsheet from Access ... slow segment of code The code segment below takes around 10 seconds to run. The worksheet has been just created in code, an embedded chart has been built on the worksheet (again, code), and the code below is the 'prettying up' bit. Yep, to get it, I recorded a macro in Excel and then commented out the bits I didn't want/didn't work. I put some rudimentary time checks at random places in this segment. Embedded in the sample, I have put the elapsed time it took to get to the indicated line. Any ideas? The rest of it runs really fast on a 6-year-old PC (768MB, WinXP SP2, Processor x86 Family 6 Model 8 Stepping 0 AuthenticAMD ~1529 Mhz) but I can't see why this is happening. I am generating a couple of hundred sheets at a time, so the slowness is not trivial. TIA Stephen Bond ' finally build print specs xlWs.Range("A1").Select With xlWb.ActiveSheet.PageSetup .PrintArea = "" .PrintTitleRows = "" .PrintTitleColumns = "" .LeftHeader = "&6&Z&F!&A" ' 0 seconds .CenterHeader = "&""Arial,Bold""&16&A" .RightHeader = "&6Printed &D &T" .LeftFooter = "&6Prepared by Stephen Bond for " & conUser1 .CenterFooter = "&""Arial,Bold""&16&A" .RightFooter = "&6based on an idea by J McKinlay, Southland Boys' High School" ' 3 seconds ' .LeftMargin = Application.InchesToPoints(0.75) ' .RightMargin = Application.InchesToPoints(0.75) ' .TopMargin = Application.InchesToPoints(0.75) ' .BottomMargin = Application.InchesToPoints(0.75) ' .HeaderMargin = Application.InchesToPoints(0.5) ' .FooterMargin = Application.InchesToPoints(0.5) .PrintHeadings = False .PrintGridlines = True .PrintComments = xlPrintNoComments ' 5 seconds ''''' .PrintQuality = -4 .CenterHorizontally = True .CenterVertically = False .Orientation = xlLandscape .Draft = False ' 7 seconds .PaperSize = xlPaperA4 .FirstPageNumber = xlAutomatic .Order = xlDownThenOver .BlackAndWhite = False .Zoom = False ' 10 seconds .FitToPagesWide = 1 .FitToPagesTall = 1 .PrintErrors = xlPrintErrorsDisplayed ' 10 seconds End With -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. From stephen at bondsoftware.co.nz Sat Sep 6 21:12:04 2008 From: stephen at bondsoftware.co.nz (Stephen) Date: Sun, 07 Sep 2008 14:12:04 +1200 Subject: [AccessD] Building a spreadsheet from Access ... slow segment ofcode Message-ID: <569E08FC48047F4F848850B118195FBE0382CA@server.BondSoftware.local> Darryl, A couple of things 1...yes, I always set ScreenUpdating to False 2...will check the defaults now, but they may be diferent on target machine(s). This is why I left them in there. Comments? 3...the code is embedded in an Access system. Will see if I can extract the relevant bits. Are you still interested if I can do this? Stephen Bond -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darryl Collins Sent: Sunday, 7 September 2008 1:16 p.m. To: Stephen Subject: Re: [AccessD] Building a spreadsheet from Access ... slow segment ofcode Stephen, Excel has always had an issue that setting up print ranges in Code takes F O R E V E R!!! I am not sure it is a 'bug' as such, but it is well known and long standingn issue. I suggest you take out absolutely everything except what you need to change. Check what Excel's Defaults are and DO NOT set them again in code, only put in there the stuff that changes the default. Add in BEFORE the code starts Application.calculation = xlcalculationmanual Application.screenupdating = False If it is still super slow, email me the file offlist and I will clean up your Excel VBA code so it all runs faster. Cheers Darryl. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Stephen Sent: Saturday, 6 September 2008 5:45 PM To: Access Developers discussion and problem solving Subject: [AccessD] Building a spreadsheet from Access ... slow segment of code The code segment below takes around 10 seconds to run. The worksheet has been just created in code, an embedded chart has been built on the worksheet (again, code), and the code below is the 'prettying up' bit. Yep, to get it, I recorded a macro in Excel and then commented out the bits I didn't want/didn't work. I put some rudimentary time checks at random places in this segment. Embedded in the sample, I have put the elapsed time it took to get to the indicated line. Any ideas? The rest of it runs really fast on a 6-year-old PC (768MB, WinXP SP2, Processor x86 Family 6 Model 8 Stepping 0 AuthenticAMD ~1529 Mhz) but I can't see why this is happening. I am generating a couple of hundred sheets at a time, so the slowness is not trivial. TIA Stephen Bond ' finally build print specs xlWs.Range("A1").Select With xlWb.ActiveSheet.PageSetup .PrintArea = "" .PrintTitleRows = "" .PrintTitleColumns = "" .LeftHeader = "&6&Z&F!&A" ' 0 seconds .CenterHeader = "&""Arial,Bold""&16&A" .RightHeader = "&6Printed &D &T" .LeftFooter = "&6Prepared by Stephen Bond for " & conUser1 .CenterFooter = "&""Arial,Bold""&16&A" .RightFooter = "&6based on an idea by J McKinlay, Southland Boys' High School" ' 3 seconds ' .LeftMargin = Application.InchesToPoints(0.75) ' .RightMargin = Application.InchesToPoints(0.75) ' .TopMargin = Application.InchesToPoints(0.75) ' .BottomMargin = Application.InchesToPoints(0.75) ' .HeaderMargin = Application.InchesToPoints(0.5) ' .FooterMargin = Application.InchesToPoints(0.5) .PrintHeadings = False .PrintGridlines = True .PrintComments = xlPrintNoComments ' 5 seconds ''''' .PrintQuality = -4 .CenterHorizontally = True .CenterVertically = False .Orientation = xlLandscape .Draft = False ' 7 seconds .PaperSize = xlPaperA4 .FirstPageNumber = xlAutomatic .Order = xlDownThenOver .BlackAndWhite = False .Zoom = False ' 10 seconds .FitToPagesWide = 1 .FitToPagesTall = 1 .PrintErrors = xlPrintErrorsDisplayed ' 10 seconds End With -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Darryl.Collins at coles.com.au Sat Sep 6 23:52:08 2008 From: Darryl.Collins at coles.com.au (Darryl Collins) Date: Sun, 7 Sep 2008 14:52:08 +1000 Subject: [AccessD] Building a spreadsheet from Access ... slow segment ofcode In-Reply-To: <569E08FC48047F4F848850B118195FBE0382CA@server.BondSoftware.local> Message-ID: <57E6E6CA42105A48B977303A2CDC2720076DA26ECE@WPEXCH22.retail.ad.cmltd.net.au> Hi stephen, You can just send me the code module if you like and I can have a look at it from from there. If I understand this correctly you are calling a new Excel workbook and populating and setting it up from Access (all the work is being from Access, rather than running an Excel code module from Access(?). Yep, still interested in having a look. Just send the code rather than your whole database and I will see if I can help. cheers Darryl. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Stephen Sent: Sunday, 7 September 2008 12:12 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Building a spreadsheet from Access ... slow segment ofcode Darryl, A couple of things 1...yes, I always set ScreenUpdating to False 2...will check the defaults now, but they may be diferent on target machine(s). This is why I left them in there. Comments? 3...the code is embedded in an Access system. Will see if I can extract the relevant bits. Are you still interested if I can do this? Stephen Bond -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darryl Collins Sent: Sunday, 7 September 2008 1:16 p.m. To: Stephen Subject: Re: [AccessD] Building a spreadsheet from Access ... slow segment ofcode Stephen, Excel has always had an issue that setting up print ranges in Code takes F O R E V E R!!! I am not sure it is a 'bug' as such, but it is well known and long standingn issue. I suggest you take out absolutely everything except what you need to change. Check what Excel's Defaults are and DO NOT set them again in code, only put in there the stuff that changes the default. Add in BEFORE the code starts Application.calculation = xlcalculationmanual Application.screenupdating = False If it is still super slow, email me the file offlist and I will clean up your Excel VBA code so it all runs faster. Cheers Darryl. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Stephen Sent: Saturday, 6 September 2008 5:45 PM To: Access Developers discussion and problem solving Subject: [AccessD] Building a spreadsheet from Access ... slow segment of code The code segment below takes around 10 seconds to run. The worksheet has been just created in code, an embedded chart has been built on the worksheet (again, code), and the code below is the 'prettying up' bit. Yep, to get it, I recorded a macro in Excel and then commented out the bits I didn't want/didn't work. I put some rudimentary time checks at random places in this segment. Embedded in the sample, I have put the elapsed time it took to get to the indicated line. Any ideas? The rest of it runs really fast on a 6-year-old PC (768MB, WinXP SP2, Processor x86 Family 6 Model 8 Stepping 0 AuthenticAMD ~1529 Mhz) but I can't see why this is happening. I am generating a couple of hundred sheets at a time, so the slowness is not trivial. TIA Stephen Bond ' finally build print specs xlWs.Range("A1").Select With xlWb.ActiveSheet.PageSetup .PrintArea = "" .PrintTitleRows = "" .PrintTitleColumns = "" .LeftHeader = "&6&Z&F!&A" ' 0 seconds .CenterHeader = "&""Arial,Bold""&16&A" .RightHeader = "&6Printed &D &T" .LeftFooter = "&6Prepared by Stephen Bond for " & conUser1 .CenterFooter = "&""Arial,Bold""&16&A" .RightFooter = "&6based on an idea by J McKinlay, Southland Boys' High School" ' 3 seconds ' .LeftMargin = Application.InchesToPoints(0.75) ' .RightMargin = Application.InchesToPoints(0.75) ' .TopMargin = Application.InchesToPoints(0.75) ' .BottomMargin = Application.InchesToPoints(0.75) ' .HeaderMargin = Application.InchesToPoints(0.5) ' .FooterMargin = Application.InchesToPoints(0.5) .PrintHeadings = False .PrintGridlines = True .PrintComments = xlPrintNoComments ' 5 seconds ''''' .PrintQuality = -4 .CenterHorizontally = True .CenterVertically = False .Orientation = xlLandscape .Draft = False ' 7 seconds .PaperSize = xlPaperA4 .FirstPageNumber = xlAutomatic .Order = xlDownThenOver .BlackAndWhite = False .Zoom = False ' 10 seconds .FitToPagesWide = 1 .FitToPagesTall = 1 .PrintErrors = xlPrintErrorsDisplayed ' 10 seconds End With -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/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 email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. From kp at sdsonline.net Sun Sep 7 04:55:56 2008 From: kp at sdsonline.net (Kath Pelletti) Date: Sun, 7 Sep 2008 19:55:56 +1000 Subject: [AccessD] Next, Prev References: <01d601c90fef$fc029d80$0485a37a@personald6374f> Message-ID: <004001c910cf$ed60d270$6501a8c0@DELLAPTOP> Thanks so much everyone for your replies. I actually would never have thought that > could even be used for strings as per Gustav/Stuart's examples, so I have learnt something from that. Will be interesting to test the speed but given that the table will never have more than 500 recs I don't imagine that's a big deal. A.D - your solution posted below is exactly what I was looking for - already put it in place to be further enhanced tomorrow morning. All I need to work out tomorrow is how to repeat it (ie. if user then moved fwd again then the new position is 2 recs ahead, and if they do it again, 3 recs etc.) So more playing tomorrow - Did you already have this code, or just wrote it to post? Either way you have helped me enormously. kath ----- Original Message ----- From: "A.D.Tejpal" To: "Access Developers discussion and problem solving" Sent: Saturday, September 06, 2008 5:12 PM Subject: Re: [AccessD] Next, Prev > Kath, > > > If the name field (let us call it PName) is likely to have embedded > quotes, use of domain aggregate functions would generate error unless the > value is duly fixed before concatenation. > > Gustav - You might like to verify again - Use of DMin() with "ID" as > the first argument would lead to inconsistent results, returning the > record with lowest ID (out of all subsequent records), not necessarily the > very next record. Perhaps you intended name field as the first argument. > > As an alternative, function Fn_GetNextID() as given below, can be > considered. It also circumvents the problem associated with embedded > quotes in PName field. > > Best wishes, > A.D. Tejpal > ------------- > > ' Code in general module > '=================================== > Function Fn_GetNextID(frm As Form) As Variant > Dim rst As DAO.Recordset, LastRec As Long > > Fn_GetNextID = Null ' Default > If frm.NewRecord = False Then > Set rst = frm.RecordsetClone > > rst.MoveLast > LastRec = rst.AbsolutePosition + 1 > > If frm.CurrentRecord < LastRec Then > ' Grab inf from next record > ' (Abs Pos is zero based) > rst.AbsolutePosition = frm.CurrentRecord > Fn_GetNextID = rst.Fields("ID") > End If > > rst.Close > Set rst = Nothing > End If > End Function > '=================================== > > ----- Original Message ----- > From: Gustav Brock > To: accessd at databaseadvisors.com > Sent: Friday, September 05, 2008 12:07 > Subject: Re: [AccessD] Next, Prev > > > Hi Kath > > I guess you could and should use DMin without any issues: > > NextItemID = DMin("ID","qryMyFormQuery","[Name] > '" & [Name] & "'") > > It will sort "correctly", that is the default sorting of your database. > If you need any other sorting the plot thickens. > > /gustav > > > >>> kp at sdsonline.net 05-09-2008 04:33 >>> > Your solution is nice and simple but think it is going to get me into all > kinds of problems when I hit names (workplacenames) with strange > characters > and apostrophes in them. > > And if I use code to handle the apostrophes (replace them etc.) then the > statement won't work. > > hhmm.. > > ----- Original Message ----- > From: "Stuart McLachlan" > To: "Access Developers discussion and problem solving" > > Sent: Friday, September 05, 2008 12:01 PM > Subject: Re: [AccessD] Next, Prev > > > > NextItemID = > > Dlookup("ID","qryMyFormQuery","[Name] > " & [Name]) > > > > > > Incidentally, it's very bad practice to use "Name" as a field name - it > can bite you in all sorts > > of ways. > > > > > > On 5 Sep 2008 at 10:51, Kath Pelletti wrote: > > > >> Must be the week for working on Next, Prev functions on the > list............ > >> > >> This is a bit of an odd situation, but what I have a continuous form > >> which displays names and ID's. It's source is a query which is sorted > by > >> the Name field. > >> > >> In another area of the application, I need to be able to know the ID > of > >> the 'next' rec in that continuous form. > >> > >> eg. Continuous form shows: > >> Name ID > >> AAB 90312 > >> AAC 23 > >> AAD 845 > >> AAE 32 > >> > >> If I have a form for AAB open, I need to get the ID of the next item > AAC, > >> which is 23. > >> > >> Maybe I am making this too hard, but the fact that the list is > >> alphabetically sorted has me thrown............... > >> > >> tia > >> Kath > >> > >> ______________________________________ > >> Kath Pelletti > >> Software Design and Solutions Pty Ltd > >> kp at sdsonline.net > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From Gustav at cactus.dk Sun Sep 7 05:52:35 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Sun, 07 Sep 2008 12:52:35 +0200 Subject: [AccessD] Building a spreadsheet from Access ... slow segment ofcode Message-ID: Hi Stephen and Darryl Another option is to use a template - with all printer settings and formatting ready - for the new worksheet >>> Darryl.Collins at coles.com.au 07-09-2008 06:52 >>> Hi stephen, You can just send me the code module if you like and I can have a look at it from from there. If I understand this correctly you are calling a new Excel workbook and populating and setting it up from Access (all the work is being from Access, rather than running an Excel code module from Access(?). Yep, still interested in having a look. Just send the code rather than your whole database and I will see if I can help. cheers Darryl. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Stephen Sent: Sunday, 7 September 2008 12:12 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Building a spreadsheet from Access ... slow segment ofcode Darryl, A couple of things 1...yes, I always set ScreenUpdating to False 2...will check the defaults now, but they may be diferent on target machine(s). This is why I left them in there. Comments? 3...the code is embedded in an Access system. Will see if I can extract the relevant bits. Are you still interested if I can do this? Stephen Bond -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darryl Collins Sent: Sunday, 7 September 2008 1:16 p.m. To: Stephen Subject: Re: [AccessD] Building a spreadsheet from Access ... slow segment ofcode Stephen, Excel has always had an issue that setting up print ranges in Code takes F O R E V E R!!! I am not sure it is a 'bug' as such, but it is well known and long standingn issue. I suggest you take out absolutely everything except what you need to change. Check what Excel's Defaults are and DO NOT set them again in code, only put in there the stuff that changes the default. Add in BEFORE the code starts Application.calculation = xlcalculationmanual Application.screenupdating = False If it is still super slow, email me the file offlist and I will clean up your Excel VBA code so it all runs faster. Cheers Darryl. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Stephen Sent: Saturday, 6 September 2008 5:45 PM To: Access Developers discussion and problem solving Subject: [AccessD] Building a spreadsheet from Access ... slow segment of code The code segment below takes around 10 seconds to run. The worksheet has been just created in code, an embedded chart has been built on the worksheet (again, code), and the code below is the 'prettying up' bit. Yep, to get it, I recorded a macro in Excel and then commented out the bits I didn't want/didn't work. I put some rudimentary time checks at random places in this segment. Embedded in the sample, I have put the elapsed time it took to get to the indicated line. Any ideas? The rest of it runs really fast on a 6-year-old PC (768MB, WinXP SP2, Processor x86 Family 6 Model 8 Stepping 0 AuthenticAMD ~1529 Mhz) but I can't see why this is happening. I am generating a couple of hundred sheets at a time, so the slowness is not trivial. TIA Stephen Bond ' finally build print specs xlWs.Range("A1").Select With xlWb.ActiveSheet.PageSetup .PrintArea = "" .PrintTitleRows = "" .PrintTitleColumns = "" .LeftHeader = "&6&Z&F!&A" ' 0 seconds .CenterHeader = "&""Arial,Bold""&16&A" .RightHeader = "&6Printed &D &T" .LeftFooter = "&6Prepared by Stephen Bond for " & conUser1 .CenterFooter = "&""Arial,Bold""&16&A" .RightFooter = "&6based on an idea by J McKinlay, Southland Boys' High School" ' 3 seconds ' .LeftMargin = Application.InchesToPoints(0.75) ' .RightMargin = Application.InchesToPoints(0.75) ' .TopMargin = Application.InchesToPoints(0.75) ' .BottomMargin = Application.InchesToPoints(0.75) ' .HeaderMargin = Application.InchesToPoints(0.5) ' .FooterMargin = Application.InchesToPoints(0.5) .PrintHeadings = False .PrintGridlines = True .PrintComments = xlPrintNoComments ' 5 seconds ''''' .PrintQuality = -4 .CenterHorizontally = True .CenterVertically = False .Orientation = xlLandscape .Draft = False ' 7 seconds .PaperSize = xlPaperA4 .FirstPageNumber = xlAutomatic .Order = xlDownThenOver .BlackAndWhite = False .Zoom = False ' 10 seconds .FitToPagesWide = 1 .FitToPagesTall = 1 .PrintErrors = xlPrintErrorsDisplayed ' 10 seconds End With From Darryl.Collins at coles.com.au Sun Sep 7 06:01:39 2008 From: Darryl.Collins at coles.com.au (Darryl Collins) Date: Sun, 7 Sep 2008 21:01:39 +1000 Subject: [AccessD] Building a spreadsheet from Access ... slow segment ofcode In-Reply-To: Message-ID: <57E6E6CA42105A48B977303A2CDC2720076DA26ED1@WPEXCH22.retail.ad.cmltd.net.au> Yep - that is definately a good option, although it does depend on the end user having access to the template - which is not always possible. I have having a look at the code now and it creates a new sheet for each output, so a single sheet template that is replicated could work, early days looking at this so.... -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Gustav Brock Sent: Sunday, 7 September 2008 8:53 PM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Building a spreadsheet from Access ... slow segment ofcode Hi Stephen and Darryl Another option is to use a template - with all printer settings and formatting ready - for the new worksheet >>> Darryl.Collins at coles.com.au 07-09-2008 06:52 >>> Hi stephen, You can just send me the code module if you like and I can have a look at it from from there. If I understand this correctly you are calling a new Excel workbook and populating and setting it up from Access (all the work is being from Access, rather than running an Excel code module from Access(?). Yep, still interested in having a look. Just send the code rather than your whole database and I will see if I can help. cheers Darryl. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Stephen Sent: Sunday, 7 September 2008 12:12 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Building a spreadsheet from Access ... slow segment ofcode Darryl, A couple of things 1...yes, I always set ScreenUpdating to False 2...will check the defaults now, but they may be diferent on target machine(s). This is why I left them in there. Comments? 3...the code is embedded in an Access system. Will see if I can extract the relevant bits. Are you still interested if I can do this? Stephen Bond -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darryl Collins Sent: Sunday, 7 September 2008 1:16 p.m. To: Stephen Subject: Re: [AccessD] Building a spreadsheet from Access ... slow segment ofcode Stephen, Excel has always had an issue that setting up print ranges in Code takes F O R E V E R!!! I am not sure it is a 'bug' as such, but it is well known and long standingn issue. I suggest you take out absolutely everything except what you need to change. Check what Excel's Defaults are and DO NOT set them again in code, only put in there the stuff that changes the default. Add in BEFORE the code starts Application.calculation = xlcalculationmanual Application.screenupdating = False If it is still super slow, email me the file offlist and I will clean up your Excel VBA code so it all runs faster. Cheers Darryl. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Stephen Sent: Saturday, 6 September 2008 5:45 PM To: Access Developers discussion and problem solving Subject: [AccessD] Building a spreadsheet from Access ... slow segment of code The code segment below takes around 10 seconds to run. The worksheet has been just created in code, an embedded chart has been built on the worksheet (again, code), and the code below is the 'prettying up' bit. Yep, to get it, I recorded a macro in Excel and then commented out the bits I didn't want/didn't work. I put some rudimentary time checks at random places in this segment. Embedded in the sample, I have put the elapsed time it took to get to the indicated line. Any ideas? The rest of it runs really fast on a 6-year-old PC (768MB, WinXP SP2, Processor x86 Family 6 Model 8 Stepping 0 AuthenticAMD ~1529 Mhz) but I can't see why this is happening. I am generating a couple of hundred sheets at a time, so the slowness is not trivial. TIA Stephen Bond ' finally build print specs xlWs.Range("A1").Select With xlWb.ActiveSheet.PageSetup .PrintArea = "" .PrintTitleRows = "" .PrintTitleColumns = "" .LeftHeader = "&6&Z&F!&A" ' 0 seconds .CenterHeader = "&""Arial,Bold""&16&A" .RightHeader = "&6Printed &D &T" .LeftFooter = "&6Prepared by Stephen Bond for " & conUser1 .CenterFooter = "&""Arial,Bold""&16&A" .RightFooter = "&6based on an idea by J McKinlay, Southland Boys' High School" ' 3 seconds ' .LeftMargin = Application.InchesToPoints(0.75) ' .RightMargin = Application.InchesToPoints(0.75) ' .TopMargin = Application.InchesToPoints(0.75) ' .BottomMargin = Application.InchesToPoints(0.75) ' .HeaderMargin = Application.InchesToPoints(0.5) ' .FooterMargin = Application.InchesToPoints(0.5) .PrintHeadings = False .PrintGridlines = True .PrintComments = xlPrintNoComments ' 5 seconds ''''' .PrintQuality = -4 .CenterHorizontally = True .CenterVertically = False .Orientation = xlLandscape .Draft = False ' 7 seconds .PaperSize = xlPaperA4 .FirstPageNumber = xlAutomatic .Order = xlDownThenOver .BlackAndWhite = False .Zoom = False ' 10 seconds .FitToPagesWide = 1 .FitToPagesTall = 1 .PrintErrors = xlPrintErrorsDisplayed ' 10 seconds End With -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. From jimdettman at verizon.net Sun Sep 7 09:35:25 2008 From: jimdettman at verizon.net (Jim Dettman) Date: Sun, 07 Sep 2008 10:35:25 -0400 Subject: [AccessD] Building a spreadsheet from Access ... slow segment of code In-Reply-To: <569E08FC48047F4F848850B118195FBE0382C8@server.BondSoftware.local> References: <569E08FC48047F4F848850B118195FBE0382C8@server.BondSoftware.local> Message-ID: <00fa01c910f6$f865a520$8abea8c0@XPS> Stephen, You using early or late binding? While late binding does get you around reference issues, it does carry a performance penalty. If your doing lots of operations with OLE Automation, it may be worth the references hassle to use early binding. Jim. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stephen Sent: Saturday, September 06, 2008 3:45 AM To: Access Developers discussion and problem solving Subject: [AccessD] Building a spreadsheet from Access ... slow segment of code The code segment below takes around 10 seconds to run. The worksheet has been just created in code, an embedded chart has been built on the worksheet (again, code), and the code below is the 'prettying up' bit. Yep, to get it, I recorded a macro in Excel and then commented out the bits I didn't want/didn't work. I put some rudimentary time checks at random places in this segment. Embedded in the sample, I have put the elapsed time it took to get to the indicated line. Any ideas? The rest of it runs really fast on a 6-year-old PC (768MB, WinXP SP2, Processor x86 Family 6 Model 8 Stepping 0 AuthenticAMD ~1529 Mhz) but I can't see why this is happening. I am generating a couple of hundred sheets at a time, so the slowness is not trivial. TIA Stephen Bond ' finally build print specs xlWs.Range("A1").Select With xlWb.ActiveSheet.PageSetup .PrintArea = "" .PrintTitleRows = "" .PrintTitleColumns = "" .LeftHeader = "&6&Z&F!&A" ' 0 seconds .CenterHeader = "&""Arial,Bold""&16&A" .RightHeader = "&6Printed &D &T" .LeftFooter = "&6Prepared by Stephen Bond for " & conUser1 .CenterFooter = "&""Arial,Bold""&16&A" .RightFooter = "&6based on an idea by J McKinlay, Southland Boys' High School" ' 3 seconds ' .LeftMargin = Application.InchesToPoints(0.75) ' .RightMargin = Application.InchesToPoints(0.75) ' .TopMargin = Application.InchesToPoints(0.75) ' .BottomMargin = Application.InchesToPoints(0.75) ' .HeaderMargin = Application.InchesToPoints(0.5) ' .FooterMargin = Application.InchesToPoints(0.5) .PrintHeadings = False .PrintGridlines = True .PrintComments = xlPrintNoComments ' 5 seconds ''''' .PrintQuality = -4 .CenterHorizontally = True .CenterVertically = False .Orientation = xlLandscape .Draft = False ' 7 seconds .PaperSize = xlPaperA4 .FirstPageNumber = xlAutomatic .Order = xlDownThenOver .BlackAndWhite = False .Zoom = False ' 10 seconds .FitToPagesWide = 1 .FitToPagesTall = 1 .PrintErrors = xlPrintErrorsDisplayed ' 10 seconds End With -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From stephen at bondsoftware.co.nz Sun Sep 7 13:53:15 2008 From: stephen at bondsoftware.co.nz (Stephen) Date: Mon, 08 Sep 2008 06:53:15 +1200 Subject: [AccessD] Building a spreadsheet from Access ... slow segment ofcode Message-ID: <569E08FC48047F4F848850B118195FBE0382CE@server.BondSoftware.local> Thanks Jim, yes, am using early binding. At present, am following up Darryl's earlier note on the known issue <>, also some ideas from Dan on computer performance settings. Thanks to everybody so far ... we'll nail this one ! Stephen -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Dettman Sent: Monday, 8 September 2008 2:46 a.m. To: Stephen Subject: Re: [AccessD] Building a spreadsheet from Access ... slow segment ofcode Stephen, You using early or late binding? While late binding does get you around reference issues, it does carry a performance penalty. If your doing lots of operations with OLE Automation, it may be worth the references hassle to use early binding. Jim. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stephen Sent: Saturday, September 06, 2008 3:45 AM To: Access Developers discussion and problem solving Subject: [AccessD] Building a spreadsheet from Access ... slow segment of code The code segment below takes around 10 seconds to run. The worksheet has been just created in code, an embedded chart has been built on the worksheet (again, code), and the code below is the 'prettying up' bit. Yep, to get it, I recorded a macro in Excel and then commented out the bits I didn't want/didn't work. I put some rudimentary time checks at random places in this segment. Embedded in the sample, I have put the elapsed time it took to get to the indicated line. Any ideas? The rest of it runs really fast on a 6-year-old PC (768MB, WinXP SP2, Processor x86 Family 6 Model 8 Stepping 0 AuthenticAMD ~1529 Mhz) but I can't see why this is happening. I am generating a couple of hundred sheets at a time, so the slowness is not trivial. TIA Stephen Bond ' finally build print specs xlWs.Range("A1").Select With xlWb.ActiveSheet.PageSetup .PrintArea = "" .PrintTitleRows = "" .PrintTitleColumns = "" .LeftHeader = "&6&Z&F!&A" ' 0 seconds .CenterHeader = "&""Arial,Bold""&16&A" .RightHeader = "&6Printed &D &T" .LeftFooter = "&6Prepared by Stephen Bond for " & conUser1 .CenterFooter = "&""Arial,Bold""&16&A" .RightFooter = "&6based on an idea by J McKinlay, Southland Boys' High School" ' 3 seconds ' .LeftMargin = Application.InchesToPoints(0.75) ' .RightMargin = Application.InchesToPoints(0.75) ' .TopMargin = Application.InchesToPoints(0.75) ' .BottomMargin = Application.InchesToPoints(0.75) ' .HeaderMargin = Application.InchesToPoints(0.5) ' .FooterMargin = Application.InchesToPoints(0.5) .PrintHeadings = False .PrintGridlines = True .PrintComments = xlPrintNoComments ' 5 seconds ''''' .PrintQuality = -4 .CenterHorizontally = True .CenterVertically = False .Orientation = xlLandscape .Draft = False ' 7 seconds .PaperSize = xlPaperA4 .FirstPageNumber = xlAutomatic .Order = xlDownThenOver .BlackAndWhite = False .Zoom = False ' 10 seconds .FitToPagesWide = 1 .FitToPagesTall = 1 .PrintErrors = xlPrintErrorsDisplayed ' 10 seconds End With -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/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 darren at activebilling.com.au Mon Sep 8 07:24:42 2008 From: darren at activebilling.com.au (Darren D) Date: Mon, 8 Sep 2008 22:24:42 +1000 Subject: [AccessD] A2003: Table Driven button list on Continuous Forms Message-ID: <000001c911ad$e0691fd0$0d1b910a@denzilnote> Hi All I have a table of application names that will grow and shrink with many fields but the 2 of interest are. APPID = AutoNumber and AppName = Text I want a continuous form to have a button for each item in that table. Trouble is It is a bit tricky to get the caption for each button to = the AppName for each record in the table I can 'fake' it using labels but if I write a routine to simulate a mouse down and mouse up to mimic raises and depressions then all the labels that are simulated buttons on the form depress and raise at the same time Besides I would prefer to have the 'rounded' look to the buttons simply to match the rest of my screen design I know many people have done this sort of thing before - But how have you managed it on a continuous form driven by a table Many thanks in advance Darren From ssharkins at gmail.com Mon Sep 8 08:47:45 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Mon, 8 Sep 2008 09:47:45 -0400 Subject: [AccessD] AHAHAHAHAHAAHAHAAHHA Message-ID: <01d901c911b9$7e40aec0$2f8601c7@SusanOne> I loved the "This is a one week position." Okay, maybe some of you are that good, but I'm not! I think it's over-the-top unrealistic. Susan H. From dwaters at usinternet.com Mon Sep 8 09:35:50 2008 From: dwaters at usinternet.com (Dan Waters) Date: Mon, 8 Sep 2008 09:35:50 -0500 Subject: [AccessD] AHAHAHAHAHAAHAHAAHHA In-Reply-To: <01d901c911b9$7e40aec0$2f8601c7@SusanOne> References: <01d901c911b9$7e40aec0$2f8601c7@SusanOne> Message-ID: <52C80781DE354601AF7E266BC5E1EA21@danwaters> This was pretty sad. Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Monday, September 08, 2008 8:48 AM To: AccessD at databaseadvisors.com Subject: [AccessD] AHAHAHAHAHAAHAHAAHHA I loved the "This is a one week position." Okay, maybe some of you are that good, but I'm not! I think it's over-the-top unrealistic. Susan H. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From dwaters at usinternet.com Mon Sep 8 09:45:51 2008 From: dwaters at usinternet.com (Dan Waters) Date: Mon, 8 Sep 2008 09:45:51 -0500 Subject: [AccessD] A2003: Table Driven button list on Continuous Forms In-Reply-To: <000001c911ad$e0691fd0$0d1b910a@denzilnote> References: <000001c911ad$e0691fd0$0d1b910a@denzilnote> Message-ID: <01DDE7AD89D74AF5AB6A821B8EDA045D@danwaters> Hi Darren, I use buttons on continuous forms quite a bit. To my knowledge, you cannot do what you're trying to do. The only way to change the appearance of a control is to use Conditional Formatting, and button up/button down appearance is not part of conditional formatting. Perhaps you could use a textbox instead of a label for your button, and slightly change color to substitute for button up/button down using Conditional Formatting. Conditional Formatting only works with textboxes and comboboxes. Can you use a regular button on each record that says 'Open App'. The user knows which app since its name is displayed. Or, could you set up a double-click event in the app name control to open the app? No button at all. Just some thoughts, Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darren D Sent: Monday, September 08, 2008 7:25 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] A2003: Table Driven button list on Continuous Forms Hi All I have a table of application names that will grow and shrink with many fields but the 2 of interest are. APPID = AutoNumber and AppName = Text I want a continuous form to have a button for each item in that table. Trouble is It is a bit tricky to get the caption for each button to = the AppName for each record in the table I can 'fake' it using labels but if I write a routine to simulate a mouse down and mouse up to mimic raises and depressions then all the labels that are simulated buttons on the form depress and raise at the same time Besides I would prefer to have the 'rounded' look to the buttons simply to match the rest of my screen design I know many people have done this sort of thing before - But how have you managed it on a continuous form driven by a table Many thanks in advance Darren -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Mon Sep 8 10:26:27 2008 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Mon, 8 Sep 2008 08:26:27 -0700 Subject: [AccessD] AHAHAHAHAHAAHAHAAHHA In-Reply-To: <01d901c911b9$7e40aec0$2f8601c7@SusanOne> References: <01d901c911b9$7e40aec0$2f8601c7@SusanOne> Message-ID: OMG, I think I've held that position in another location!! Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Monday, September 08, 2008 6:48 AM To: AccessD at databaseadvisors.com Subject: [AccessD] AHAHAHAHAHAAHAHAAHHA I loved the "This is a one week position." Okay, maybe some of you are that good, but I'm not! I think it's over-the-top unrealistic. Susan H. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From adtp at airtelmail.in Mon Sep 8 13:39:56 2008 From: adtp at airtelmail.in (A.D.Tejpal) Date: Tue, 9 Sep 2008 00:09:56 +0530 Subject: [AccessD] Next, Prev References: <01d601c90fef$fc029d80$0485a37a@personald6374f> <004001c910cf$ed60d270$6501a8c0@DELLAPTOP> Message-ID: <1f7d01c911e2$607e2290$ea5fa27a@personald6374f> You are most welcome Kath! The function was custom built for you. Best wishes, A.D. Tejpal ------------- ----- Original Message ----- From: Kath Pelletti To: Access Developers discussion and problem solving Sent: Sunday, September 07, 2008 15:25 Subject: Re: [AccessD] Next, Prev Thanks so much everyone for your replies. I actually would never have thought that > could even be used for strings as per Gustav/Stuart's examples, so I have learnt something from that. Will be interesting to test the speed but given that the table will never have more than 500 recs I don't imagine that's a big deal. A.D - your solution posted below is exactly what I was looking for - already put it in place to be further enhanced tomorrow morning. All I need to work out tomorrow is how to repeat it (ie. if user then moved fwd again then the new position is 2 recs ahead, and if they do it again, 3 recs etc.) So more playing tomorrow - Did you already have this code, or just wrote it to post? Either way you have helped me enormously. kath ----- Original Message ----- From: "A.D.Tejpal" To: "Access Developers discussion and problem solving" Sent: Saturday, September 06, 2008 5:12 PM Subject: Re: [AccessD] Next, Prev > Kath, > > If the name field (let us call it PName) is likely to have embedded > quotes, use of domain aggregate functions would generate error unless the > value is duly fixed before concatenation. > > Gustav - You might like to verify again - Use of DMin() with "ID" as > the first argument would lead to inconsistent results, returning the > record with lowest ID (out of all subsequent records), not necessarily the > very next record. Perhaps you intended name field as the first argument. > > As an alternative, function Fn_GetNextID() as given below, can be > considered. It also circumvents the problem associated with embedded > quotes in PName field. > > Best wishes, > A.D. Tejpal > ------------- > > ' Code in general module > '=================================== > Function Fn_GetNextID(frm As Form) As Variant > Dim rst As DAO.Recordset, LastRec As Long > > Fn_GetNextID = Null ' Default > If frm.NewRecord = False Then > Set rst = frm.RecordsetClone > > rst.MoveLast > LastRec = rst.AbsolutePosition + 1 > > If frm.CurrentRecord < LastRec Then > ' Grab inf from next record > ' (Abs Pos is zero based) > rst.AbsolutePosition = frm.CurrentRecord > Fn_GetNextID = rst.Fields("ID") > End If > > rst.Close > Set rst = Nothing > End If > End Function > '=================================== From ssharkins at gmail.com Mon Sep 8 14:33:36 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Mon, 8 Sep 2008 15:33:36 -0400 Subject: [AccessD] Looking for Access Developer in Galveston Message-ID: <024101c911ea$0841a8b0$2f8601c7@SusanOne> I know someone that needs an Access developer in Galveston for about 2 months. Let me know if you might be interested -- ssharkins at gmail.com Susan H. From ssharkins at gmail.com Mon Sep 8 14:42:41 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Mon, 8 Sep 2008 15:42:41 -0400 Subject: [AccessD] AHAHAHAHAHAAHAHAAHHA References: <01d901c911b9$7e40aec0$2f8601c7@SusanOne> Message-ID: <02df01c911eb$1020c6a0$2f8601c7@SusanOne> And you're probably one of the few who managed! ;) Susan H. > OMG, I think I've held that position in another location!! From Elizabeth.J.Doering at wellsfargo.com Mon Sep 8 14:58:23 2008 From: Elizabeth.J.Doering at wellsfargo.com (Elizabeth.J.Doering at wellsfargo.com) Date: Mon, 8 Sep 2008 14:58:23 -0500 Subject: [AccessD] Looking for Access Developer in Galveston References: <024101c911ea$0841a8b0$2f8601c7@SusanOne> Message-ID: Physically in Galveston? Is that, after hurricane season and, during our Minnesota winter? Thanks, Liz -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Monday, September 08, 2008 2:34 PM To: AccessD at databaseadvisors.com Subject: [AccessD] Looking for Access Developer in Galveston I know someone that needs an Access developer in Galveston for about 2 months. Let me know if you might be interested -- ssharkins at gmail.com Susan H. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com This message may contain confidential and/or privileged information. If you are not the addressee or authorized to receive this for the addressee, you must not use, copy, disclose, or take any action based on this message or any information herein. If you have received this message in error, please advise the sender immediately by reply e-mail and delete this message. Thank you for your cooperation. From ssharkins at gmail.com Mon Sep 8 15:07:43 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Mon, 8 Sep 2008 16:07:43 -0400 Subject: [AccessD] Looking for Access Developer in Galveston References: <024101c911ea$0841a8b0$2f8601c7@SusanOne> Message-ID: <03dc01c911ee$8f12c370$2f8601c7@SusanOne> Physically in the Galveston area. I don't know why, in this day and age, so many still need to see our bobbily little heads... :( Susan H. ----- Original Message ----- From: To: Sent: Monday, September 08, 2008 3:58 PM Subject: Re: [AccessD] Looking for Access Developer in Galveston > > Physically in Galveston? Is that, after hurricane season and, during > our Minnesota winter? > > > Thanks, > > > Liz > > > > > > > > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins > Sent: Monday, September 08, 2008 2:34 PM > To: AccessD at databaseadvisors.com > Subject: [AccessD] Looking for Access Developer in Galveston > > I know someone that needs an Access developer in Galveston for about 2 > months. Let me know if you might be interested -- ssharkins at gmail.com > > Susan H. > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > > This message may contain confidential and/or privileged information. If > you are not the addressee or authorized to receive this for the > addressee, you must not use, copy, disclose, or take any action based on > this message or any information herein. If you have received this > message in error, please advise the sender immediately by reply e-mail > and delete this message. Thank you for your cooperation. > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From rockysmolin at bchacc.com Mon Sep 8 17:00:34 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Mon, 8 Sep 2008 15:00:34 -0700 Subject: [AccessD] Looking for Access Developer in Galveston In-Reply-To: <024101c911ea$0841a8b0$2f8601c7@SusanOne> References: <024101c911ea$0841a8b0$2f8601c7@SusanOne> Message-ID: <08be01c911fe$51dcf3d0$0301a8c0@HAL9005> Has to be on-site? Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Monday, September 08, 2008 12:34 PM To: AccessD at databaseadvisors.com Subject: [AccessD] Looking for Access Developer in Galveston I know someone that needs an Access developer in Galveston for about 2 months. Let me know if you might be interested -- ssharkins at gmail.com Susan H. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From ssharkins at gmail.com Mon Sep 8 17:05:45 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Mon, 8 Sep 2008 18:05:45 -0400 Subject: [AccessD] Looking for Access Developer in Galveston References: <024101c911ea$0841a8b0$2f8601c7@SusanOne> <08be01c911fe$51dcf3d0$0301a8c0@HAL9005> Message-ID: <05f001c911ff$0c546540$2f8601c7@SusanOne> Unfortunately, yes. :( Well... I don't think they have to have someone physically onsite the entire contract, but they want someone local so they can be there as often as they like. They're open to remote, but want someone local -- like... huh???? :) I told them to google me and if my credentials weren't good enough for remote, I'd help them find someone... they asked for help. :) ----- Original Message ----- From: "Rocky Smolin at Beach Access Software" To: "'Access Developers discussion and problem solving'" Sent: Monday, September 08, 2008 6:00 PM Subject: Re: [AccessD] Looking for Access Developer in Galveston > Has to be on-site? > > > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > www.bchacc.com > > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins > Sent: Monday, September 08, 2008 12:34 PM > To: AccessD at databaseadvisors.com > Subject: [AccessD] Looking for Access Developer in Galveston > > I know someone that needs an Access developer in Galveston for about 2 > months. Let me know if you might be interested -- ssharkins at gmail.com > > Susan H. > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/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 kp at sdsonline.net Mon Sep 8 18:10:17 2008 From: kp at sdsonline.net (Kath Pelletti) Date: Tue, 9 Sep 2008 09:10:17 +1000 Subject: [AccessD] A2003: Table Driven button list on Continuous Forms References: <000001c911ad$e0691fd0$0d1b910a@denzilnote> Message-ID: <006101c91208$0fc64460$6501a8c0@DELLAPTOP> Darrren - I'm not sure that I *entirely* understand what you are trying to do, but if you want bound controls which look like rounded buttons, then can draw a rounded button (in Word or PPoint), and then sit the bound control on top of it (text box) and set it's back style to transparent. Why do you need a mouse down/up event? kath ----- Original Message ----- From: "Darren D" To: "'Access Developers discussion and problem solving'" Sent: Monday, September 08, 2008 10:24 PM Subject: [AccessD] A2003: Table Driven button list on Continuous Forms > Hi All > > > > I have a table of application names that will grow and shrink with many > fields > but the 2 of interest are. > > APPID = AutoNumber and AppName = Text > > > > I want a continuous form to have a button for each item in that table. > > Trouble is It is a bit tricky to get the caption for each button to = the > AppName for each record in the table > > I can 'fake' it using labels but if I write a routine to simulate a mouse > down > and mouse up to mimic raises and depressions then > > all the labels that are simulated buttons on the form depress and raise at > the > same time > > Besides I would prefer to have the 'rounded' look to the buttons simply to > match > the rest of my screen design > > > > I know many people have done this sort of thing before - But how have you > managed it on a continuous form driven by a table > > > > Many thanks in advance > > > > Darren > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From darren at activebilling.com.au Mon Sep 8 18:15:32 2008 From: darren at activebilling.com.au (Darren D) Date: Tue, 9 Sep 2008 09:15:32 +1000 Subject: [AccessD] A2003: Table Driven button list on Continuous Forms In-Reply-To: <01DDE7AD89D74AF5AB6A821B8EDA045D@danwaters> References: <000001c911ad$e0691fd0$0d1b910a@denzilnote> <01DDE7AD89D74AF5AB6A821B8EDA045D@danwaters> Message-ID: <000801c91208$cbe26520$0d1b910a@denzilnote> Hi Dan Yes sadly I realised - "this ain't gonna work" So I bound a text box to the AppName field - made it transparent and put it over a button with no caption. I then set the 'is hyperlink' property to yes to get the 'pointing finger' mouse icon when the mouse went over it That'll have to do Many thanks for your reply Darren -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Dan Waters Sent: Tuesday, 9 September 2008 12:46 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] A2003: Table Driven button list on Continuous Forms Hi Darren, I use buttons on continuous forms quite a bit. To my knowledge, you cannot do what you're trying to do. The only way to change the appearance of a control is to use Conditional Formatting, and button up/button down appearance is not part of conditional formatting. Perhaps you could use a textbox instead of a label for your button, and slightly change color to substitute for button up/button down using Conditional Formatting. Conditional Formatting only works with textboxes and comboboxes. Can you use a regular button on each record that says 'Open App'. The user knows which app since its name is displayed. Or, could you set up a double-click event in the app name control to open the app? No button at all. Just some thoughts, Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darren D Sent: Monday, September 08, 2008 7:25 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] A2003: Table Driven button list on Continuous Forms Hi All I have a table of application names that will grow and shrink with many fields but the 2 of interest are. APPID = AutoNumber and AppName = Text I want a continuous form to have a button for each item in that table. Trouble is It is a bit tricky to get the caption for each button to = the AppName for each record in the table I can 'fake' it using labels but if I write a routine to simulate a mouse down and mouse up to mimic raises and depressions then all the labels that are simulated buttons on the form depress and raise at the same time Besides I would prefer to have the 'rounded' look to the buttons simply to match the rest of my screen design I know many people have done this sort of thing before - But how have you managed it on a continuous form driven by a table Many thanks in advance Darren -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/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 darren at activebilling.com.au Mon Sep 8 18:52:18 2008 From: darren at activebilling.com.au (Darren D) Date: Tue, 9 Sep 2008 09:52:18 +1000 Subject: [AccessD] A2003: Table Driven button list on Continuous Forms In-Reply-To: <006101c91208$0fc64460$6501a8c0@DELLAPTOP> References: <000001c911ad$e0691fd0$0d1b910a@denzilnote> <006101c91208$0fc64460$6501a8c0@DELLAPTOP> Message-ID: <000901c9120d$ef205c40$0d1b910a@denzilnote> Hi Kath Thanks for the reply I just wanted to build a list of buttons (that grows and shrinks)on a continuous form for each of our clients. Clients are selected by tabs and the list of buttons is 'built' on each tab click (In a sub form). The table is a list of applications each client has and I want a button list of their applications and I wanted the caption on the button and the list of buttons to be table driven. That ain't gonna work. So I used a transparent text box over the no caption button that looked OK until you click it. Then the mouse simply moves to the text box and the text of 'the button' is selected. Then I wanted the 'look' of a button being pushed and look of a button being released when the mouse got to this transparent text box. Too tricky I gave up - can't easily be done and I have already used an inappropriate amount of time chasing the 'look' Darren -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Kath Pelletti Sent: Tuesday, 9 September 2008 9:10 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] A2003: Table Driven button list on Continuous Forms Darrren - I'm not sure that I *entirely* understand what you are trying to do, but if you want bound controls which look like rounded buttons, then can draw a rounded button (in Word or PPoint), and then sit the bound control on top of it (text box) and set it's back style to transparent. Why do you need a mouse down/up event? kath ----- Original Message ----- From: "Darren D" To: "'Access Developers discussion and problem solving'" Sent: Monday, September 08, 2008 10:24 PM Subject: [AccessD] A2003: Table Driven button list on Continuous Forms > Hi All > > > > I have a table of application names that will grow and shrink with many > fields > but the 2 of interest are. > > APPID = AutoNumber and AppName = Text > > > > I want a continuous form to have a button for each item in that table. > > Trouble is It is a bit tricky to get the caption for each button to = the > AppName for each record in the table > > I can 'fake' it using labels but if I write a routine to simulate a mouse > down > and mouse up to mimic raises and depressions then > > all the labels that are simulated buttons on the form depress and raise at > the > same time > > Besides I would prefer to have the 'rounded' look to the buttons simply to > match > the rest of my screen design > > > > I know many people have done this sort of thing before - But how have you > managed it on a continuous form driven by a table > > > > Many thanks in advance > > > > Darren > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/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 dbdoug at gmail.com Tue Sep 9 10:51:36 2008 From: dbdoug at gmail.com (Doug Steele) Date: Tue, 9 Sep 2008 08:51:36 -0700 Subject: [AccessD] How to charge for new db features? Message-ID: <4dd71a0c0809090851y3a65aeaalc10b97109fcd7393@mail.gmail.com> I'm currently developing an 'auto-installer' for one of my clients, based on some of the ideas I've gleaned from this list. It will automatically copy over new versions of FE databases from a folder on the server as needed. The client didn't exactly request that I built this, but I decided to try it based on comments from him (I have lots of leeway about new features), and I know he'll be happy to pay for the development time (approx 2-3 hours) when he finds he no longer has to fuss with copying new versions over his network. This feature will be useful for my other clients with the same kind of setup, and I will incorporate it into updated versions as I create them. I'm interested to find out how others charge for this kind of development work. Once the code is tested, it will be 10 minutes work to insert it into an existing FE; do you charge the development client 3 hours and everyone else 10 minutes? Split the development time between all the clients who can use it? Charge everyone 3 hours? Thanks, Doug Steele From rockysmolin at bchacc.com Tue Sep 9 10:52:03 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Tue, 9 Sep 2008 08:52:03 -0700 Subject: [AccessD] Feedback Needed Message-ID: <09b701c91294$0120b3f0$0301a8c0@HAL9005> Dear List(s): Pundit (my local journalist and reason for living) and I have decided to start her a new business. Based on some experience she had last year helping Max and some of his little friends with their college essays, we think providing this service might be a viable business and the key to supporting me in a style I'd like to become accustomed to someday. So web developer extraordinaire, Karen Rosensteil, has put up a site based on our input and since your feedback was so valuable in making my site look beautiful, I thought I could impose (with the forbearance of the AccessD moderators) on you all to take a look at the site and give us some feedback on design, content, and anything else you think would be useful. For design and content feedback, hopefully it's close enough to topic that it will be of some value to the list in general. Otherwise, if you're shy or whatever, please feel free to email me offline with your comments (rockysmolin at bchacc.com). the URL is www.marshasutton.com First question - should we get CollegeEssayServices.com? MMTIA, Rocky From rockysmolin at bchacc.com Tue Sep 9 11:03:47 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Tue, 9 Sep 2008 09:03:47 -0700 Subject: [AccessD] How to charge for new db features? In-Reply-To: <4dd71a0c0809090851y3a65aeaalc10b97109fcd7393@mail.gmail.com> References: <4dd71a0c0809090851y3a65aeaalc10b97109fcd7393@mail.gmail.com> Message-ID: <09c701c91295$a48ef870$0301a8c0@HAL9005> The price of software is more often based on perceived value to the user rather than the work that went in to developing it. For an add-on that will work for several clients, I try find a number that the client thinks is a bargain and charge everybody that amount. I have no problem 'leveraging' my work by providing to other clients, at a price they find attractive, work that was wholly or partially done at the request of one client. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Doug Steele Sent: Tuesday, September 09, 2008 8:52 AM To: accessd at databaseadvisors.com Subject: [AccessD] How to charge for new db features? I'm currently developing an 'auto-installer' for one of my clients, based on some of the ideas I've gleaned from this list. It will automatically copy over new versions of FE databases from a folder on the server as needed. The client didn't exactly request that I built this, but I decided to try it based on comments from him (I have lots of leeway about new features), and I know he'll be happy to pay for the development time (approx 2-3 hours) when he finds he no longer has to fuss with copying new versions over his network. This feature will be useful for my other clients with the same kind of setup, and I will incorporate it into updated versions as I create them. I'm interested to find out how others charge for this kind of development work. Once the code is tested, it will be 10 minutes work to insert it into an existing FE; do you charge the development client 3 hours and everyone else 10 minutes? Split the development time between all the clients who can use it? Charge everyone 3 hours? Thanks, Doug Steele -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From dwaters at usinternet.com Tue Sep 9 11:04:41 2008 From: dwaters at usinternet.com (Dan Waters) Date: Tue, 9 Sep 2008 11:04:41 -0500 Subject: [AccessD] How to charge for new db features? In-Reply-To: <4dd71a0c0809090851y3a65aeaalc10b97109fcd7393@mail.gmail.com> References: <4dd71a0c0809090851y3a65aeaalc10b97109fcd7393@mail.gmail.com> Message-ID: Hi Doug, For three hours - I would mark it off to goodwill for this client, and present it to your other clients as a standard improvement. If you expect continued work from these clients, they'll know that their life is easier because you made it that way, and you can do it again! You might look at Tony Toews' Auto FE Updater - it's free and proven. http://www.granite.ab.ca/access/autofe.htm Good Luck! Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Doug Steele Sent: Tuesday, September 09, 2008 10:52 AM To: accessd at databaseadvisors.com Subject: [AccessD] How to charge for new db features? I'm currently developing an 'auto-installer' for one of my clients, based on some of the ideas I've gleaned from this list. It will automatically copy over new versions of FE databases from a folder on the server as needed. The client didn't exactly request that I built this, but I decided to try it based on comments from him (I have lots of leeway about new features), and I know he'll be happy to pay for the development time (approx 2-3 hours) when he finds he no longer has to fuss with copying new versions over his network. This feature will be useful for my other clients with the same kind of setup, and I will incorporate it into updated versions as I create them. I'm interested to find out how others charge for this kind of development work. Once the code is tested, it will be 10 minutes work to insert it into an existing FE; do you charge the development client 3 hours and everyone else 10 minutes? Split the development time between all the clients who can use it? Charge everyone 3 hours? Thanks, Doug Steele -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From John.Serrano at dayzim.com Tue Sep 9 14:31:14 2008 From: John.Serrano at dayzim.com (Serrano, John K) Date: Tue, 9 Sep 2008 15:31:14 -0400 Subject: [AccessD] Numeric Field Overflow Message-ID: <441B3C415B36F54397BC7CC8567776E7035C94D9@tagmail.corp.dayzim.com> I am getting a numeric field overflow error when I am importing a text file into an access db. Originally, I had all the tables, forms, queries, and reports in one access application and never got this error. Once I split out the access programs into two separate databases utilizing one access application to store all of the data (tables) and the other access application as a front end application. I linked the tables and tried importing the same file and received a "Numeric Field Overflow" error. However when I merge the tables back into the access application I don't get this message? Any ideas as to what is going on? John Serrano From garykjos at gmail.com Tue Sep 9 15:14:47 2008 From: garykjos at gmail.com (Gary Kjos) Date: Tue, 9 Sep 2008 15:14:47 -0500 Subject: [AccessD] Numeric Field Overflow In-Reply-To: <441B3C415B36F54397BC7CC8567776E7035C94D9@tagmail.corp.dayzim.com> References: <441B3C415B36F54397BC7CC8567776E7035C94D9@tagmail.corp.dayzim.com> Message-ID: Evidently it's been doing this for a while. http://bytes.com/forum/thread197772.html References the same issue in Access 97. Table internal to database works and linked gives error you are experiencing. And here is another posting regardingthe same issue - version not identified. http://www.dbforums.com/archive/index.php/t-1211186.html Perhaps you could import into a temp table in the front end and then append from there to your linked backend table? This link implies that one o fyour field types may be defined incorrectly and it only cares when it's a linked table and not if it's a local table. http://bytes.com/forum/thread210094.html So perhaps if you verify that your table definitions all match the data correctly you can fix it? I personally usually import into a temp table with most fields defined as text and then append to my real table from there once I am relatively sure of the data being formatted correctly. Good luck! GK On 9/9/08, Serrano, John K wrote: > I am getting a numeric field overflow error when I am importing a text > file into an access db. > > > > Originally, I had all the tables, forms, queries, and reports in one > access application and never got this error. > > Once I split out the access programs into two separate databases > utilizing one access application to store all of the data (tables) and > the other access application as a front end application. > > I linked the tables and tried importing the same file and received a > "Numeric Field Overflow" error. > > > > However when I merge the tables back into the access application I don't > get this message? > > Any ideas as to what is going on? > > > > John Serrano > > > > -- > 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 jengross at gte.net Tue Sep 9 17:49:30 2008 From: jengross at gte.net (Jennifer Gross) Date: Tue, 09 Sep 2008 14:49:30 -0800 Subject: [AccessD] Access Security - Groups' Permissions on Objects Message-ID: <0K6Y00GN77JB5NN4@vms044.mailsrvcs.net> A2K - native Access security. For a particular Group, how can I get a list of the object permissions? TIA, Jennifer Gross From Gustav at cactus.dk Wed Sep 10 01:06:14 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 10 Sep 2008 08:06:14 +0200 Subject: [AccessD] Microsoft Sync Framework Message-ID: Hi all Has anyone used this? Looks promising. Microsoft Sync Framework is a comprehensive synchronization platform that enables collaboration and offline scenarios for applications, services and devices. Developers can build sync ecosystems that integrate any application, any type of data, using any protocol over any network. The Microsoft Sync Framework provides a platform for taking web services and databases offline. In addition, it provides optimized P2P sync of any type of file including contacts, music, videos, images and settings. The extensible framework includes built-in support for synchronizing databases, NTFS/FAT file systems, FeedSync compliant feeds (formerly known as Simple Sharing Extensions), devices and web services. Introduction to the Microsoft Sync Framework http://www.microsoft.com/downloads/details.aspx?familyid=1A4A7EDB-DD09-45D5-8D95-4D695DB3F258&displaylang=en Microsoft Sync Framework v1.0 download: http://www.microsoft.com/downloads/details.aspx?FamilyId=C88BA2D1-CEF3-4149-B301-9B056E7FB1E6&displaylang=en /gustav From markamatte at hotmail.com Wed Sep 10 07:51:46 2008 From: markamatte at hotmail.com (Mark A Matte) Date: Wed, 10 Sep 2008 12:51:46 +0000 Subject: [AccessD] A2003: Table Driven button list on Continuous Forms In-Reply-To: <000901c9120d$ef205c40$0d1b910a@denzilnote> References: <000001c911ad$e0691fd0$0d1b910a@denzilnote> <006101c91208$0fc64460$6501a8c0@DELLAPTOP> <000901c9120d$ef205c40$0d1b910a@denzilnote> Message-ID: Darren, I done something similar...but not with buttons. So I modified to see if I could get what you need. I used a form,subform, and table. I got the idea from a sample Candace Tripp had on her site years ago. There is no error handling...just code. Let me know if you have any questions or need a sample mdb. Thanks, Mark A. Matte Here is the code for each form: SubForm: sfrmMyButtons Option Compare Database Function ImClicked() Dim CNM Dim ctlCurrentControl As Control Set ctlCurrentControl = Screen.ActiveControl CNM = Right(ctlCurrentControl.Name, Len(ctlCurrentControl.Name) - 4) If Me("tgl_" & CNM) = 0 Or IsNull(Me("tgl_" & CNM)) = True Then Me("tgl_" & CNM) = -1 Me("lb1_" & CNM).Visible = False Me("lb2_" & CNM).Visible = True Else Me("tgl_" & CNM) = 0 Me("lb1_" & CNM).Visible = True Me("lb2_" & CNM).Visible = False End If End Function Main Form: frmMakeButton Function MakeButtons() Dim dbs As Database, rst As Recordset, intI As Integer Dim ctlLabel As Control, ctlText As Control, ctlToggle As Control, ctlButton As Control Dim intDataX As Integer, intDataY As Integer Dim intLabelX As Integer, intLabelY As Integer DoCmd.OpenForm "sfrmMyButtons", acDesign Dim ctl As Control LoopAgain: For Each ctl In Forms!sfrmMyButtons.Controls Dim test DeleteControl "sfrmMyButtons", ctl.Name Next ctl If Forms!sfrmMyButtons.Controls.Count> 0 Then GoTo LoopAgain Set dbs = CurrentDb Set rst = dbs.OpenRecordset("SELECT Table2.emails FROM Table2 WHERE Table2.Group= '" & [Forms]![frmMakeButton]![Combo3] & "';") rst.MoveLast rst.MoveFirst intLabelX = 100 intLabelY = 100 intDataX = 1000 intDataY = 100 For intI = 1 To rst.RecordCount '******************************** Set ctlToggle = CreateControl("sfrmMyButtons", acToggleButton, , "", "", intLabelX, intLabelY, 2000, 500) ctlToggle.Name = "tgl_" & rst!emails ctlToggle.TabStop = 0 ctlToggle.Enabled = False Set ctlLabel = CreateControl("sfrmMyButtons", acLabel, , "", "66666666662222222000000", intLabelX, intLabelY, 2000, 500) ctlLabel.Name = "lb1_" & rst!emails ctlLabel.Caption = rst!emails ctlLabel.TextAlign = 2 Set ctlLabel = CreateControl("sfrmMyButtons", acLabel, , "", "66666666662222222000000", intLabelX, intLabelY + 100, 2000, 500) ctlLabel.Name = "lb2_" & rst!emails ctlLabel.Caption = rst!emails ctlLabel.TextAlign = 2 ctlLabel.Visible = False Set ctlButton = CreateControl("sfrmMyButtons", acCommandButton, , "", "66666666662222222000000", intLabelX, intLabelY, 2000, 500) ctlButton.Visible = True ctlButton.Name = "cmd_" & rst!emails ctlButton.Transparent = True ctlButton.OnMouseDown = "=imClicked()" ctlButton.OnMouseUp = "=imClicked()" intLabelY = intLabelY + 500 '******************************** rst.MoveNext Next intI Set dbs = Nothing Set rst = Nothing DoCmd.Close acForm, "sfrmMyButtons", acSaveYes End Function Private Sub Combo3_AfterUpdate() Me!sfrmMyButtons.SourceObject = "" MakeButtons Me!sfrmMyButtons.SourceObject = "sfrmMyButtons" End Sub > From: darren at activebilling.com.au > To: accessd at databaseadvisors.com > Date: Tue, 9 Sep 2008 09:52:18 +1000 > Subject: Re: [AccessD] A2003: Table Driven button list on Continuous Forms > > Hi Kath > > Thanks for the reply > I just wanted to build a list of buttons (that grows and shrinks)on a continuous > form for each of our clients. Clients are selected by tabs and the list of > buttons is 'built' on each tab click (In a sub form). The table is a list of > applications each client has and I want a button list of their applications and > I wanted the caption on the button and the list of buttons to be table driven. > > That ain't gonna work. So I used a transparent text box over the no caption > button that looked OK until you click it. Then the mouse simply moves to the > text box and the text of 'the button' is selected. Then I wanted the 'look' of a > button being pushed and look of a button being released when the mouse got to > this transparent text box. Too tricky > > I gave up - can't easily be done and I have already used an inappropriate amount > of time chasing the 'look' > > Darren > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Kath Pelletti > Sent: Tuesday, 9 September 2008 9:10 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] A2003: Table Driven button list on Continuous Forms > > Darrren - > > I'm not sure that I *entirely* understand what you are trying to do, but if > you want bound controls which look like rounded buttons, then can draw a > rounded button (in Word or PPoint), and then sit the bound control on top of > it (text box) and set it's back style to transparent. > > Why do you need a mouse down/up event? > > kath > > ----- Original Message ----- > From: "Darren D" > To: "'Access Developers discussion and problem solving'" > > Sent: Monday, September 08, 2008 10:24 PM > Subject: [AccessD] A2003: Table Driven button list on Continuous Forms > > >> Hi All >> >> >> >> I have a table of application names that will grow and shrink with many >> fields >> but the 2 of interest are. >> >> APPID = AutoNumber and AppName = Text >> >> >> >> I want a continuous form to have a button for each item in that table. >> >> Trouble is It is a bit tricky to get the caption for each button to = the >> AppName for each record in the table >> >> I can 'fake' it using labels but if I write a routine to simulate a mouse >> down >> and mouse up to mimic raises and depressions then >> >> all the labels that are simulated buttons on the form depress and raise at >> the >> same time >> >> Besides I would prefer to have the 'rounded' look to the buttons simply to >> match >> the rest of my screen design >> >> >> >> I know many people have done this sort of thing before - But how have you >> managed it on a continuous form driven by a table >> >> >> >> Many thanks in advance >> >> >> >> Darren >> >> >> >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/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 _________________________________________________________________ See how Windows connects the people, information, and fun that are part of your life. http://clk.atdmt.com/MRT/go/msnnkwxp1020093175mrt/direct/01/ From markamatte at hotmail.com Wed Sep 10 08:57:46 2008 From: markamatte at hotmail.com (Mark A Matte) Date: Wed, 10 Sep 2008 13:57:46 +0000 Subject: [AccessD] A2003: Table Driven button list on Continuous Forms In-Reply-To: References: <000001c911ad$e0691fd0$0d1b910a@denzilnote> <006101c91208$0fc64460$6501a8c0@DELLAPTOP> <000901c9120d$ef205c40$0d1b910a@denzilnote> Message-ID: Sorry...this is not on a continuos form...but I think the concept is here in spirit. If you have 5 records...you get 5 buttons...3 records...3 buttons. Mark > From: markamatte at hotmail.com > To: accessd at databaseadvisors.com > Date: Wed, 10 Sep 2008 12:51:46 +0000 > Subject: Re: [AccessD] A2003: Table Driven button list on Continuous Forms > > > Darren, > > I done something similar...but not with buttons. So I modified to see if I could get what you need. I used a form,subform, and table. I got the idea from a sample Candace Tripp had on her site years ago. There is no error handling...just code. > > Let me know if you have any questions or need a sample mdb. > > Thanks, > > Mark A. Matte > > Here is the code for each form: > SubForm: sfrmMyButtons > > Option Compare Database > > Function ImClicked() > Dim CNM > Dim ctlCurrentControl As Control > > Set ctlCurrentControl = Screen.ActiveControl > CNM = Right(ctlCurrentControl.Name, Len(ctlCurrentControl.Name) - 4) > > If Me("tgl_" & CNM) = 0 Or IsNull(Me("tgl_" & CNM)) = True Then > Me("tgl_" & CNM) = -1 > Me("lb1_" & CNM).Visible = False > Me("lb2_" & CNM).Visible = True > Else > Me("tgl_" & CNM) = 0 > Me("lb1_" & CNM).Visible = True > Me("lb2_" & CNM).Visible = False > End If > End Function > > > Main Form: frmMakeButton > > > Function MakeButtons() > Dim dbs As Database, rst As Recordset, intI As Integer > Dim ctlLabel As Control, ctlText As Control, ctlToggle As Control, ctlButton As Control > Dim intDataX As Integer, intDataY As Integer > Dim intLabelX As Integer, intLabelY As Integer > DoCmd.OpenForm "sfrmMyButtons", acDesign > > Dim ctl As Control > LoopAgain: > For Each ctl In Forms!sfrmMyButtons.Controls > Dim test > DeleteControl "sfrmMyButtons", ctl.Name > Next ctl > If Forms!sfrmMyButtons.Controls.Count> 0 Then GoTo LoopAgain > Set dbs = CurrentDb > Set rst = dbs.OpenRecordset("SELECT Table2.emails FROM Table2 WHERE Table2.Group= '" & [Forms]![frmMakeButton]![Combo3] & "';") > > rst.MoveLast > rst.MoveFirst > > intLabelX = 100 > intLabelY = 100 > intDataX = 1000 > intDataY = 100 > > For intI = 1 To rst.RecordCount > '******************************** > Set ctlToggle = CreateControl("sfrmMyButtons", acToggleButton, , "", "", intLabelX, intLabelY, 2000, 500) > ctlToggle.Name = "tgl_" & rst!emails > ctlToggle.TabStop = 0 > ctlToggle.Enabled = False > Set ctlLabel = CreateControl("sfrmMyButtons", acLabel, , "", "66666666662222222000000", intLabelX, intLabelY, 2000, 500) > ctlLabel.Name = "lb1_" & rst!emails > ctlLabel.Caption = rst!emails > ctlLabel.TextAlign = 2 > Set ctlLabel = CreateControl("sfrmMyButtons", acLabel, , "", "66666666662222222000000", intLabelX, intLabelY + 100, 2000, 500) > ctlLabel.Name = "lb2_" & rst!emails > ctlLabel.Caption = rst!emails > ctlLabel.TextAlign = 2 > ctlLabel.Visible = False > Set ctlButton = CreateControl("sfrmMyButtons", acCommandButton, , "", "66666666662222222000000", intLabelX, intLabelY, 2000, 500) > ctlButton.Visible = True > ctlButton.Name = "cmd_" & rst!emails > ctlButton.Transparent = True > ctlButton.OnMouseDown = "=imClicked()" > ctlButton.OnMouseUp = "=imClicked()" > intLabelY = intLabelY + 500 > > '******************************** > rst.MoveNext > > Next intI > Set dbs = Nothing > Set rst = Nothing > DoCmd.Close acForm, "sfrmMyButtons", acSaveYes > End Function > > Private Sub Combo3_AfterUpdate() > Me!sfrmMyButtons.SourceObject = "" > MakeButtons > Me!sfrmMyButtons.SourceObject = "sfrmMyButtons" > End Sub > >> From: darren at activebilling.com.au >> To: accessd at databaseadvisors.com >> Date: Tue, 9 Sep 2008 09:52:18 +1000 >> Subject: Re: [AccessD] A2003: Table Driven button list on Continuous Forms >> >> Hi Kath >> >> Thanks for the reply >> I just wanted to build a list of buttons (that grows and shrinks)on a continuous >> form for each of our clients. Clients are selected by tabs and the list of >> buttons is 'built' on each tab click (In a sub form). The table is a list of >> applications each client has and I want a button list of their applications and >> I wanted the caption on the button and the list of buttons to be table driven. >> >> That ain't gonna work. So I used a transparent text box over the no caption >> button that looked OK until you click it. Then the mouse simply moves to the >> text box and the text of 'the button' is selected. Then I wanted the 'look' of a >> button being pushed and look of a button being released when the mouse got to >> this transparent text box. Too tricky >> >> I gave up - can't easily be done and I have already used an inappropriate amount >> of time chasing the 'look' >> >> Darren >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Kath Pelletti >> Sent: Tuesday, 9 September 2008 9:10 AM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] A2003: Table Driven button list on Continuous Forms >> >> Darrren - >> >> I'm not sure that I *entirely* understand what you are trying to do, but if >> you want bound controls which look like rounded buttons, then can draw a >> rounded button (in Word or PPoint), and then sit the bound control on top of >> it (text box) and set it's back style to transparent. >> >> Why do you need a mouse down/up event? >> >> kath >> >> ----- Original Message ----- >> From: "Darren D" >> To: "'Access Developers discussion and problem solving'" >> >> Sent: Monday, September 08, 2008 10:24 PM >> Subject: [AccessD] A2003: Table Driven button list on Continuous Forms >> >> >>> Hi All >>> >>> >>> >>> I have a table of application names that will grow and shrink with many >>> fields >>> but the 2 of interest are. >>> >>> APPID = AutoNumber and AppName = Text >>> >>> >>> >>> I want a continuous form to have a button for each item in that table. >>> >>> Trouble is It is a bit tricky to get the caption for each button to = the >>> AppName for each record in the table >>> >>> I can 'fake' it using labels but if I write a routine to simulate a mouse >>> down >>> and mouse up to mimic raises and depressions then >>> >>> all the labels that are simulated buttons on the form depress and raise at >>> the >>> same time >>> >>> Besides I would prefer to have the 'rounded' look to the buttons simply to >>> match >>> the rest of my screen design >>> >>> >>> >>> I know many people have done this sort of thing before - But how have you >>> managed it on a continuous form driven by a table >>> >>> >>> >>> Many thanks in advance >>> >>> >>> >>> Darren >>> >>> >>> >>> -- >>> AccessD mailing list >>> AccessD at databaseadvisors.com >>> http://databaseadvisors.com/mailman/listinfo/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 > > _________________________________________________________________ > See how Windows connects the people, information, and fun that are part of your life. > http://clk.atdmt.com/MRT/go/msnnkwxp1020093175mrt/direct/01/ > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com _________________________________________________________________ Stay up to date on your PC, the Web, and your mobile phone with Windows Live. http://clk.atdmt.com/MRT/go/msnnkwxp1020093185mrt/direct/01/ From accessd at shaw.ca Wed Sep 10 12:03:00 2008 From: accessd at shaw.ca (Jim Lawrence) Date: Wed, 10 Sep 2008 10:03:00 -0700 Subject: [AccessD] SOAP on SSL In-Reply-To: References: Message-ID: <654D6EAAD09C443A961FF4F75D785E37@creativesystemdesigns.com> Hi All: Does anyone have any experience creating a secure session from a .Net site to a PHP site. The PHP end will be managed but the .Net and the connection method is my responsibilty. Would SOAP on SSL be a good connection protocol? Any help of suggestions, code samples would be much appreciated. MTIA Jim From darren at activebilling.com.au Wed Sep 10 19:03:47 2008 From: darren at activebilling.com.au (Darren D) Date: Thu, 11 Sep 2008 10:03:47 +1000 Subject: [AccessD] A2003: Table Driven button list on Continuous Forms In-Reply-To: References: <000001c911ad$e0691fd0$0d1b910a@denzilnote><006101c91208$0fc64460$6501a8c0@DELLAPTOP> <000901c9120d$ef205c40$0d1b910a@denzilnote> Message-ID: <001a01c913a1$de647e00$0d1b910a@denzilnote> Hi Mark Genius - Love it - It does exactly what I wanted - I only went with Cont Forms as I thought this would be the best way to achieve buttons on the fly This has opened a whole new world for this project and I can go back to single record forms as my subform - Way Cool This may also sort out an issue I have with a set number of TABS on the form not being enough and having to add more in design view then redistribute the app, versus 'creating' the required number on the fly - oooooh I am excited Many many thanks Darren -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mark A Matte Sent: Wednesday, 10 September 2008 11:58 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] A2003: Table Driven button list on Continuous Forms Sorry...this is not on a continuos form...but I think the concept is here in spirit. If you have 5 records...you get 5 buttons...3 records...3 buttons. Mark > From: markamatte at hotmail.com > To: accessd at databaseadvisors.com > Date: Wed, 10 Sep 2008 12:51:46 +0000 > Subject: Re: [AccessD] A2003: Table Driven button list on Continuous Forms > > > Darren, > > I done something similar...but not with buttons. So I modified to see if I could get what you need. I used a form,subform, and table. I got the idea from a sample Candace Tripp had on her site years ago. There is no error handling...just code. > > Let me know if you have any questions or need a sample mdb. > > Thanks, > > Mark A. Matte > > Here is the code for each form: > SubForm: sfrmMyButtons > > Option Compare Database > > Function ImClicked() > Dim CNM > Dim ctlCurrentControl As Control > > Set ctlCurrentControl = Screen.ActiveControl > CNM = Right(ctlCurrentControl.Name, Len(ctlCurrentControl.Name) - 4) > > If Me("tgl_" & CNM) = 0 Or IsNull(Me("tgl_" & CNM)) = True Then > Me("tgl_" & CNM) = -1 > Me("lb1_" & CNM).Visible = False > Me("lb2_" & CNM).Visible = True > Else > Me("tgl_" & CNM) = 0 > Me("lb1_" & CNM).Visible = True > Me("lb2_" & CNM).Visible = False > End If > End Function > > > Main Form: frmMakeButton > > > Function MakeButtons() > Dim dbs As Database, rst As Recordset, intI As Integer > Dim ctlLabel As Control, ctlText As Control, ctlToggle As Control, ctlButton As Control > Dim intDataX As Integer, intDataY As Integer > Dim intLabelX As Integer, intLabelY As Integer > DoCmd.OpenForm "sfrmMyButtons", acDesign > > Dim ctl As Control > LoopAgain: > For Each ctl In Forms!sfrmMyButtons.Controls > Dim test > DeleteControl "sfrmMyButtons", ctl.Name > Next ctl > If Forms!sfrmMyButtons.Controls.Count> 0 Then GoTo LoopAgain > Set dbs = CurrentDb > Set rst = dbs.OpenRecordset("SELECT Table2.emails FROM Table2 WHERE Table2.Group= '" & [Forms]![frmMakeButton]![Combo3] & "';") > > rst.MoveLast > rst.MoveFirst > > intLabelX = 100 > intLabelY = 100 > intDataX = 1000 > intDataY = 100 > > For intI = 1 To rst.RecordCount > '******************************** > Set ctlToggle = CreateControl("sfrmMyButtons", acToggleButton, , "", "", intLabelX, intLabelY, 2000, 500) > ctlToggle.Name = "tgl_" & rst!emails > ctlToggle.TabStop = 0 > ctlToggle.Enabled = False > Set ctlLabel = CreateControl("sfrmMyButtons", acLabel, , "", "66666666662222222000000", intLabelX, intLabelY, 2000, 500) > ctlLabel.Name = "lb1_" & rst!emails > ctlLabel.Caption = rst!emails > ctlLabel.TextAlign = 2 > Set ctlLabel = CreateControl("sfrmMyButtons", acLabel, , "", "66666666662222222000000", intLabelX, intLabelY + 100, 2000, 500) > ctlLabel.Name = "lb2_" & rst!emails > ctlLabel.Caption = rst!emails > ctlLabel.TextAlign = 2 > ctlLabel.Visible = False > Set ctlButton = CreateControl("sfrmMyButtons", acCommandButton, , "", "66666666662222222000000", intLabelX, intLabelY, 2000, 500) > ctlButton.Visible = True > ctlButton.Name = "cmd_" & rst!emails > ctlButton.Transparent = True > ctlButton.OnMouseDown = "=imClicked()" > ctlButton.OnMouseUp = "=imClicked()" > intLabelY = intLabelY + 500 > > '******************************** > rst.MoveNext > > Next intI > Set dbs = Nothing > Set rst = Nothing > DoCmd.Close acForm, "sfrmMyButtons", acSaveYes > End Function > > Private Sub Combo3_AfterUpdate() > Me!sfrmMyButtons.SourceObject = "" > MakeButtons > Me!sfrmMyButtons.SourceObject = "sfrmMyButtons" > End Sub > >> From: darren at activebilling.com.au >> To: accessd at databaseadvisors.com >> Date: Tue, 9 Sep 2008 09:52:18 +1000 >> Subject: Re: [AccessD] A2003: Table Driven button list on Continuous Forms >> >> Hi Kath >> >> Thanks for the reply >> I just wanted to build a list of buttons (that grows and shrinks)on a continuous >> form for each of our clients. Clients are selected by tabs and the list of >> buttons is 'built' on each tab click (In a sub form). The table is a list of >> applications each client has and I want a button list of their applications and >> I wanted the caption on the button and the list of buttons to be table driven. >> >> That ain't gonna work. So I used a transparent text box over the no caption >> button that looked OK until you click it. Then the mouse simply moves to the >> text box and the text of 'the button' is selected. Then I wanted the 'look' of a >> button being pushed and look of a button being released when the mouse got to >> this transparent text box. Too tricky >> >> I gave up - can't easily be done and I have already used an inappropriate amount >> of time chasing the 'look' >> >> Darren >> >> -----Original Message----- >> From: accessd-bounces at databaseadvisors.com >> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Kath Pelletti >> Sent: Tuesday, 9 September 2008 9:10 AM >> To: Access Developers discussion and problem solving >> Subject: Re: [AccessD] A2003: Table Driven button list on Continuous Forms >> >> Darrren - >> >> I'm not sure that I *entirely* understand what you are trying to do, but if >> you want bound controls which look like rounded buttons, then can draw a >> rounded button (in Word or PPoint), and then sit the bound control on top of >> it (text box) and set it's back style to transparent. >> >> Why do you need a mouse down/up event? >> >> kath >> >> ----- Original Message ----- >> From: "Darren D" >> To: "'Access Developers discussion and problem solving'" >> >> Sent: Monday, September 08, 2008 10:24 PM >> Subject: [AccessD] A2003: Table Driven button list on Continuous Forms >> >> >>> Hi All >>> >>> >>> >>> I have a table of application names that will grow and shrink with many >>> fields >>> but the 2 of interest are. >>> >>> APPID = AutoNumber and AppName = Text >>> >>> >>> >>> I want a continuous form to have a button for each item in that table. >>> >>> Trouble is It is a bit tricky to get the caption for each button to = the >>> AppName for each record in the table >>> >>> I can 'fake' it using labels but if I write a routine to simulate a mouse >>> down >>> and mouse up to mimic raises and depressions then >>> >>> all the labels that are simulated buttons on the form depress and raise at >>> the >>> same time >>> >>> Besides I would prefer to have the 'rounded' look to the buttons simply to >>> match >>> the rest of my screen design >>> >>> >>> >>> I know many people have done this sort of thing before - But how have you >>> managed it on a continuous form driven by a table >>> >>> >>> >>> Many thanks in advance >>> >>> >>> >>> Darren >>> >>> >>> >>> -- >>> AccessD mailing list >>> AccessD at databaseadvisors.com >>> http://databaseadvisors.com/mailman/listinfo/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 > > _________________________________________________________________ > See how Windows connects the people, information, and fun that are part of your life. > http://clk.atdmt.com/MRT/go/msnnkwxp1020093175mrt/direct/01/ > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com _________________________________________________________________ Stay up to date on your PC, the Web, and your mobile phone with Windows Live. http://clk.atdmt.com/MRT/go/msnnkwxp1020093185mrt/direct/01/ -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Darryl.Collins at coles.com.au Thu Sep 11 00:48:50 2008 From: Darryl.Collins at coles.com.au (Darryl Collins) Date: Thu, 11 Sep 2008 15:48:50 +1000 Subject: [AccessD] Controlling Custom Toolbars In-Reply-To: <001a01c913a1$de647e00$0d1b910a@denzilnote> Message-ID: <57E6E6CA42105A48B977303A2CDC2720076DA26F1A@WPEXCH22.retail.ad.cmltd.net.au> Hi Folks, When I code in Excel I use custom toolbars a lot and they are dead easy to control. Often each set will have it own toolbar that has tools specific to its purpose and these are turned off and off using worksheet activate/deactive. In this Access beastie I am building I have made up a nice little custom toolbar, but I only want it to be available on when certain forms are active. Struggling to get the syntax right on making the toolbar appear / disappear. Here is what I have go so far (which works - it is just too darn untidy - there has to be a better way). '========WHAT I HAVE (which works) ======================= Sub RemoveDataEditToolbar() Dim mtb As Variant ' <-- Don't like using variant, but it is the only thing I can find that works. Dim strToolbar As String strToolbar = "IT PMO Financial Control Tool" For Each mtb In CommandBars ' <-- Don't like having to loop. Just want to set this to true or false If mtb.Name = strToolbar Then mtb.Visible = False MsgBox mtb.Name & " Hidden" End If Next mtb End Sub '=============================================== '========WHAT I WANT (which doesn't) =================== Sub RemoveDataEditToolbar() Dim mtb As Access.CommandBar Dim strToolbar As String strToolbar = "IT PMO Financial Control Tool" Set mtb = Access.CommandBar.Name(strToolbar) mtb.Visible = False set mtb = nothing End Sub '=============================================== Any ideas? cheers Darryl This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. From stuart at lexacorp.com.pg Thu Sep 11 01:07:03 2008 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Thu, 11 Sep 2008 16:07:03 +1000 Subject: [AccessD] Controlling Custom Toolbars In-Reply-To: <57E6E6CA42105A48B977303A2CDC2720076DA26F1A@WPEXCH22.retail.ad.cmltd.net.au> References: <001a01c913a1$de647e00$0d1b910a@denzilnote>, <57E6E6CA42105A48B977303A2CDC2720076DA26F1A@WPEXCH22.retail.ad.cmltd.net.au> Message-ID: <48C8B587.17715.9BE32927@stuart.lexacorp.com.pg> If you ONLY want the custom toolbar (ie you don't want the default Form toolbar as well), just set the Toolbar property in the Forms Property Sheet-Other tab. Otherwise use DoCmd.ShowToolbar "IT PMO Financial Control Tool", acToolbarYes and DoCmd.ShowToolbar "IT PMO Financial Control Tool", acToolbarNo to display/hide it. On 11 Sep 2008 at 15:48, Darryl Collins wrote: > Hi Folks, > > When I code in Excel I use custom toolbars a lot and they are dead > easy to control. Often each set will have it own toolbar that has > tools specific to its purpose and these are turned off and off using > worksheet activate/deactive. > > In this Access beastie I am building I have made up a nice little > custom toolbar, but I only want it to be available on when certain > forms are active. Struggling to get the syntax right on making the > toolbar appear / disappear. > > Here is what I have go so far (which works - it is just too darn untidy - there has to be a better way). > > '========WHAT I HAVE (which works) ======================= > Sub RemoveDataEditToolbar() > > Dim mtb As Variant ' <-- Don't like using variant, but it is the only thing I can find that works. > Dim strToolbar As String > > strToolbar = "IT PMO Financial Control Tool" > > For Each mtb In CommandBars ' <-- Don't like having to loop. Just want to set this to true or false > If mtb.Name = strToolbar Then > mtb.Visible = False > MsgBox mtb.Name & " Hidden" > End If > Next mtb > End Sub > '=============================================== > > '========WHAT I WANT (which doesn't) =================== > Sub RemoveDataEditToolbar() > > Dim mtb As Access.CommandBar > Dim strToolbar As String > > strToolbar = "IT PMO Financial Control Tool" > Set mtb = Access.CommandBar.Name(strToolbar) > mtb.Visible = False > > set mtb = nothing > End Sub > '=============================================== > > > Any ideas? > > cheers > Darryl > > This email and any attachments may contain privileged and confidential information > and are intended for the named addressee only. If you have received this e-mail in > error, please notify the sender and delete this e-mail immediately. Any > confidentiality, privilege or copyright is not waived or lost because this e-mail > has been sent to you in error. It is your responsibility to check this e-mail and > any attachments for viruses. No warranty is made that this material is free from > computer virus or any other defect or error. Any loss/damage incurred by using this > material is not the sender's responsibility. The sender's entire liability will be > limited to resupplying the material. > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- Stuart Mclachlan From Darryl.Collins at coles.com.au Thu Sep 11 01:14:59 2008 From: Darryl.Collins at coles.com.au (Darryl Collins) Date: Thu, 11 Sep 2008 16:14:59 +1000 Subject: [AccessD] Controlling Custom Toolbars In-Reply-To: <48C8B587.17715.9BE32927@stuart.lexacorp.com.pg> Message-ID: <57E6E6CA42105A48B977303A2CDC2720076DA26F1B@WPEXCH22.retail.ad.cmltd.net.au> ooooOOOooh... You're kidding right? That easy hey? :) hmmmm...... now I feel like a goose hehehe ;). Well, why don't I give that a spin and see how I go. Many thanks stuart. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Stuart McLachlan Sent: Thursday, 11 September 2008 4:07 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Controlling Custom Toolbars If you ONLY want the custom toolbar (ie you don't want the default Form toolbar as well), just set the Toolbar property in the Forms Property Sheet-Other tab. Otherwise use DoCmd.ShowToolbar "IT PMO Financial Control Tool", acToolbarYes and DoCmd.ShowToolbar "IT PMO Financial Control Tool", acToolbarNo to display/hide it. On 11 Sep 2008 at 15:48, Darryl Collins wrote: > Hi Folks, > > When I code in Excel I use custom toolbars a lot and they are dead > easy to control. Often each set will have it own toolbar that has > tools specific to its purpose and these are turned off and off using > worksheet activate/deactive. > > In this Access beastie I am building I have made up a nice little > custom toolbar, but I only want it to be available on when certain > forms are active. Struggling to get the syntax right on making the > toolbar appear / disappear. > > Here is what I have go so far (which works - it is just too darn untidy - there has to be a better way). > > '========WHAT I HAVE (which works) ======================= > Sub RemoveDataEditToolbar() > > Dim mtb As Variant ' <-- Don't like using variant, but it is the only thing I can find that works. > Dim strToolbar As String > > strToolbar = "IT PMO Financial Control Tool" > > For Each mtb In CommandBars ' <-- Don't like having to loop. Just want to set this to true or false > If mtb.Name = strToolbar Then > mtb.Visible = False > MsgBox mtb.Name & " Hidden" > End If > Next mtb > End Sub > '=============================================== > > '========WHAT I WANT (which doesn't) =================== > Sub RemoveDataEditToolbar() > > Dim mtb As Access.CommandBar > Dim strToolbar As String > > strToolbar = "IT PMO Financial Control Tool" > Set mtb = Access.CommandBar.Name(strToolbar) > mtb.Visible = False > > set mtb = nothing > End Sub > '=============================================== > > > Any ideas? > > cheers > Darryl > > This email and any attachments may contain privileged and confidential information > and are intended for the named addressee only. If you have received this e-mail in > error, please notify the sender and delete this e-mail immediately. Any > confidentiality, privilege or copyright is not waived or lost because this e-mail > has been sent to you in error. It is your responsibility to check this e-mail and > any attachments for viruses. No warranty is made that this material is free from > computer virus or any other defect or error. Any loss/damage incurred by using this > material is not the sender's responsibility. The sender's entire liability will be > limited to resupplying the material. > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- Stuart Mclachlan -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. From miscellany at mvps.org Thu Sep 11 01:25:36 2008 From: miscellany at mvps.org (Steve Schapel) Date: Thu, 11 Sep 2008 18:25:36 +1200 Subject: [AccessD] How to charge for new db features? In-Reply-To: <4dd71a0c0809090851y3a65aeaalc10b97109fcd7393@mail.gmail.com> References: <4dd71a0c0809090851y3a65aeaalc10b97109fcd7393@mail.gmail.com> Message-ID: <48C8B9E0.3040303@mvps.org> Doug, If it's custom development of a requested functionality for a specific client, I generally charge by the hour. End of story. If it takes me less time to build a feature for Client B because I have previously done the same or similar for Client A, well that's Client B's good luck. Swings and roundabouts. Someday Client B will probably be paying full development cost for something that Client C will eventually get cheap. By the way, regarding your project, you may also find this of interest: http://accesstips.datamanagementsolutions.biz/versions.htm Regards Steve Doug Steele wrote: > I'm currently developing an 'auto-installer' for one of my clients, based on > some of the ideas I've gleaned from this list. It will automatically copy > over new versions of FE databases from a folder on the server as needed. > > The client didn't exactly request that I built this, but I decided to try it > based on comments from him (I have lots of leeway about new features), and I > know he'll be happy to pay for the development time (approx 2-3 hours) when > he finds he no longer has to fuss with copying new versions over his > network. > > This feature will be useful for my other clients with the same kind of > setup, and I will incorporate it into updated versions as I create them. > > I'm interested to find out how others charge for this kind of development > work. Once the code is tested, it will be 10 minutes work to insert it into > an existing FE; do you charge the development client 3 hours and everyone > else 10 minutes? Split the development time between all the clients who can > use it? Charge everyone 3 hours? > From dbdoug at gmail.com Thu Sep 11 10:02:33 2008 From: dbdoug at gmail.com (Doug Steele) Date: Thu, 11 Sep 2008 08:02:33 -0700 Subject: [AccessD] How to charge for new db features? In-Reply-To: <48C8B9E0.3040303@mvps.org> References: <4dd71a0c0809090851y3a65aeaalc10b97109fcd7393@mail.gmail.com> <48C8B9E0.3040303@mvps.org> Message-ID: <4dd71a0c0809110802s7ac92712r14a95d56dcdbfe9b@mail.gmail.com> Thanks to the people who gave me some feedback! For the automatic installer code, I used a modified version of the batch writing code here: http://blog.nkadesign.com/microsoft-access/ which has the advantage that it is self contained and doesn't require a separate 'loader' program or database. Doug Steele On Wed, Sep 10, 2008 at 11:25 PM, Steve Schapel wrote: > Doug, > > If it's custom development of a requested functionality for a specific > client, I generally charge by the hour. End of story. If it takes me > less time to build a feature for Client B because I have previously done > the same or similar for Client A, well that's Client B's good luck. > Swings and roundabouts. Someday Client B will probably be paying full > development cost for something that Client C will eventually get cheap. > > By the way, regarding your project, you may also find this of interest: > http://accesstips.datamanagementsolutions.biz/versions.htm > > Regards > > From markamatte at hotmail.com Thu Sep 11 10:05:37 2008 From: markamatte at hotmail.com (Mark A Matte) Date: Thu, 11 Sep 2008 15:05:37 +0000 Subject: [AccessD] A2003: Table Driven button list on Continuous Forms Message-ID: Darren, Glad to help...and thank you for the compliment... I've used this technique for a number of things...especially when I don't have a lot of space. 1 app has a report/status screen...and the user needs to toggle between 3 different recordsets and I didn't want them to go to a different form for each view...so I have 1 subform...and 3 buttons...each button just changes the control source of the subform to display whatever query/recordset I choose. I suppose that could be done with your tab situation. Good luck. Thanks Again, Mark A. Matte > From: darren at activebilling.com.au > To: accessd at databaseadvisors.com > Date: Thu, 11 Sep 2008 10:03:47 +1000 > Subject: Re: [AccessD] A2003: Table Driven button list on Continuous Forms > > Hi Mark > > Genius - Love it - It does exactly what I wanted - I only went with Cont Forms > as I thought this would be the best way to achieve buttons on the fly > > This has opened a whole new world for this project and I can go back to single > record forms as my subform - Way Cool > > This may also sort out an issue I have with a set number of TABS on the form not > being enough and having to add more in design view then redistribute the app, > versus 'creating' the required number on the fly - oooooh I am excited > > Many many thanks > > Darren > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mark A Matte > Sent: Wednesday, 10 September 2008 11:58 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] A2003: Table Driven button list on Continuous Forms > > > Sorry...this is not on a continuos form...but I think the concept is here in > spirit. If you have 5 records...you get 5 buttons...3 records...3 buttons. > > Mark > > >> From: markamatte at hotmail.com >> To: accessd at databaseadvisors.com >> Date: Wed, 10 Sep 2008 12:51:46 +0000 >> Subject: Re: [AccessD] A2003: Table Driven button list on Continuous Forms >> >> >> Darren, >> >> I done something similar...but not with buttons. So I modified to see if I > could get what you need. I used a form,subform, and table. I got the idea from a > sample Candace Tripp had on her site years ago. There is no error > handling...just code. >> >> Let me know if you have any questions or need a sample mdb. >> >> Thanks, >> >> Mark A. Matte >> >> Here is the code for each form: >> SubForm: sfrmMyButtons >> >> Option Compare Database >> >> Function ImClicked() >> Dim CNM >> Dim ctlCurrentControl As Control >> >> Set ctlCurrentControl = Screen.ActiveControl >> CNM = Right(ctlCurrentControl.Name, Len(ctlCurrentControl.Name) - 4) >> >> If Me("tgl_" & CNM) = 0 Or IsNull(Me("tgl_" & CNM)) = True Then >> Me("tgl_" & CNM) = -1 >> Me("lb1_" & CNM).Visible = False >> Me("lb2_" & CNM).Visible = True >> Else >> Me("tgl_" & CNM) = 0 >> Me("lb1_" & CNM).Visible = True >> Me("lb2_" & CNM).Visible = False >> End If >> End Function >> >> >> Main Form: frmMakeButton >> >> >> Function MakeButtons() >> Dim dbs As Database, rst As Recordset, intI As Integer >> Dim ctlLabel As Control, ctlText As Control, ctlToggle As Control, ctlButton > As Control >> Dim intDataX As Integer, intDataY As Integer >> Dim intLabelX As Integer, intLabelY As Integer >> DoCmd.OpenForm "sfrmMyButtons", acDesign >> >> Dim ctl As Control >> LoopAgain: >> For Each ctl In Forms!sfrmMyButtons.Controls >> Dim test >> DeleteControl "sfrmMyButtons", ctl.Name >> Next ctl >> If Forms!sfrmMyButtons.Controls.Count> 0 Then GoTo LoopAgain >> Set dbs = CurrentDb >> Set rst = dbs.OpenRecordset("SELECT Table2.emails FROM Table2 WHERE > Table2.Group= '" & [Forms]![frmMakeButton]![Combo3] & "';") >> >> rst.MoveLast >> rst.MoveFirst >> >> intLabelX = 100 >> intLabelY = 100 >> intDataX = 1000 >> intDataY = 100 >> >> For intI = 1 To rst.RecordCount >> '******************************** >> Set ctlToggle = CreateControl("sfrmMyButtons", acToggleButton, , "", "", > intLabelX, intLabelY, 2000, 500) >> ctlToggle.Name = "tgl_" & rst!emails >> ctlToggle.TabStop = 0 >> ctlToggle.Enabled = False >> Set ctlLabel = CreateControl("sfrmMyButtons", acLabel, , "", > "66666666662222222000000", intLabelX, intLabelY, 2000, 500) >> ctlLabel.Name = "lb1_" & rst!emails >> ctlLabel.Caption = rst!emails >> ctlLabel.TextAlign = 2 >> Set ctlLabel = CreateControl("sfrmMyButtons", acLabel, , "", > "66666666662222222000000", intLabelX, intLabelY + 100, 2000, 500) >> ctlLabel.Name = "lb2_" & rst!emails >> ctlLabel.Caption = rst!emails >> ctlLabel.TextAlign = 2 >> ctlLabel.Visible = False >> Set ctlButton = CreateControl("sfrmMyButtons", acCommandButton, , "", > "66666666662222222000000", intLabelX, intLabelY, 2000, 500) >> ctlButton.Visible = True >> ctlButton.Name = "cmd_" & rst!emails >> ctlButton.Transparent = True >> ctlButton.OnMouseDown = "=imClicked()" >> ctlButton.OnMouseUp = "=imClicked()" >> intLabelY = intLabelY + 500 >> >> '******************************** >> rst.MoveNext >> >> Next intI >> Set dbs = Nothing >> Set rst = Nothing >> DoCmd.Close acForm, "sfrmMyButtons", acSaveYes >> End Function >> >> Private Sub Combo3_AfterUpdate() >> Me!sfrmMyButtons.SourceObject = "" >> MakeButtons >> Me!sfrmMyButtons.SourceObject = "sfrmMyButtons" >> End Sub >> >>> From: darren at activebilling.com.au >>> To: accessd at databaseadvisors.com >>> Date: Tue, 9 Sep 2008 09:52:18 +1000 >>> Subject: Re: [AccessD] A2003: Table Driven button list on Continuous Forms >>> >>> Hi Kath >>> >>> Thanks for the reply >>> I just wanted to build a list of buttons (that grows and shrinks)on a > continuous >>> form for each of our clients. Clients are selected by tabs and the list of >>> buttons is 'built' on each tab click (In a sub form). The table is a list of >>> applications each client has and I want a button list of their applications > and >>> I wanted the caption on the button and the list of buttons to be table > driven. >>> >>> That ain't gonna work. So I used a transparent text box over the no caption >>> button that looked OK until you click it. Then the mouse simply moves to the >>> text box and the text of 'the button' is selected. Then I wanted the 'look' > of a >>> button being pushed and look of a button being released when the mouse got to >>> this transparent text box. Too tricky >>> >>> I gave up - can't easily be done and I have already used an inappropriate > amount >>> of time chasing the 'look' >>> >>> Darren >>> >>> -----Original Message----- >>> From: accessd-bounces at databaseadvisors.com >>> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Kath Pelletti >>> Sent: Tuesday, 9 September 2008 9:10 AM >>> To: Access Developers discussion and problem solving >>> Subject: Re: [AccessD] A2003: Table Driven button list on Continuous Forms >>> >>> Darrren - >>> >>> I'm not sure that I *entirely* understand what you are trying to do, but if >>> you want bound controls which look like rounded buttons, then can draw a >>> rounded button (in Word or PPoint), and then sit the bound control on top of >>> it (text box) and set it's back style to transparent. >>> >>> Why do you need a mouse down/up event? >>> >>> kath >>> >>> ----- Original Message ----- >>> From: "Darren D" >>> To: "'Access Developers discussion and problem solving'" >>> >>> Sent: Monday, September 08, 2008 10:24 PM >>> Subject: [AccessD] A2003: Table Driven button list on Continuous Forms >>> >>> >>>> Hi All >>>> >>>> >>>> >>>> I have a table of application names that will grow and shrink with many >>>> fields >>>> but the 2 of interest are. >>>> >>>> APPID = AutoNumber and AppName = Text >>>> >>>> >>>> >>>> I want a continuous form to have a button for each item in that table. >>>> >>>> Trouble is It is a bit tricky to get the caption for each button to = the >>>> AppName for each record in the table >>>> >>>> I can 'fake' it using labels but if I write a routine to simulate a mouse >>>> down >>>> and mouse up to mimic raises and depressions then >>>> >>>> all the labels that are simulated buttons on the form depress and raise at >>>> the >>>> same time >>>> >>>> Besides I would prefer to have the 'rounded' look to the buttons simply to >>>> match >>>> the rest of my screen design >>>> >>>> >>>> >>>> I know many people have done this sort of thing before - But how have you >>>> managed it on a continuous form driven by a table >>>> >>>> >>>> >>>> Many thanks in advance >>>> >>>> >>>> >>>> Darren >>>> >>>> >>>> >>>> -- >>>> AccessD mailing list >>>> AccessD at databaseadvisors.com >>>> http://databaseadvisors.com/mailman/listinfo/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 >> >> _________________________________________________________________ >> See how Windows connects the people, information, and fun that are part of > your life. >> http://clk.atdmt.com/MRT/go/msnnkwxp1020093175mrt/direct/01/ >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com > > _________________________________________________________________ > Stay up to date on your PC, the Web, and your mobile phone with Windows Live. > http://clk.atdmt.com/MRT/go/msnnkwxp1020093185mrt/direct/01/ > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com _________________________________________________________________ See how Windows Mobile brings your life together?at home, work, or on the go. http://clk.atdmt.com/MRT/go/msnnkwxp1020093182mrt/direct/01/ From John.Clark at niagaracounty.com Thu Sep 11 13:59:59 2008 From: John.Clark at niagaracounty.com (John Clark) Date: Thu, 11 Sep 2008 14:59:59 -0400 Subject: [AccessD] Importing XML into Access 03 or 07 In-Reply-To: <4dd71a0c0809110802s7ac92712r14a95d56dcdbfe9b@mail.gmail.com> References: <4dd71a0c0809090851y3a65aeaalc10b97109fcd7393@mail.gmail.com> <48C8B9E0.3040303@mvps.org> <4dd71a0c0809110802s7ac92712r14a95d56dcdbfe9b@mail.gmail.com> Message-ID: <48C9326F.167F.006B.0@niagaracounty.com> Our department hosts this Technology & Homeland Security Forum every year...it is at the Niagara Falls Casino this year, next month. This is my first year of any involvement other than "one of the department employees." The woman who did this, in the past, posted a registration form, on our web site (http://www.niagaracounty.com/docs/registrationform.pdf) that she created using "Adobe LiveCycle Designer 8.0" This information is received by us, usually, via email, in the format of the following...actually, I'll place it at the end... Each single email contains XML data for one single user. She was importing these, somehow, into Excel. Excel would be fine, although, I'd prefer Access. I know how to import each of these one at a time, but there are about 250 of these and I'd like to import them all at once if I could. Any ideas? XML data, in Email follows: - ( file:///G:/Tech%20Forum%202007/Final%20Attendee%20Information/Registration%20Forms/deemer.xml# ) - ( file:///G:/Tech%20Forum%202007/Final%20Attendee%20Information/Registration%20Forms/deemer.xml# ) Tami Deemer Niagara County Data Processing tami.deemer at niagaracounty.com 0 0 0 0 1 0 0 0 0 0 John W. Clark Information Technology Technician Niagara County Central Data Processing From cfoust at infostatsystems.com Thu Sep 11 14:22:51 2008 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 11 Sep 2008 12:22:51 -0700 Subject: [AccessD] Importing XML into Access 03 or 07 In-Reply-To: <48C9326F.167F.006B.0@niagaracounty.com> References: <4dd71a0c0809090851y3a65aeaalc10b97109fcd7393@mail.gmail.com><48C8B9E0.3040303@mvps.org><4dd71a0c0809110802s7ac92712r14a95d56dcdbfe9b@mail.gmail.com> <48C9326F.167F.006B.0@niagaracounty.com> Message-ID: If you have 250 emails, how would you expect to handle them all at once? Confused Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Clark Sent: Thursday, September 11, 2008 12:00 PM To: Access Developers discussion and problem solving Subject: [AccessD] Importing XML into Access 03 or 07 Our department hosts this Technology & Homeland Security Forum every year...it is at the Niagara Falls Casino this year, next month. This is my first year of any involvement other than "one of the department employees." The woman who did this, in the past, posted a registration form, on our web site (http://www.niagaracounty.com/docs/registrationform.pdf) that she created using "Adobe LiveCycle Designer 8.0" This information is received by us, usually, via email, in the format of the following...actually, I'll place it at the end... Each single email contains XML data for one single user. She was importing these, somehow, into Excel. Excel would be fine, although, I'd prefer Access. I know how to import each of these one at a time, but there are about 250 of these and I'd like to import them all at once if I could. Any ideas? XML data, in Email follows: - ( file:///G:/Tech%20Forum%202007/Final%20Attendee%20Information/Registrati on%20Forms/deemer.xml# ) - ( file:///G:/Tech%20Forum%202007/Final%20Attendee%20Information/Registrati on%20Forms/deemer.xml# ) Tami Deemer Niagara County Data Processing tami.deemer at niagaracounty.com 0 0 0 0 1 0 0 0 0 0 John W. Clark Information Technology Technician Niagara County Central Data Processing -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From rockysmolin at bchacc.com Thu Sep 11 16:13:13 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Thu, 11 Sep 2008 14:13:13 -0700 Subject: [AccessD] CRLF in email Message-ID: <0c8301c91453$33847690$0301a8c0@HAL9005> Dear List: I am trying to add some text and a signature to the body of an email with a report attached. Everything works fine except the carriage return/Line Feed. I'm using the following: myItem.HTMLBody = "Thank you very much for your order." & Chr(10) & Chr(13) _ & Chr(10) & Chr(13) _ & "Please review the attached rental agreement and call or e-mail me with any " _ & "questions or changes." & vbCrLf & vbCrLf _ & "If this looks good to you, please complete the credit card authorization " _ & "form and fax it back to us at (858) 560-9900." & vbCrLf & vbCrLf _ & "Ken Gimbel" & vbCrLf & "ph 858.560.5000 | fx 858.560.9900 " & vbCrLf _ & "4909 ruffner st. | san diego, CA 92101 " & vbCrLf _ & "www.voiceandvideo.com " and neither CHR(10) & Chr(13) nor vbCrLf work. The email body comes out looking like this: Thank you very much for your order. Please review the attached rental agreement and call or e-mail me with any questions or changes. If this looks good to you, please complete the credit card authorization form and fax it back to us at (858) 560-9900. Ken Gimbel ph 858.560.5000 | fx 858.560.9900 4909 ruffner st. | san diego, CA 92101 www.voiceandvideo.com No returns or line spacing. Does anyone know what I'm doing wrong here? MTIA Rocky Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com From dwaters at usinternet.com Thu Sep 11 16:26:17 2008 From: dwaters at usinternet.com (Dan Waters) Date: Thu, 11 Sep 2008 16:26:17 -0500 Subject: [AccessD] CRLF in email In-Reply-To: <0c8301c91453$33847690$0301a8c0@HAL9005> References: <0c8301c91453$33847690$0301a8c0@HAL9005> Message-ID: Rocky - I don't know why this isn't working - but you can replace vbCrLF with vbNewLine. It's just easier to read and type. Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Thursday, September 11, 2008 4:13 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] CRLF in email Dear List: I am trying to add some text and a signature to the body of an email with a report attached. Everything works fine except the carriage return/Line Feed. I'm using the following: myItem.HTMLBody = "Thank you very much for your order." & Chr(10) & Chr(13) _ & Chr(10) & Chr(13) _ & "Please review the attached rental agreement and call or e-mail me with any " _ & "questions or changes." & vbCrLf & vbCrLf _ & "If this looks good to you, please complete the credit card authorization " _ & "form and fax it back to us at (858) 560-9900." & vbCrLf & vbCrLf _ & "Ken Gimbel" & vbCrLf & "ph 858.560.5000 | fx 858.560.9900 " & vbCrLf _ & "4909 ruffner st. | san diego, CA 92101 " & vbCrLf _ & "www.voiceandvideo.com " and neither CHR(10) & Chr(13) nor vbCrLf work. The email body comes out looking like this: Thank you very much for your order. Please review the attached rental agreement and call or e-mail me with any questions or changes. If this looks good to you, please complete the credit card authorization form and fax it back to us at (858) 560-9900. Ken Gimbel ph 858.560.5000 | fx 858.560.9900 4909 ruffner st. | san diego, CA 92101 www.voiceandvideo.com No returns or line spacing. Does anyone know what I'm doing wrong here? MTIA Rocky Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From JHewson at nciinc.com Thu Sep 11 16:28:50 2008 From: JHewson at nciinc.com (Hewson, Jim ) Date: Thu, 11 Sep 2008 16:28:50 -0500 Subject: [AccessD] CRLF in email In-Reply-To: <0c8301c91453$33847690$0301a8c0@HAL9005> References: <0c8301c91453$33847690$0301a8c0@HAL9005> Message-ID: <7E02B06E41E5404589EDDDA2BAA1C5A83EBDDB@sanex101.nciinc.com> If you're pushing it to HTML don't you have use
instead? I'm just guessing though, I haven't done this before. So it would look like: myItem.HTMLBody = "Thank you very much for your order.
" _ & "Please review the attached rental agreement and call or e-mail me with any " _ & "questions or changes.
" _ & "If this looks good to you, please complete the credit card authorization " _ & "form and fax it back to us at (858) 560-9900.
" _ & "Ken Gimbel
" _ & "ph 858.560.5000 | fx 858.560.9900
" _ & "4909 ruffner st. | san diego, CA 92101
" _ & "www.voiceandvideo.com " Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Thursday, September 11, 2008 4:13 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] CRLF in email Dear List: I am trying to add some text and a signature to the body of an email with a report attached. Everything works fine except the carriage return/Line Feed. I'm using the following: myItem.HTMLBody = "Thank you very much for your order." & Chr(10) & Chr(13) _ & Chr(10) & Chr(13) _ & "Please review the attached rental agreement and call or e-mail me with any " _ & "questions or changes." & vbCrLf & vbCrLf _ & "If this looks good to you, please complete the credit card authorization " _ & "form and fax it back to us at (858) 560-9900." & vbCrLf & vbCrLf _ & "Ken Gimbel" & vbCrLf & "ph 858.560.5000 | fx 858.560.9900 " & vbCrLf _ & "4909 ruffner st. | san diego, CA 92101 " & vbCrLf _ & "www.voiceandvideo.com " and neither CHR(10) & Chr(13) nor vbCrLf work. The email body comes out looking like this: Thank you very much for your order. Please review the attached rental agreement and call or e-mail me with any questions or changes. If this looks good to you, please complete the credit card authorization form and fax it back to us at (858) 560-9900. Ken Gimbel ph 858.560.5000 | fx 858.560.9900 4909 ruffner st. | san diego, CA 92101 www.voiceandvideo.com No returns or line spacing. Does anyone know what I'm doing wrong here? MTIA Rocky Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com ################################################################################ This email transmission contains information from NCI Information Systems, Inc. that may be considered privileged or confidential and is intended solely for the named recipient. If you have received this message in error, please contact the sender immediately and be aware that the use, copying or dissemination of this information is prohibited. ################################################################################ From krosenstiel at comcast.net Thu Sep 11 16:30:42 2008 From: krosenstiel at comcast.net (krosenstiel at comcast.net) Date: Thu, 11 Sep 2008 21:30:42 +0000 Subject: [AccessD] CRLF in email Message-ID: <091120082130.6893.48C98E020006C20D00001AED2215567074040A079B9C020A9C019D05@comcast.net> Use
instead. -- Karen Rosenstiel Seattle WA USA -------------- Original message ---------------------- From: "Hewson, Jim " > If you're pushing it to HTML don't you have use
instead? > I'm just guessing though, I haven't done this before. > > So it would look like: > > myItem.HTMLBody = "Thank you very much for your order.
" _ > & "Please review the attached rental agreement and call or e-mail me with > any " _ > & "questions or changes.
" _ > & "If this looks good to you, please complete the credit card authorization > " _ > & "form and fax it back to us at (858) 560-9900.
" _ > & "Ken Gimbel
" _ > & "ph 858.560.5000 | fx 858.560.9900
" _ > & "4909 ruffner st. | san diego, CA 92101
" _ > & "www.voiceandvideo.com " > > Jim > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach > Access Software > Sent: Thursday, September 11, 2008 4:13 PM > To: 'Access Developers discussion and problem solving' > Subject: [AccessD] CRLF in email > > Dear List: > > I am trying to add some text and a signature to the body of an email with a > report attached. Everything works fine except the carriage return/Line > Feed. I'm using the following: > > > myItem.HTMLBody = "Thank you very much for your order." & Chr(10) & Chr(13) > _ > & Chr(10) & Chr(13) _ > & "Please review the attached rental agreement and call or e-mail me > with any " _ > & "questions or changes." & vbCrLf & vbCrLf _ > & "If this looks good to you, please complete the credit card > authorization " _ > & "form and fax it back to us at (858) 560-9900." & vbCrLf & vbCrLf _ > & "Ken Gimbel" & vbCrLf & "ph 858.560.5000 | fx 858.560.9900 " & vbCrLf > _ > & "4909 ruffner st. | san diego, CA 92101 " & vbCrLf _ > & "www.voiceandvideo.com " > > and neither CHR(10) & Chr(13) nor vbCrLf work. The email body comes out > looking like this: > > Thank you very much for your order. Please review the attached rental > agreement and call or e-mail me with any questions or changes. If this looks > good to you, please complete the credit card authorization form and fax it > back to us at (858) 560-9900. Ken Gimbel ph 858.560.5000 | fx 858.560.9900 > 4909 ruffner st. | san diego, CA 92101 www.voiceandvideo.com > > No returns or line spacing. Does anyone know what I'm doing wrong here? > > MTIA > > Rocky > > > > > > > > Rocky Smolin > > Beach Access Software > > 858-259-4334 > > www.e-z-mrp.com > > www.bchacc.com > > > > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > ################################################################################ > > This email transmission contains information from NCI Information Systems, Inc. > that may be considered privileged or confidential and is intended solely for the > named recipient. If you have received this message in error, please contact the > sender immediately and be aware that the use, copying or dissemination of this > information is prohibited. > > ################################################################################ > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From jedi at charm.net Thu Sep 11 16:47:45 2008 From: jedi at charm.net (Michael Bahr) Date: Thu, 11 Sep 2008 17:47:45 -0400 (EDT) Subject: [AccessD] CRLF in email In-Reply-To: <0c8301c91453$33847690$0301a8c0@HAL9005> References: <0c8301c91453$33847690$0301a8c0@HAL9005> Message-ID: <2398.24.35.25.42.1221169665.squirrel@mail.expedient.net> Rocky, proper html formating should be

bla bla bla

. You could also use
. The difference is
is a soft-return where

is a hard-return. However you should consider using both CRLF and

. This is the same as looking at the source of a web page. Using the CRLF formats the source and the

formats the html. Some email readers may be set to display only plain text (strip out html) so then the formating would still remain the same. Mike... > Dear List: > > I am trying to add some text and a signature to the body of an email with > a > report attached. Everything works fine except the carriage return/Line > Feed. I'm using the following: > > > myItem.HTMLBody = "Thank you very much for your order." & Chr(10) & > Chr(13) > _ > & Chr(10) & Chr(13) _ > & "Please review the attached rental agreement and call or e-mail me > with any " _ > & "questions or changes." & vbCrLf & vbCrLf _ > & "If this looks good to you, please complete the credit card > authorization " _ > & "form and fax it back to us at (858) 560-9900." & vbCrLf & vbCrLf _ > & "Ken Gimbel" & vbCrLf & "ph 858.560.5000 | fx 858.560.9900 " & > vbCrLf > _ > & "4909 ruffner st. | san diego, CA 92101 " & vbCrLf _ > & "www.voiceandvideo.com " > > and neither CHR(10) & Chr(13) nor vbCrLf work. The email body comes out > looking like this: > > Thank you very much for your order. Please review the attached rental > agreement and call or e-mail me with any questions or changes. If this > looks > good to you, please complete the credit card authorization form and fax it > back to us at (858) 560-9900. Ken Gimbel ph 858.560.5000 | fx 858.560.9900 > 4909 ruffner st. | san diego, CA 92101 www.voiceandvideo.com > > No returns or line spacing. Does anyone know what I'm doing wrong here? > > MTIA > > Rocky > > > > > > > > Rocky Smolin > > Beach Access Software > > 858-259-4334 > > www.e-z-mrp.com > > www.bchacc.com > > > > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From rockysmolin at bchacc.com Thu Sep 11 16:49:56 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Thu, 11 Sep 2008 14:49:56 -0700 Subject: [AccessD] Why I Love This List was: RE: CRLF in email In-Reply-To: <091120082130.6893.48C98E020006C20D00001AED2215567074040A079B9C020A9C019D05@comcast.net> References: <091120082130.6893.48C98E020006C20D00001AED2215567074040A079B9C020A9C019D05@comcast.net> Message-ID: <0c9401c91458$54f63930$0301a8c0@HAL9005> Woo-hoo! It worked! Thank you Karen and Jim. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of krosenstiel at comcast.net Sent: Thursday, September 11, 2008 2:31 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] CRLF in email Use
instead. -- Karen Rosenstiel Seattle WA USA -------------- Original message ---------------------- From: "Hewson, Jim " > If you're pushing it to HTML don't you have use
instead? > I'm just guessing though, I haven't done this before. > > So it would look like: > > myItem.HTMLBody = "Thank you very much for your order.
" _ > & "Please review the attached rental agreement and call or e-mail > me with any " _ > & "questions or changes.
" _ > & "If this looks good to you, please complete the credit card > authorization " _ > & "form and fax it back to us at (858) 560-9900.
" _ > & "Ken Gimbel
" _ > & "ph 858.560.5000 | fx 858.560.9900
" _ > & "4909 ruffner st. | san diego, CA 92101
" _ > & "www.voiceandvideo.com " > > Jim > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky > Smolin at Beach Access Software > Sent: Thursday, September 11, 2008 4:13 PM > To: 'Access Developers discussion and problem solving' > Subject: [AccessD] CRLF in email > > Dear List: > > I am trying to add some text and a signature to the body of an email > with a report attached. Everything works fine except the carriage > return/Line Feed. I'm using the following: > > > myItem.HTMLBody = "Thank you very much for your order." & Chr(10) & > Chr(13) _ > & Chr(10) & Chr(13) _ > & "Please review the attached rental agreement and call or e-mail > me with any " _ > & "questions or changes." & vbCrLf & vbCrLf _ > & "If this looks good to you, please complete the credit card > authorization " _ > & "form and fax it back to us at (858) 560-9900." & vbCrLf & vbCrLf _ > & "Ken Gimbel" & vbCrLf & "ph 858.560.5000 | fx 858.560.9900 " & > vbCrLf _ > & "4909 ruffner st. | san diego, CA 92101 " & vbCrLf _ > & "www.voiceandvideo.com " > > and neither CHR(10) & Chr(13) nor vbCrLf work. The email body comes > out looking like this: > > Thank you very much for your order. Please review the attached rental > agreement and call or e-mail me with any questions or changes. If this > looks good to you, please complete the credit card authorization form > and fax it back to us at (858) 560-9900. Ken Gimbel ph 858.560.5000 | > fx 858.560.9900 > 4909 ruffner st. | san diego, CA 92101 www.voiceandvideo.com > > No returns or line spacing. Does anyone know what I'm doing wrong here? > > MTIA > > Rocky > > > > > > > > Rocky Smolin > > Beach Access Software > > 858-259-4334 > > www.e-z-mrp.com > > www.bchacc.com > > > > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > ###################################################################### > ########## > > This email transmission contains information from NCI Information Systems, Inc. > that may be considered privileged or confidential and is intended > solely for the named recipient. If you have received this message in > error, please contact the sender immediately and be aware that the > use, copying or dissemination of this information is prohibited. > > ###################################################################### > ########## > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/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 hadyn at dataconcepts.co.nz Thu Sep 11 16:54:28 2008 From: hadyn at dataconcepts.co.nz (Hadyn) Date: Fri, 12 Sep 2008 09:54:28 +1200 Subject: [AccessD] CRLF in email Message-ID: <121f2ed0636728f6d844b2698f3e7f1d@dataconcepts.co.nz> Hi Rocky If you are writing in HTML then you can use HTML tags in your text...
to add a line break. myItem.HTMLBody = "Thank you very much for your order.

" & _ "Please review the attached rental agreement and call or e-mail me with any " & _ "questions or changes.

" Kind regards Hadyn -----Original message----- From: "Rocky Smolin at Beach Access Software" rockysmolin at bchacc.com Date: Fri, 12 Sep 2008 10:13:13 +1200 To: "'Access Developers discussion and problem solving'"accessd at databaseadvisors.com Subject: [AccessD] CRLF in email > Dear List: > > I am trying to add some text and a signature to the body of an email with a > report attached. Everything works fine except the carriage return/Line > Feed. I'm using the following: > > > myItem.HTMLBody = "Thank you very much for your order." & Chr(10) & Chr(13) > _ > & Chr(10) & Chr(13) _ > & "Please review the attached rental agreement and call or e-mail me > with any " _ > & "questions or changes." & vbCrLf & vbCrLf _ > & "If this looks good to you, please complete the credit card > authorization " _ > & "form and fax it back to us at (858) 560-9900." & vbCrLf & vbCrLf _ > & "Ken Gimbel" & vbCrLf & "ph 858.560.5000 | fx 858.560.9900 " & vbCrLf > _ > & "4909 ruffner st. | san diego, CA 92101 " & vbCrLf _ > & "www.voiceandvideo.com " > > and neither CHR(10) & Chr(13) nor vbCrLf work. The email body comes out > looking like this: > > Thank you very much for your order. Please review the attached rental > agreement and call or e-mail me with any questions or changes. If this looks > good to you, please complete the credit card authorization form and fax it > back to us at (858) 560-9900. Ken Gimbel ph 858.560.5000 | fx 858.560.9900 > 4909 ruffner st. | san diego, CA 92101 www.voiceandvideo.com > > No returns or line spacing. Does anyone know what I'm doing wrong here? > > MTIA > > Rocky > > > > > > > > Rocky Smolin > > Beach Access Software > > 858-259-4334 > > www.e-z-mrp.com > > www.bchacc.com > > > > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From rockysmolin at bchacc.com Thu Sep 11 16:54:54 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Thu, 11 Sep 2008 14:54:54 -0700 Subject: [AccessD] CRLF in email In-Reply-To: <2398.24.35.25.42.1221169665.squirrel@mail.expedient.net> References: <0c8301c91453$33847690$0301a8c0@HAL9005> <2398.24.35.25.42.1221169665.squirrel@mail.expedient.net> Message-ID: <0c9e01c91459$0665ceb0$0301a8c0@HAL9005> Would using

work if the email client is set to display only plain text? Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Michael Bahr Sent: Thursday, September 11, 2008 2:48 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] CRLF in email Rocky, proper html formating should be

bla bla bla

. You could also use
. The difference is
is a soft-return where

is a hard-return. However you should consider using both CRLF and

. This is the same as looking at the source of a web page. Using the CRLF formats the source and the

formats the html. Some email readers may be set to display only plain text (strip out html) so then the formating would still remain the same. Mike... > Dear List: > > I am trying to add some text and a signature to the body of an email > with a report attached. Everything works fine except the carriage > return/Line Feed. I'm using the following: > > > myItem.HTMLBody = "Thank you very much for your order." & Chr(10) & > Chr(13) > _ > & Chr(10) & Chr(13) _ > & "Please review the attached rental agreement and call or e-mail > me with any " _ > & "questions or changes." & vbCrLf & vbCrLf _ > & "If this looks good to you, please complete the credit card > authorization " _ > & "form and fax it back to us at (858) 560-9900." & vbCrLf & vbCrLf _ > & "Ken Gimbel" & vbCrLf & "ph 858.560.5000 | fx 858.560.9900 " & > vbCrLf _ > & "4909 ruffner st. | san diego, CA 92101 " & vbCrLf _ > & "www.voiceandvideo.com " > > and neither CHR(10) & Chr(13) nor vbCrLf work. The email body comes > out looking like this: > > Thank you very much for your order. Please review the attached rental > agreement and call or e-mail me with any questions or changes. If this > looks good to you, please complete the credit card authorization form > and fax it back to us at (858) 560-9900. Ken Gimbel ph 858.560.5000 | > fx 858.560.9900 > 4909 ruffner st. | san diego, CA 92101 www.voiceandvideo.com > > No returns or line spacing. Does anyone know what I'm doing wrong here? > > MTIA > > Rocky > > > > > > > > Rocky Smolin > > Beach Access Software > > 858-259-4334 > > www.e-z-mrp.com > > www.bchacc.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 rockysmolin at bchacc.com Thu Sep 11 17:09:09 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Thu, 11 Sep 2008 15:09:09 -0700 Subject: [AccessD] CRLF in email In-Reply-To: <121f2ed0636728f6d844b2698f3e7f1d@dataconcepts.co.nz> References: <121f2ed0636728f6d844b2698f3e7f1d@dataconcepts.co.nz> Message-ID: <0cae01c9145b$043b3ba0$0301a8c0@HAL9005> You know I'm just inserting some stuff into an email - not really writing in HTML. I just generated one and converted it to plain text and the spacing was still OK using
. I'll see what it looks like on the receiving end. But I'd like some foolproof way to have those breaks and spaces in the email regardless of sender or receiver. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Hadyn Sent: Thursday, September 11, 2008 2:54 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] CRLF in email Hi Rocky If you are writing in HTML then you can use HTML tags in your text...
to add a line break. myItem.HTMLBody = "Thank you very much for your order.

" & _ "Please review the attached rental agreement and call or e-mail me with any " & _ "questions or changes.

" Kind regards Hadyn -----Original message----- From: "Rocky Smolin at Beach Access Software" rockysmolin at bchacc.com Date: Fri, 12 Sep 2008 10:13:13 +1200 To: "'Access Developers discussion and problem solving'"accessd at databaseadvisors.com Subject: [AccessD] CRLF in email > Dear List: > > I am trying to add some text and a signature to the body of an email > with a report attached. Everything works fine except the carriage > return/Line Feed. I'm using the following: > > > myItem.HTMLBody = "Thank you very much for your order." & Chr(10) & > Chr(13) _ > & Chr(10) & Chr(13) _ > & "Please review the attached rental agreement and call or e-mail > me with any " _ > & "questions or changes." & vbCrLf & vbCrLf _ > & "If this looks good to you, please complete the credit card > authorization " _ > & "form and fax it back to us at (858) 560-9900." & vbCrLf & vbCrLf _ > & "Ken Gimbel" & vbCrLf & "ph 858.560.5000 | fx 858.560.9900 " & > vbCrLf _ > & "4909 ruffner st. | san diego, CA 92101 " & vbCrLf _ > & "www.voiceandvideo.com " > > and neither CHR(10) & Chr(13) nor vbCrLf work. The email body comes > out looking like this: > > Thank you very much for your order. Please review the attached rental > agreement and call or e-mail me with any questions or changes. If this > looks good to you, please complete the credit card authorization form > and fax it back to us at (858) 560-9900. Ken Gimbel ph 858.560.5000 | > fx 858.560.9900 > 4909 ruffner st. | san diego, CA 92101 www.voiceandvideo.com > > No returns or line spacing. Does anyone know what I'm doing wrong here? > > MTIA > > Rocky > > > > > > > > Rocky Smolin > > Beach Access Software > > 858-259-4334 > > www.e-z-mrp.com > > www.bchacc.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 rockysmolin at bchacc.com Thu Sep 11 17:11:46 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Thu, 11 Sep 2008 15:11:46 -0700 Subject: [AccessD] CRLF in email In-Reply-To: <0c9e01c91459$0665ceb0$0301a8c0@HAL9005> References: <0c8301c91453$33847690$0301a8c0@HAL9005><2398.24.35.25.42.1221169665.squirrel@mail.expedient.net> <0c9e01c91459$0665ceb0$0301a8c0@HAL9005> Message-ID: <0caf01c9145b$61833ce0$0301a8c0@HAL9005> Looks like the works in plain text comin' and goin'. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Thursday, September 11, 2008 2:55 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] CRLF in email Would using

work if the email client is set to display only plain text? Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Michael Bahr Sent: Thursday, September 11, 2008 2:48 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] CRLF in email Rocky, proper html formating should be

bla bla bla

. You could also use
. The difference is
is a soft-return where

is a hard-return. However you should consider using both CRLF and

. This is the same as looking at the source of a web page. Using the CRLF formats the source and the

formats the html. Some email readers may be set to display only plain text (strip out html) so then the formating would still remain the same. Mike... > Dear List: > > I am trying to add some text and a signature to the body of an email > with a report attached. Everything works fine except the carriage > return/Line Feed. I'm using the following: > > > myItem.HTMLBody = "Thank you very much for your order." & Chr(10) & > Chr(13) > _ > & Chr(10) & Chr(13) _ > & "Please review the attached rental agreement and call or e-mail > me with any " _ > & "questions or changes." & vbCrLf & vbCrLf _ > & "If this looks good to you, please complete the credit card > authorization " _ > & "form and fax it back to us at (858) 560-9900." & vbCrLf & vbCrLf _ > & "Ken Gimbel" & vbCrLf & "ph 858.560.5000 | fx 858.560.9900 " & > vbCrLf _ > & "4909 ruffner st. | san diego, CA 92101 " & vbCrLf _ > & "www.voiceandvideo.com " > > and neither CHR(10) & Chr(13) nor vbCrLf work. The email body comes > out looking like this: > > Thank you very much for your order. Please review the attached rental > agreement and call or e-mail me with any questions or changes. If this > looks good to you, please complete the credit card authorization form > and fax it back to us at (858) 560-9900. Ken Gimbel ph 858.560.5000 | > fx 858.560.9900 > 4909 ruffner st. | san diego, CA 92101 www.voiceandvideo.com > > No returns or line spacing. Does anyone know what I'm doing wrong here? > > MTIA > > Rocky > > > > > > > > Rocky Smolin > > Beach Access Software > > 858-259-4334 > > www.e-z-mrp.com > > www.bchacc.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 ssharkins at gmail.com Thu Sep 11 17:12:11 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Thu, 11 Sep 2008 18:12:11 -0400 Subject: [AccessD] Harkins and Brock Message-ID: <02be01c9145b$7227cc00$2f8601c7@SusanOne> http://www.devx.com/ I just wanted to share this article with you guys -- Gustav and I have written a number of articles together but this one's different as I had to ask him repeatedly... "uh... huh????" :) I think it turned out really well and certainly will be useful to the developers who actually need it. Susan H. From cfoust at infostatsystems.com Thu Sep 11 17:42:18 2008 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Thu, 11 Sep 2008 15:42:18 -0700 Subject: [AccessD] Harkins and Brock In-Reply-To: <02be01c9145b$7227cc00$2f8601c7@SusanOne> References: <02be01c9145b$7227cc00$2f8601c7@SusanOne> Message-ID: OK, all together now ... "uh... huh????" :) Is the jagged time thingie the reason why I run out of money before I run out of time?? Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Thursday, September 11, 2008 3:12 PM To: AccessD at databaseadvisors.com Subject: [AccessD] Harkins and Brock http://www.devx.com/ I just wanted to share this article with you guys -- Gustav and I have written a number of articles together but this one's different as I had to ask him repeatedly... "uh... huh????" :) I think it turned out really well and certainly will be useful to the developers who actually need it. Susan H. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From rockysmolin at bchacc.com Thu Sep 11 18:00:20 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Thu, 11 Sep 2008 16:00:20 -0700 Subject: [AccessD] Harkins and Brock In-Reply-To: <02be01c9145b$7227cc00$2f8601c7@SusanOne> References: <02be01c9145b$7227cc00$2f8601c7@SusanOne> Message-ID: <0cc101c91462$2a7e98a0$0301a8c0@HAL9005> I see a book excerpt there. DO you know who I Should contact to try to get them to excerpt my book? Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Thursday, September 11, 2008 3:12 PM To: AccessD at databaseadvisors.com Subject: [AccessD] Harkins and Brock http://www.devx.com/ I just wanted to share this article with you guys -- Gustav and I have written a number of articles together but this one's different as I had to ask him repeatedly... "uh... huh????" :) I think it turned out really well and certainly will be useful to the developers who actually need it. Susan H. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From ssharkins at gmail.com Thu Sep 11 18:44:07 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Thu, 11 Sep 2008 19:44:07 -0400 Subject: [AccessD] Harkins and Brock References: <02be01c9145b$7227cc00$2f8601c7@SusanOne> <0cc101c91462$2a7e98a0$0301a8c0@HAL9005> Message-ID: <02e001c91468$49744240$2f8601c7@SusanOne> No, but I'll find out. TechRepublic.com does that too -- lots of sites do it. Susan H. >I see a book excerpt there. DO you know who I Should contact to try to get > them to excerpt my book? From EdTesiny at oasas.state.ny.us Thu Sep 11 18:54:44 2008 From: EdTesiny at oasas.state.ny.us (Tesiny, Ed) Date: Thu, 11 Sep 2008 19:54:44 -0400 Subject: [AccessD] Harkins and Brock References: <02be01c9145b$7227cc00$2f8601c7@SusanOne> Message-ID: Damn, I wish Gustav and I could of shared a couple of beers...but I guess it wasn't to be yet. Anyone out there in Amsterdam NE? Susan, Nice picture on DBA, it makes a big difference when you have an image/picture of who you're communicating with. Ed ________________________________ From: accessd-bounces at databaseadvisors.com on behalf of Susan Harkins Sent: Thu 9/11/2008 6:12 PM To: AccessD at databaseadvisors.com Subject: [AccessD] Harkins and Brock http://www.devx.com/ I just wanted to share this article with you guys -- Gustav and I have written a number of articles together but this one's different as I had to ask him repeatedly... "uh... huh????" :) I think it turned out really well and certainly will be useful to the developers who actually need it. Susan H. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From EdTesiny at oasas.state.ny.us Thu Sep 11 19:02:17 2008 From: EdTesiny at oasas.state.ny.us (Tesiny, Ed) Date: Thu, 11 Sep 2008 20:02:17 -0400 Subject: [AccessD] Harkins and Brock References: <02be01c9145b$7227cc00$2f8601c7@SusanOne> Message-ID: Sorry, that should have been OT. ________________________________ From: accessd-bounces at databaseadvisors.com on behalf of Tesiny, Ed Sent: Thu 9/11/2008 7:54 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Harkins and Brock Damn, I wish Gustav and I could of shared a couple of beers...but I guess it wasn't to be yet. Anyone out there in Amsterdam NE? Susan, Nice picture on DBA, it makes a big difference when you have an image/picture of who you're communicating with. Ed ________________________________ From: accessd-bounces at databaseadvisors.com on behalf of Susan Harkins Sent: Thu 9/11/2008 6:12 PM To: AccessD at databaseadvisors.com Subject: [AccessD] Harkins and Brock http://www.devx.com/ I just wanted to share this article with you guys -- Gustav and I have written a number of articles together but this one's different as I had to ask him repeatedly... "uh... huh????" :) I think it turned out really well and certainly will be useful to the developers who actually need it. Susan H. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From rockysmolin at bchacc.com Thu Sep 11 19:05:37 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Thu, 11 Sep 2008 17:05:37 -0700 Subject: [AccessD] Harkins and Brock In-Reply-To: <02e001c91468$49744240$2f8601c7@SusanOne> References: <02be01c9145b$7227cc00$2f8601c7@SusanOne><0cc101c91462$2a7e98a0$0301a8c0@HAL9005> <02e001c91468$49744240$2f8601c7@SusanOne> Message-ID: <0ccb01c9146b$494f9be0$0301a8c0@HAL9005> Thanks. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Thursday, September 11, 2008 4:44 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Harkins and Brock No, but I'll find out. TechRepublic.com does that too -- lots of sites do it. Susan H. >I see a book excerpt there. DO you know who I Should contact to try to >get them to excerpt my book? -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Darryl.Collins at coles.com.au Thu Sep 11 19:39:06 2008 From: Darryl.Collins at coles.com.au (Darryl Collins) Date: Fri, 12 Sep 2008 10:39:06 +1000 Subject: [AccessD] Controlling Custom Toolbars In-Reply-To: <48C8B587.17715.9BE32927@stuart.lexacorp.com.pg> Message-ID: <57E6E6CA42105A48B977303A2CDC2720076DA26F28@WPEXCH22.retail.ad.cmltd.net.au> Ok Folks That works great. Now I have a new (but related issue). How do i control the docking position on built in/ existing toolbars? In Excel VBA the code is gxltbMyToolbar.Position = 1 The control options being Top 1 Right 2 Left 0 Bottom 3 Floating 4 It seems that 4 (floating is the default) in Access, but what is the darn syntax to get them to dock? I can do this if i create the command bar from scratch, but in this case I am just using commandbars I custom built using the default button set. Set myBar = CommandBars.Add(Name:="Customer", _ Position:=msoBarTop, _ Temporary:=True) but I cannot figure out how to make existing toolbars behave! Thanks once again Darryl. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Stuart McLachlan Sent: Thursday, 11 September 2008 4:07 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Controlling Custom Toolbars If you ONLY want the custom toolbar (ie you don't want the default Form toolbar as well), just set the Toolbar property in the Forms Property Sheet-Other tab. Otherwise use DoCmd.ShowToolbar "IT PMO Financial Control Tool", acToolbarYes and DoCmd.ShowToolbar "IT PMO Financial Control Tool", acToolbarNo to display/hide it. On 11 Sep 2008 at 15:48, Darryl Collins wrote: > Hi Folks, > > When I code in Excel I use custom toolbars a lot and they are dead > easy to control. Often each set will have it own toolbar that has > tools specific to its purpose and these are turned off and off using > worksheet activate/deactive. > > In this Access beastie I am building I have made up a nice little > custom toolbar, but I only want it to be available on when certain > forms are active. Struggling to get the syntax right on making the > toolbar appear / disappear. > > Here is what I have go so far (which works - it is just too darn untidy - there has to be a better way). > > '========WHAT I HAVE (which works) ======================= > Sub RemoveDataEditToolbar() > > Dim mtb As Variant ' <-- Don't like using variant, but it is the only thing I can find that works. > Dim strToolbar As String > > strToolbar = "IT PMO Financial Control Tool" > > For Each mtb In CommandBars ' <-- Don't like having to loop. Just want to set this to true or false > If mtb.Name = strToolbar Then > mtb.Visible = False > MsgBox mtb.Name & " Hidden" > End If > Next mtb > End Sub > '=============================================== > > '========WHAT I WANT (which doesn't) =================== > Sub RemoveDataEditToolbar() > > Dim mtb As Access.CommandBar > Dim strToolbar As String > > strToolbar = "IT PMO Financial Control Tool" > Set mtb = Access.CommandBar.Name(strToolbar) > mtb.Visible = False > > set mtb = nothing > End Sub > '=============================================== > > > Any ideas? > > cheers > Darryl > > This email and any attachments may contain privileged and confidential information > and are intended for the named addressee only. If you have received this e-mail in > error, please notify the sender and delete this e-mail immediately. Any > confidentiality, privilege or copyright is not waived or lost because this e-mail > has been sent to you in error. It is your responsibility to check this e-mail and > any attachments for viruses. No warranty is made that this material is free from > computer virus or any other defect or error. Any loss/damage incurred by using this > material is not the sender's responsibility. The sender's entire liability will be > limited to resupplying the material. > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- Stuart Mclachlan -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. From darren at activebilling.com.au Thu Sep 11 19:56:16 2008 From: darren at activebilling.com.au (Darren D) Date: Fri, 12 Sep 2008 10:56:16 +1000 Subject: [AccessD] CRLF in email In-Reply-To: <0caf01c9145b$61833ce0$0301a8c0@HAL9005> References: <0c8301c91453$33847690$0301a8c0@HAL9005><2398.24.35.25.42.1221169665.squirrel@mail.expedient.net><0c9e01c91459$0665ceb0$0301a8c0@HAL9005> <0caf01c9145b$61833ce0$0301a8c0@HAL9005> Message-ID: <003201c91472$5df11e00$0d1b910a@denzilnote> Hi Rocky and team I have this exact same issue - Can you post the solution? Thanks Darren -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Friday, 12 September 2008 8:12 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] CRLF in email Looks like the works in plain text comin' and goin'. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Thursday, September 11, 2008 2:55 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] CRLF in email Would using

work if the email client is set to display only plain text? Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Michael Bahr Sent: Thursday, September 11, 2008 2:48 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] CRLF in email Rocky, proper html formating should be

bla bla bla

. You could also use
. The difference is
is a soft-return where

is a hard-return. However you should consider using both CRLF and

. This is the same as looking at the source of a web page. Using the CRLF formats the source and the

formats the html. Some email readers may be set to display only plain text (strip out html) so then the formating would still remain the same. Mike... > Dear List: > > I am trying to add some text and a signature to the body of an email > with a report attached. Everything works fine except the carriage > return/Line Feed. I'm using the following: > > > myItem.HTMLBody = "Thank you very much for your order." & Chr(10) & > Chr(13) > _ > & Chr(10) & Chr(13) _ > & "Please review the attached rental agreement and call or e-mail > me with any " _ > & "questions or changes." & vbCrLf & vbCrLf _ > & "If this looks good to you, please complete the credit card > authorization " _ > & "form and fax it back to us at (858) 560-9900." & vbCrLf & vbCrLf _ > & "Ken Gimbel" & vbCrLf & "ph 858.560.5000 | fx 858.560.9900 " & > vbCrLf _ > & "4909 ruffner st. | san diego, CA 92101 " & vbCrLf _ > & "www.voiceandvideo.com " > > and neither CHR(10) & Chr(13) nor vbCrLf work. The email body comes > out looking like this: > > Thank you very much for your order. Please review the attached rental > agreement and call or e-mail me with any questions or changes. If this > looks good to you, please complete the credit card authorization form > and fax it back to us at (858) 560-9900. Ken Gimbel ph 858.560.5000 | > fx 858.560.9900 > 4909 ruffner st. | san diego, CA 92101 www.voiceandvideo.com > > No returns or line spacing. Does anyone know what I'm doing wrong here? > > MTIA > > Rocky > > > > > > > > Rocky Smolin > > Beach Access Software > > 858-259-4334 > > www.e-z-mrp.com > > www.bchacc.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 dwaters at usinternet.com Thu Sep 11 20:08:49 2008 From: dwaters at usinternet.com (Dan Waters) Date: Thu, 11 Sep 2008 20:08:49 -0500 Subject: [AccessD] Controlling Custom Toolbars In-Reply-To: <57E6E6CA42105A48B977303A2CDC2720076DA26F28@WPEXCH22.retail.ad.cmltd.net.au> References: <48C8B587.17715.9BE32927@stuart.lexacorp.com.pg> <57E6E6CA42105A48B977303A2CDC2720076DA26F28@WPEXCH22.retail.ad.cmltd.net.au> Message-ID: Do this: Dim cbrCustomToolbar as CommandBar Set cbrFormView = CommandBars("Custom Name") cbrCustomToolbar.Enabled = True cbrCustomToolbar.Visible = True cbrCustomToolbar.Position = msoBarLeft '(see constants below) I clicked Help on Position to get this: MsoBarPosition can be one of these MsoBarPosition constants. msoBarBottom msoBarFloating msoBarLeft msoBarMenuBar msoBarPopup msoBarRight msoBarTop Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darryl Collins Sent: Thursday, September 11, 2008 7:39 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Controlling Custom Toolbars Ok Folks That works great. Now I have a new (but related issue). How do i control the docking position on built in/ existing toolbars? In Excel VBA the code is gxltbMyToolbar.Position = 1 The control options being Top 1 Right 2 Left 0 Bottom 3 Floating 4 It seems that 4 (floating is the default) in Access, but what is the darn syntax to get them to dock? I can do this if i create the command bar from scratch, but in this case I am just using commandbars I custom built using the default button set. Set myBar = CommandBars.Add(Name:="Customer", _ Position:=msoBarTop, _ Temporary:=True) but I cannot figure out how to make existing toolbars behave! Thanks once again Darryl. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Stuart McLachlan Sent: Thursday, 11 September 2008 4:07 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Controlling Custom Toolbars If you ONLY want the custom toolbar (ie you don't want the default Form toolbar as well), just set the Toolbar property in the Forms Property Sheet-Other tab. Otherwise use DoCmd.ShowToolbar "IT PMO Financial Control Tool", acToolbarYes and DoCmd.ShowToolbar "IT PMO Financial Control Tool", acToolbarNo to display/hide it. On 11 Sep 2008 at 15:48, Darryl Collins wrote: > Hi Folks, > > When I code in Excel I use custom toolbars a lot and they are dead > easy to control. Often each set will have it own toolbar that has > tools specific to its purpose and these are turned off and off using > worksheet activate/deactive. > > In this Access beastie I am building I have made up a nice little > custom toolbar, but I only want it to be available on when certain > forms are active. Struggling to get the syntax right on making the > toolbar appear / disappear. > > Here is what I have go so far (which works - it is just too darn untidy - there has to be a better way). > > '========WHAT I HAVE (which works) ======================= > Sub RemoveDataEditToolbar() > > Dim mtb As Variant ' <-- Don't like using variant, but it is the only thing I can find that works. > Dim strToolbar As String > > strToolbar = "IT PMO Financial Control Tool" > > For Each mtb In CommandBars ' <-- Don't like having to loop. Just want to set this to true or false > If mtb.Name = strToolbar Then > mtb.Visible = False > MsgBox mtb.Name & " Hidden" > End If > Next mtb > End Sub > '=============================================== > > '========WHAT I WANT (which doesn't) =================== > Sub RemoveDataEditToolbar() > > Dim mtb As Access.CommandBar > Dim strToolbar As String > > strToolbar = "IT PMO Financial Control Tool" > Set mtb = Access.CommandBar.Name(strToolbar) > mtb.Visible = False > > set mtb = nothing > End Sub > '=============================================== > > > Any ideas? > > cheers > Darryl > > This email and any attachments may contain privileged and confidential information > and are intended for the named addressee only. If you have received this e-mail in > error, please notify the sender and delete this e-mail immediately. Any > confidentiality, privilege or copyright is not waived or lost because this e-mail > has been sent to you in error. It is your responsibility to check this e-mail and > any attachments for viruses. No warranty is made that this material is free from > computer virus or any other defect or error. Any loss/damage incurred by using this > material is not the sender's responsibility. The sender's entire liability will be > limited to resupplying the material. > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- Stuart Mclachlan -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From rockysmolin at bchacc.com Thu Sep 11 20:09:33 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Thu, 11 Sep 2008 18:09:33 -0700 Subject: [AccessD] CRLF in email In-Reply-To: <003201c91472$5df11e00$0d1b910a@denzilnote> References: <0c8301c91453$33847690$0301a8c0@HAL9005><2398.24.35.25.42.1221169665.squirrel@mail.expedient.net><0c9e01c91459$0665ceb0$0301a8c0@HAL9005><0caf01c9145b$61833ce0$0301a8c0@HAL9005> <003201c91472$5df11e00$0d1b910a@denzilnote> Message-ID: <0cdf01c91474$37fcb540$0301a8c0@HAL9005> Darren: Nothing more or less than using for CrLf. But now the user has ANOTHER request. He'd like the sig in Eras Medium ITC, and some in blue and some in black. Anybody? :o) MTIA, Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darren D Sent: Thursday, September 11, 2008 5:56 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] CRLF in email Hi Rocky and team I have this exact same issue - Can you post the solution? Thanks Darren -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Friday, 12 September 2008 8:12 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] CRLF in email Looks like the works in plain text comin' and goin'. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Thursday, September 11, 2008 2:55 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] CRLF in email Would using

work if the email client is set to display only plain text? Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Michael Bahr Sent: Thursday, September 11, 2008 2:48 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] CRLF in email Rocky, proper html formating should be

bla bla bla

. You could also use
. The difference is
is a soft-return where

is a hard-return. However you should consider using both CRLF and

. This is the same as looking at the source of a web page. Using the CRLF formats the source and the

formats the html. Some email readers may be set to display only plain text (strip out html) so then the formating would still remain the same. Mike... > Dear List: > > I am trying to add some text and a signature to the body of an email > with a report attached. Everything works fine except the carriage > return/Line Feed. I'm using the following: > > > myItem.HTMLBody = "Thank you very much for your order." & Chr(10) & > Chr(13) > _ > & Chr(10) & Chr(13) _ > & "Please review the attached rental agreement and call or e-mail > me with any " _ > & "questions or changes." & vbCrLf & vbCrLf _ > & "If this looks good to you, please complete the credit card > authorization " _ > & "form and fax it back to us at (858) 560-9900." & vbCrLf & vbCrLf _ > & "Ken Gimbel" & vbCrLf & "ph 858.560.5000 | fx 858.560.9900 " & > vbCrLf _ > & "4909 ruffner st. | san diego, CA 92101 " & vbCrLf _ > & "www.voiceandvideo.com " > > and neither CHR(10) & Chr(13) nor vbCrLf work. The email body comes > out looking like this: > > Thank you very much for your order. Please review the attached rental > agreement and call or e-mail me with any questions or changes. If this > looks good to you, please complete the credit card authorization form > and fax it back to us at (858) 560-9900. Ken Gimbel ph 858.560.5000 | > fx 858.560.9900 > 4909 ruffner st. | san diego, CA 92101 www.voiceandvideo.com > > No returns or line spacing. Does anyone know what I'm doing wrong here? > > MTIA > > Rocky > > > > > > > > Rocky Smolin > > Beach Access Software > > 858-259-4334 > > www.e-z-mrp.com > > www.bchacc.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 Darryl.Collins at coles.com.au Thu Sep 11 20:21:34 2008 From: Darryl.Collins at coles.com.au (Darryl Collins) Date: Fri, 12 Sep 2008 11:21:34 +1000 Subject: [AccessD] Controlling Custom Toolbars In-Reply-To: Message-ID: <57E6E6CA42105A48B977303A2CDC2720076DA26F2B@WPEXCH22.retail.ad.cmltd.net.au> Thanks Dan, After more digging around I found the main problem (apart from my own inability ;)) was I didn't have a reference set to Microsoft Office via the VBE. The commandbar object lives in there and not Access. Naturally I found this out just before your email arrived. Now things seem to be working better - many thanks for you input. Cheers Darryl -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Dan Waters Sent: Friday, 12 September 2008 11:09 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Controlling Custom Toolbars Do this: Dim cbrCustomToolbar as CommandBar Set cbrFormView = CommandBars("Custom Name") cbrCustomToolbar.Enabled = True cbrCustomToolbar.Visible = True cbrCustomToolbar.Position = msoBarLeft '(see constants below) I clicked Help on Position to get this: MsoBarPosition can be one of these MsoBarPosition constants. msoBarBottom msoBarFloating msoBarLeft msoBarMenuBar msoBarPopup msoBarRight msoBarTop Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darryl Collins Sent: Thursday, September 11, 2008 7:39 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Controlling Custom Toolbars Ok Folks That works great. Now I have a new (but related issue). How do i control the docking position on built in/ existing toolbars? In Excel VBA the code is gxltbMyToolbar.Position = 1 The control options being Top 1 Right 2 Left 0 Bottom 3 Floating 4 It seems that 4 (floating is the default) in Access, but what is the darn syntax to get them to dock? I can do this if i create the command bar from scratch, but in this case I am just using commandbars I custom built using the default button set. Set myBar = CommandBars.Add(Name:="Customer", _ Position:=msoBarTop, _ Temporary:=True) but I cannot figure out how to make existing toolbars behave! Thanks once again Darryl. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Stuart McLachlan Sent: Thursday, 11 September 2008 4:07 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Controlling Custom Toolbars If you ONLY want the custom toolbar (ie you don't want the default Form toolbar as well), just set the Toolbar property in the Forms Property Sheet-Other tab. Otherwise use DoCmd.ShowToolbar "IT PMO Financial Control Tool", acToolbarYes and DoCmd.ShowToolbar "IT PMO Financial Control Tool", acToolbarNo to display/hide it. On 11 Sep 2008 at 15:48, Darryl Collins wrote: > Hi Folks, > > When I code in Excel I use custom toolbars a lot and they are dead > easy to control. Often each set will have it own toolbar that has > tools specific to its purpose and these are turned off and off using > worksheet activate/deactive. > > In this Access beastie I am building I have made up a nice little > custom toolbar, but I only want it to be available on when certain > forms are active. Struggling to get the syntax right on making the > toolbar appear / disappear. > > Here is what I have go so far (which works - it is just too darn untidy - there has to be a better way). > > '========WHAT I HAVE (which works) ======================= > Sub RemoveDataEditToolbar() > > Dim mtb As Variant ' <-- Don't like using variant, but it is the only thing I can find that works. > Dim strToolbar As String > > strToolbar = "IT PMO Financial Control Tool" > > For Each mtb In CommandBars ' <-- Don't like having to loop. Just want to set this to true or false > If mtb.Name = strToolbar Then > mtb.Visible = False > MsgBox mtb.Name & " Hidden" > End If > Next mtb > End Sub > '=============================================== > > '========WHAT I WANT (which doesn't) =================== > Sub RemoveDataEditToolbar() > > Dim mtb As Access.CommandBar > Dim strToolbar As String > > strToolbar = "IT PMO Financial Control Tool" > Set mtb = Access.CommandBar.Name(strToolbar) > mtb.Visible = False > > set mtb = nothing > End Sub > '=============================================== > > > Any ideas? > > cheers > Darryl > > This email and any attachments may contain privileged and confidential information > and are intended for the named addressee only. If you have received this e-mail in > error, please notify the sender and delete this e-mail immediately. Any > confidentiality, privilege or copyright is not waived or lost because this e-mail > has been sent to you in error. It is your responsibility to check this e-mail and > any attachments for viruses. No warranty is made that this material is free from > computer virus or any other defect or error. Any loss/damage incurred by using this > material is not the sender's responsibility. The sender's entire liability will be > limited to resupplying the material. > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- Stuart Mclachlan -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/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 email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. From markamatte at hotmail.com Thu Sep 11 20:24:20 2008 From: markamatte at hotmail.com (Mark A Matte) Date: Fri, 12 Sep 2008 01:24:20 +0000 Subject: [AccessD] OT: Build a calculator In-Reply-To: References: <48C8B587.17715.9BE32927@stuart.lexacorp.com.pg> <57E6E6CA42105A48B977303A2CDC2720076DA26F28@WPEXCH22.retail.ad.cmltd.net.au> Message-ID: Hello All, I apologize for the OT...but knowlege here is abundant. I want to build a calculator/tool...and I'm not sure about the hardware. EPROMS and microprocessors have been suggessted...but not from knowledgable sources. The tool needs to have a place/way to enter 4 values...then do 3 calculations and display 3 results. Thats it. I'm looking for what I need to learn...I'm hoping the final product will be credit card size. Any suggestions on what I should study? Thanks, Mark A. Matte _________________________________________________________________ Want to do more with Windows Live? Learn ?10 hidden secrets? from Jamie. http://windowslive.com/connect/post/jamiethomson.spaces.live.com-Blog-cns!550F681DAD532637!5295.entry?ocid=TXT_TAGLM_WL_domore_092008 From stuart at lexacorp.com.pg Thu Sep 11 21:44:01 2008 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Fri, 12 Sep 2008 12:44:01 +1000 Subject: [AccessD] Controlling Custom Toolbars In-Reply-To: <57E6E6CA42105A48B977303A2CDC2720076DA26F28@WPEXCH22.retail.ad.cmltd.net.au> References: <48C8B587.17715.9BE32927@stuart.lexacorp.com.pg>, <57E6E6CA42105A48B977303A2CDC2720076DA26F28@WPEXCH22.retail.ad.cmltd.net.au> Message-ID: <48C9D771.25300.A04FA673@stuart.lexacorp.com.pg> CommandBars("Customer").Position = msoBarTop But make sure you have a reference to the Microsoft Office Object Libarary On 12 Sep 2008 at 10:39, Darryl Collins wrote: > > Ok Folks > > That works great. Now I have a new (but related issue). How do i control the docking position on built in/ existing toolbars? > > In Excel VBA the code is > > gxltbMyToolbar.Position = 1 > > The control options being > Top 1 > Right 2 > Left 0 > Bottom 3 > Floating 4 > > It seems that 4 (floating is the default) in Access, but what is the darn syntax to get them to dock? > > I can do this if i create the command bar from scratch, but in this case I am just using commandbars I custom built using the default button set. > > > Set myBar = CommandBars.Add(Name:="Customer", _ > Position:=msoBarTop, _ > Temporary:=True) > > but I cannot figure out how to make existing toolbars behave! > > Thanks once again > > Darryl. > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Stuart > McLachlan > Sent: Thursday, 11 September 2008 4:07 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Controlling Custom Toolbars > > > If you ONLY want the custom toolbar (ie you don't want the default Form toolbar as well), > just set the Toolbar property in the Forms Property Sheet-Other tab. > > Otherwise use > > DoCmd.ShowToolbar "IT PMO Financial Control Tool", acToolbarYes > and > DoCmd.ShowToolbar "IT PMO Financial Control Tool", acToolbarNo > > to display/hide it. > > > On 11 Sep 2008 at 15:48, Darryl Collins wrote: > > > Hi Folks, > > > > When I code in Excel I use custom toolbars a lot and they are dead > > easy to control. Often each set will have it own toolbar that has > > tools specific to its purpose and these are turned off and off using > > worksheet activate/deactive. > > > > In this Access beastie I am building I have made up a nice little > > custom toolbar, but I only want it to be available on when certain > > forms are active. Struggling to get the syntax right on making the > > toolbar appear / disappear. > > > > Here is what I have go so far (which works - it is just too darn untidy - there has to be a better way). > > > > '========WHAT I HAVE (which works) ======================= > > Sub RemoveDataEditToolbar() > > > > Dim mtb As Variant ' <-- Don't like using variant, but it is the only thing I can find that works. > > Dim strToolbar As String > > > > strToolbar = "IT PMO Financial Control Tool" > > > > For Each mtb In CommandBars ' <-- Don't like having to loop. Just want to set this to true or false > > If mtb.Name = strToolbar Then > > mtb.Visible = False > > MsgBox mtb.Name & " Hidden" > > End If > > Next mtb > > End Sub > > '=============================================== > > > > '========WHAT I WANT (which doesn't) =================== > > Sub RemoveDataEditToolbar() > > > > Dim mtb As Access.CommandBar > > Dim strToolbar As String > > > > strToolbar = "IT PMO Financial Control Tool" > > Set mtb = Access.CommandBar.Name(strToolbar) > > mtb.Visible = False > > > > set mtb = nothing > > End Sub > > '=============================================== > > > > > > Any ideas? > > > > cheers > > Darryl > > > > This email and any attachments may contain privileged and confidential information > > and are intended for the named addressee only. If you have received this e-mail in > > error, please notify the sender and delete this e-mail immediately. Any > > confidentiality, privilege or copyright is not waived or lost because this e-mail > > has been sent to you in error. It is your responsibility to check this e-mail and > > any attachments for viruses. No warranty is made that this material is free from > > computer virus or any other defect or error. Any loss/damage incurred by using this > > material is not the sender's responsibility. The sender's entire liability will be > > limited to resupplying the material. > > > > > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > -- > Stuart Mclachlan > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > This email and any attachments may contain privileged and confidential information > and are intended for the named addressee only. If you have received this e-mail in > error, please notify the sender and delete this e-mail immediately. Any > confidentiality, privilege or copyright is not waived or lost because this e-mail > has been sent to you in error. It is your responsibility to check this e-mail and > any attachments for viruses. No warranty is made that this material is free from > computer virus or any other defect or error. Any loss/damage incurred by using this > material is not the sender's responsibility. The sender's entire liability will be > limited to resupplying the material. > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- Stuart Mclachlan From Darryl.Collins at coles.com.au Thu Sep 11 23:58:40 2008 From: Darryl.Collins at coles.com.au (Darryl Collins) Date: Fri, 12 Sep 2008 14:58:40 +1000 Subject: [AccessD] Controlling Custom Toolbars In-Reply-To: <48C9D771.25300.A04FA673@stuart.lexacorp.com.pg> Message-ID: <57E6E6CA42105A48B977303A2CDC2720076DA26F37@WPEXCH22.retail.ad.cmltd.net.au> Ok... Got these pesky Access toolbars to work as expected - *phew* spend much of today on this. You know, it is a complete b at stard trying to find the Toolbar FaceID's that work in Access. Dead easy in Excel to get that info - anyway, a bit of hacking Excel VBA and trial and error with ID's in Access and I have this working well now. Thanks for everyones help. Love the toolbars though, much neater than making custom buttons on each form. Definately need to set a reference to the Microsoft Office Object Libarary! '========================================================= Option Compare Database Option Explicit Sub CreateNavigationToolbar() Dim cmdbarNavigation As CommandBar ' Destroy the existing toolbar if exists On Error Resume Next CommandBars("Navigation Toolbar").Delete On Error GoTo 0 ' Create the toolbar Set cmdbarNavigation = CommandBars.Add(Name:="Navigation Toolbar", _ Position:=msoBarBottom, _ Temporary:=True) With cmdbarNavigation .Controls.Add Type:=msoControlButton, Id:=1786 '1 Close .Controls.Add Type:=msoControlButton, Id:=154 '2 GotoFirst .Controls.Add Type:=msoControlButton, Id:=155 '3 GotoPrev .Controls.Add Type:=msoControlButton, Id:=156 '4 GotoNext .Controls.Add Type:=msoControlButton, Id:=157 '5 GotoLast .Controls.Add Type:=msoControlButton, Id:=539 '6 New .Controls.Add Type:=msoControlButton, Id:=530 '7 Duplicate .Controls.Add Type:=msoControlButton, Id:=644 '8 Delete .Visible = True End With '-- Define the Close button With cmdbarNavigation.Controls(1) .Style = msoButtonIconAndCaption .Caption = "Close Form" .OnAction = "CloseActiveForm" .TooltipText = "Close Form" End With '-- Define the Duplicate button With cmdbarNavigation.Controls(7) .Style = msoButtonIcon 'AndCaption '.Caption = "Duplicate" .OnAction = "DuplicateRecord" .TooltipText = "Duplicate active record" End With Set cmdbarNavigation = Nothing End Sub '====================================================================== -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Stuart McLachlan Sent: Friday, 12 September 2008 12:44 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Controlling Custom Toolbars CommandBars("Customer").Position = msoBarTop But make sure you have a reference to the Microsoft Office Object Libarary On 12 Sep 2008 at 10:39, Darryl Collins wrote: > > Ok Folks > > That works great. Now I have a new (but related issue). How do i control the docking position on built in/ existing toolbars? > > In Excel VBA the code is > > gxltbMyToolbar.Position = 1 > > The control options being > Top 1 > Right 2 > Left 0 > Bottom 3 > Floating 4 > > It seems that 4 (floating is the default) in Access, but what is the darn syntax to get them to dock? > > I can do this if i create the command bar from scratch, but in this case I am just using commandbars I custom built using the default button set. > > > Set myBar = CommandBars.Add(Name:="Customer", _ > Position:=msoBarTop, _ > Temporary:=True) > > but I cannot figure out how to make existing toolbars behave! > > Thanks once again > > Darryl. > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Stuart > McLachlan > Sent: Thursday, 11 September 2008 4:07 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Controlling Custom Toolbars > > > If you ONLY want the custom toolbar (ie you don't want the default Form toolbar as well), > just set the Toolbar property in the Forms Property Sheet-Other tab. > > Otherwise use > > DoCmd.ShowToolbar "IT PMO Financial Control Tool", acToolbarYes > and > DoCmd.ShowToolbar "IT PMO Financial Control Tool", acToolbarNo > > to display/hide it. > > > On 11 Sep 2008 at 15:48, Darryl Collins wrote: > > > Hi Folks, > > > > When I code in Excel I use custom toolbars a lot and they are dead > > easy to control. Often each set will have it own toolbar that has > > tools specific to its purpose and these are turned off and off using > > worksheet activate/deactive. > > > > In this Access beastie I am building I have made up a nice little > > custom toolbar, but I only want it to be available on when certain > > forms are active. Struggling to get the syntax right on making the > > toolbar appear / disappear. > > > > Here is what I have go so far (which works - it is just too darn untidy - there has to be a better way). > > > > '========WHAT I HAVE (which works) ======================= > > Sub RemoveDataEditToolbar() > > > > Dim mtb As Variant ' <-- Don't like using variant, but it is the only thing I can find that works. > > Dim strToolbar As String > > > > strToolbar = "IT PMO Financial Control Tool" > > > > For Each mtb In CommandBars ' <-- Don't like having to loop. Just want to set this to true or false > > If mtb.Name = strToolbar Then > > mtb.Visible = False > > MsgBox mtb.Name & " Hidden" > > End If > > Next mtb > > End Sub > > '=============================================== > > > > '========WHAT I WANT (which doesn't) =================== > > Sub RemoveDataEditToolbar() > > > > Dim mtb As Access.CommandBar > > Dim strToolbar As String > > > > strToolbar = "IT PMO Financial Control Tool" > > Set mtb = Access.CommandBar.Name(strToolbar) > > mtb.Visible = False > > > > set mtb = nothing > > End Sub > > '=============================================== > > > > > > Any ideas? > > > > cheers > > Darryl > > > > This email and any attachments may contain privileged and confidential information > > and are intended for the named addressee only. If you have received this e-mail in > > error, please notify the sender and delete this e-mail immediately. Any > > confidentiality, privilege or copyright is not waived or lost because this e-mail > > has been sent to you in error. It is your responsibility to check this e-mail and > > any attachments for viruses. No warranty is made that this material is free from > > computer virus or any other defect or error. Any loss/damage incurred by using this > > material is not the sender's responsibility. The sender's entire liability will be > > limited to resupplying the material. > > > > > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > -- > Stuart Mclachlan > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > This email and any attachments may contain privileged and confidential information > and are intended for the named addressee only. If you have received this e-mail in > error, please notify the sender and delete this e-mail immediately. Any > confidentiality, privilege or copyright is not waived or lost because this e-mail > has been sent to you in error. It is your responsibility to check this e-mail and > any attachments for viruses. No warranty is made that this material is free from > computer virus or any other defect or error. Any loss/damage incurred by using this > material is not the sender's responsibility. The sender's entire liability will be > limited to resupplying the material. > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- Stuart Mclachlan -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. From paul.hartland at googlemail.com Fri Sep 12 02:25:51 2008 From: paul.hartland at googlemail.com (Paul Hartland) Date: Fri, 12 Sep 2008 08:25:51 +0100 Subject: [AccessD] SQL Server 2005 LDF Viewer Message-ID: <38c884770809120025n54f37781y764c9a1767779b38@mail.gmail.com> To all, Over the last two days we have been losing personnel off our main database, and have had to retrieve them from one of my many backups. However I can't seem to see why or where this is happening in my application (VB6)...Does anybody know how to view the LDF files, so that I can see each transaction as it takes place, or if there is something I can do when a record is deleted from tblPersonnel, or if I can turn on some sort of monitoring system ? Thanks in advance for any help on this. -- Paul Hartland paul.hartland at googlemail.com From shamil at smsconsulting.spb.ru Fri Sep 12 04:12:24 2008 From: shamil at smsconsulting.spb.ru (Shamil Salakhetdinov) Date: Fri, 12 Sep 2008 13:12:24 +0400 Subject: [AccessD] OT: Friday lyrics - Love and truth and hope and grace are all I need.... Message-ID: <000c01c914b7$ae48b120$6401a8c0@nant> Neil Diamond - Pretty Amazing Grace http://www.youtube.com/watch?v=WSzeFOY6s7A Pretty amazing grace is what You showed me pretty amazing grace is who You are I was an empty vessel You filled me up inside and with amazing grace restored my pride Pretty amazing grace is how You saved me and with amazing grace reclaimed my heart love in the midst of chaos calm in the heat of war showed with amazing grace what love was for You forgave my insensitivity and my attempt to then mislead You You stood beside a wretch like me Your pretty amazing grace was all I needed. Stumbled inside the doorway of Your chapel humbled in God by everything I found beauty and love surround me freed me from what I fear ask for amazing grace and You appear You overcame my loss of hope and faith gave me a truth I could believe in You led me to a higher place showed Your amazing grace when grace was what I needed look in a mirror I see Your reflection open a book You live on every page I fall and You're there to lift me share every road I climb and with amazing grace You ease my mind Came to You with empty pockets first when I returned I was rich man didn't believe love could quench my thirst but with amazing grace You showed me that it can In Your amazing grace I had a vision from that amazing place I came to be into the night I wandered wandering aimlessly found Your amazing grace to comfort me. pretty amazing pretty amazing pretty amazing pretty amazing pretty amazing pretty amazing pretty amazing pretty amazing You overcame my loss of hope and faith, gave me a truth I could believe in. You led me to that higher place showed me that love and truth and hope and grace were all I needed. http://www.lyrics007.com/Neil%20Diamond%20Lyrics/Pretty%20Amazing%20Grace%20 Lyrics.html Thank you. -- Shamil From Gustav at cactus.dk Fri Sep 12 05:17:42 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 12 Sep 2008 12:17:42 +0200 Subject: [AccessD] Harkins and Brock Message-ID: Hi Charlotte Come on. Both you and Susan are clever people, this millisecond journey is just one of those areas where you may not know exactly what is going on because you either haven't had the need to know or really don't care. If you know what a double is, you are on your feet. Susan's problem was that I had a hard time explaining what to use milliseconds for, and I could only find some generic uninspired examples. I haven't myself used the milliseconds for anything else than experiments, but thought it could be useful for some. But, as always, Susan found a twist to make the topic readable even for the not-so-enthusiastic reader. The idea came one day where I wondered why SQL Server presents a time resolution of 3 ms while Access/VBA/JET only offers 1000 ms, both using the same underlying data type of double. So what was the resolution of double really? Much to my surprise, I found out that the resolution is 1 ms (or better) in the full range of data type date/time - from 100-1-1 00:00:00.000 to 9999-12-31 23.59.59.999. Then I created the functions needed to generate and read time values with milliseconds and to create a set of functions handling milliseconds that mimic the full range of the well-known date/time functions of Access/VBA. One of the challenges was to get the calculations with doubles right avoiding bit errors. This was solved by switching to data type decimal at some critical places. /gustav >>> cfoust at infostatsystems.com 12-09-2008 00:42 >>> OK, all together now ... "uh... huh????" :) Is the jagged time thingie the reason why I run out of money before I run out of time?? Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Thursday, September 11, 2008 3:12 PM To: AccessD at databaseadvisors.com Subject: [AccessD] Harkins and Brock http://www.devx.com/ I just wanted to share this article with you guys -- Gustav and I have written a number of articles together but this one's different as I had to ask him repeatedly... "uh... huh????" :) I think it turned out really well and certainly will be useful to the developers who actually need it. Susan H. From Gustav at cactus.dk Fri Sep 12 06:07:35 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 12 Sep 2008 13:07:35 +0200 Subject: [AccessD] Access to the millisecond (was: Harkins and Brock) Message-ID: Hi all For the archive, here's the direct link to the article: http://www.devx.com/dbzone/Article/39046 and this is the list of functions included: Msec() is the core function. It generates the current time with millisecond resolution and returns current (local) date/time, including millisecond. DatePartMsec() extracts milliseconds or decimal seconds, as well as all the standard date/time parts from a date/time value. DateAddMsec() adds milliseconds or decimal seconds, as well as all the standard date/time intervals to a date/time value. DateDiffMsec() calculates the difference in milliseconds or decimal seconds between two date/time values. MsecDiff() returns the difference in milliseconds between two date/time values. TimeMsec() returns current (local) date/time, including millisecond as a time value that includes milliseconds. NowMsec() returns current (local) date/time, including millisecond as a full date/time value that includes milliseconds. TimerMsec() returns count of seconds from midnight with millisecond resolution. Millisecond() returns the millisecond part from a date/time value. SecondMsec() returns the second and the millisecond from a date/time value as a decimal value. MsecSerial() returns the date/time value of a numeric (double) input rounded to integer milliseconds relative to a base date. TimeSerialMsec() returns the date/time value of the combined parameters for hour, minute, second, and millisecond. MsecValueMsec() extracts the millisecond time part from a string expression. ExtractMsec() returns millisecond the date/time value from the last digits of a string. CDateMsec() converts a date/time expression including millisecond to a date/time value. CVDateMsec() converts a date/time expression including millisecond or a number to a date/time value. IsDateMsec() checks an expression if it represents a date/time value with or without a millisecond part. DateValueMsec() cleans a string for a time part including milliseconds. It also returns the date value of the string. TimeValueMsec() cleans a string for a millisecond part. StrDateFull() returns a date/time value formatted as to the current settings for Short Date and Long Time with trailing milliseconds formatted as a fixed-length numeric string. StrDateMsec() returns milliseconds of a date/time value as a "000" formatted string. FormatMsec() returns a value as a string formatted with milliseconds or any other value using Format. StrDateIso8601Msec() returns a value as a string formatted with milliseconds according to ISO-8601. DateSumDates() adds or subtracts partial date/time values to create a compound date value. TimeSerialFull() returns correct numeric negative date/time values, which TimeSerial() does not. DateValid() returns invalid numeric negative date/time values less than one day as their positive equivalents. DateLinear() converts a native date/time value and returns the linear date value. DateNative() converts a linear date value and returns the native date value. DateMsecSet() rounds off a date/time value to the second and optionally adds specified millisecond part up to and including 999 milliseconds. SplitDateMsec() splits a date/time value into its components of date/time and millisecond as date/time values. JoinDateMsec() joins an array of date/time and millisecond as date/time values to a compound date/time value. DateSort() returns a continuous value including milliseconds that can be sorted on correctly even for negative date values. DateTimeRound() returns a date/time rounded off to the second by removing a millisecond portion. DateTimeRoundMsec() returns a date/time value rounded to the nearest millisecond approximately by 4/5. /gustav >>> ssharkins at gmail.com 12-09-2008 00:12 >>> http://www.devx.com/ I just wanted to share this article with you guys -- Gustav and I have written a number of articles together but this one's different as I had to ask him repeatedly... "uh... huh????" :) I think it turned out really well and certainly will be useful to the developers who actually need it. Susan H. From max.wanadoo at gmail.com Fri Sep 12 06:21:11 2008 From: max.wanadoo at gmail.com (Max Wanadoo) Date: Fri, 12 Sep 2008 12:21:11 +0100 Subject: [AccessD] Access to the millisecond (was: Harkins and Brock) In-Reply-To: References: Message-ID: hmmm this has set me thinking.... Where do I get a brain similar to Gustav's? Really clever stuff... Max On Fri, Sep 12, 2008 at 12:07 PM, Gustav Brock wrote: > Hi all > > For the archive, here's the direct link to the article: > > http://www.devx.com/dbzone/Article/39046 > > and this is the list of functions included: > > Msec() is the core function. It generates the current time with millisecond > resolution and returns current (local) date/time, including millisecond. > DatePartMsec() extracts milliseconds or decimal seconds, as well as all the > standard date/time parts from a date/time value. > DateAddMsec() adds milliseconds or decimal seconds, as well as all the > standard date/time intervals to a date/time value. > DateDiffMsec() calculates the difference in milliseconds or decimal seconds > between two date/time values. > MsecDiff() returns the difference in milliseconds between two date/time > values. > TimeMsec() returns current (local) date/time, including millisecond as a > time value that includes milliseconds. > NowMsec() returns current (local) date/time, including millisecond as a > full date/time value that includes milliseconds. > TimerMsec() returns count of seconds from midnight with millisecond > resolution. > Millisecond() returns the millisecond part from a date/time value. > SecondMsec() returns the second and the millisecond from a date/time value > as a decimal value. > MsecSerial() returns the date/time value of a numeric (double) input > rounded to integer milliseconds relative to a base date. > TimeSerialMsec() returns the date/time value of the combined parameters for > hour, minute, second, and millisecond. > MsecValueMsec() extracts the millisecond time part from a string > expression. > ExtractMsec() returns millisecond the date/time value from the last digits > of a string. > CDateMsec() converts a date/time expression including millisecond to a > date/time value. > CVDateMsec() converts a date/time expression including millisecond or a > number to a date/time value. > IsDateMsec() checks an expression if it represents a date/time value with > or without a millisecond part. > DateValueMsec() cleans a string for a time part including milliseconds. It > also returns the date value of the string. > TimeValueMsec() cleans a string for a millisecond part. > StrDateFull() returns a date/time value formatted as to the current > settings for Short Date and Long Time with trailing milliseconds formatted > as a fixed-length numeric string. > StrDateMsec() returns milliseconds of a date/time value as a "000" > formatted string. > FormatMsec() returns a value as a string formatted with milliseconds or any > other value using Format. > StrDateIso8601Msec() returns a value as a string formatted with > milliseconds according to ISO-8601. > DateSumDates() adds or subtracts partial date/time values to create a > compound date value. > TimeSerialFull() returns correct numeric negative date/time values, which > TimeSerial() does not. > DateValid() returns invalid numeric negative date/time values less than one > day as their positive equivalents. > DateLinear() converts a native date/time value and returns the linear date > value. > DateNative() converts a linear date value and returns the native date > value. > DateMsecSet() rounds off a date/time value to the second and optionally > adds specified millisecond part up to and including 999 milliseconds. > SplitDateMsec() splits a date/time value into its components of date/time > and millisecond as date/time values. > JoinDateMsec() joins an array of date/time and millisecond as date/time > values to a compound date/time value. > DateSort() returns a continuous value including milliseconds that can be > sorted on correctly even for negative date values. > DateTimeRound() returns a date/time rounded off to the second by removing a > millisecond portion. > DateTimeRoundMsec() returns a date/time value rounded to the nearest > millisecond approximately by 4/5. > > /gustav > > > >>> ssharkins at gmail.com 12-09-2008 00:12 >>> > http://www.devx.com/ > > I just wanted to share this article with you guys -- Gustav and I have > written a number of articles together but this one's different as I had to > ask him repeatedly... "uh... huh????" :) > > I think it turned out really well and certainly will be useful to the > developers who actually need it. > > Susan H. > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From dwaters at usinternet.com Fri Sep 12 07:33:09 2008 From: dwaters at usinternet.com (Dan Waters) Date: Fri, 12 Sep 2008 07:33:09 -0500 Subject: [AccessD] CRLF in email In-Reply-To: <0cdf01c91474$37fcb540$0301a8c0@HAL9005> References: <0c8301c91453$33847690$0301a8c0@HAL9005><2398.24.35.25.42.1221169665.squirrel@mail.expedient.net><0c9e01c91459$0665ceb0$0301a8c0@HAL9005><0caf01c9145b$61833ce0$0301a8c0@HAL9005><003201c91472$5df11e00$0d1b910a@denzilnote> <0cdf01c91474$37fcb540$0301a8c0@HAL9005> Message-ID: <355AD6E94090498284DAD7580812A5D6@danwaters> Hi Rocky, I did something like this once upon a time. First, I used Expression Web to create a page that looked like I wanted it to look. Then switched to code view to see the HTML. I copied that to VBA code, and made syntax mods so it would work there. This will keep you from guessing what you have to type in HTML to get what you want. I bet there are a number of free apps that would do the same thing. Maybe even Word? HTH! Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Thursday, September 11, 2008 8:10 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] CRLF in email Darren: Nothing more or less than using for CrLf. But now the user has ANOTHER request. He'd like the sig in Eras Medium ITC, and some in blue and some in black. Anybody? :o) MTIA, Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darren D Sent: Thursday, September 11, 2008 5:56 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] CRLF in email Hi Rocky and team I have this exact same issue - Can you post the solution? Thanks Darren -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Friday, 12 September 2008 8:12 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] CRLF in email Looks like the works in plain text comin' and goin'. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Thursday, September 11, 2008 2:55 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] CRLF in email Would using

work if the email client is set to display only plain text? Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Michael Bahr Sent: Thursday, September 11, 2008 2:48 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] CRLF in email Rocky, proper html formating should be

bla bla bla

. You could also use
. The difference is
is a soft-return where

is a hard-return. However you should consider using both CRLF and

. This is the same as looking at the source of a web page. Using the CRLF formats the source and the

formats the html. Some email readers may be set to display only plain text (strip out html) so then the formating would still remain the same. Mike... > Dear List: > > I am trying to add some text and a signature to the body of an email > with a report attached. Everything works fine except the carriage > return/Line Feed. I'm using the following: > > > myItem.HTMLBody = "Thank you very much for your order." & Chr(10) & > Chr(13) > _ > & Chr(10) & Chr(13) _ > & "Please review the attached rental agreement and call or e-mail > me with any " _ > & "questions or changes." & vbCrLf & vbCrLf _ > & "If this looks good to you, please complete the credit card > authorization " _ > & "form and fax it back to us at (858) 560-9900." & vbCrLf & vbCrLf _ > & "Ken Gimbel" & vbCrLf & "ph 858.560.5000 | fx 858.560.9900 " & > vbCrLf _ > & "4909 ruffner st. | san diego, CA 92101 " & vbCrLf _ > & "www.voiceandvideo.com " > > and neither CHR(10) & Chr(13) nor vbCrLf work. The email body comes > out looking like this: > > Thank you very much for your order. Please review the attached rental > agreement and call or e-mail me with any questions or changes. If this > looks good to you, please complete the credit card authorization form > and fax it back to us at (858) 560-9900. Ken Gimbel ph 858.560.5000 | > fx 858.560.9900 > 4909 ruffner st. | san diego, CA 92101 www.voiceandvideo.com > > No returns or line spacing. Does anyone know what I'm doing wrong here? > > MTIA > > Rocky > > > > > > > > Rocky Smolin > > Beach Access Software > > 858-259-4334 > > www.e-z-mrp.com > > www.bchacc.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 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From ssharkins at gmail.com Fri Sep 12 09:11:37 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Fri, 12 Sep 2008 10:11:37 -0400 Subject: [AccessD] Harkins and Brock References: Message-ID: <041901c914e2$0d90d610$2f8601c7@SusanOne> > Then I created the functions needed to generate and read time values with > milliseconds and to create a set of functions handling milliseconds that > mimic the full range of the well-known date/time functions of Access/VBA. > One of the challenges was to get the calculations with doubles right > avoiding bit errors. This was solved by switching to data type decimal at > some critical places. ======And he called it a "good time!" :) Susan H. From ssharkins at gmail.com Fri Sep 12 09:14:33 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Fri, 12 Sep 2008 10:14:33 -0400 Subject: [AccessD] OT Re: Harkins and Brock References: <02be01c9145b$7227cc00$2f8601c7@SusanOne> Message-ID: <041a01c914e2$0e296c90$2f8601c7@SusanOne> > Susan, Nice picture on DBA, it makes a big difference when you have an > image/picture of who you're communicating with. =======I didn't know there was a picture of me at DBA. I didn't supply one, wonder where it came from? I can't find it. Susan H. From garykjos at gmail.com Fri Sep 12 09:32:02 2008 From: garykjos at gmail.com (Gary Kjos) Date: Fri, 12 Sep 2008 09:32:02 -0500 Subject: [AccessD] OT Re: Harkins and Brock In-Reply-To: <041a01c914e2$0e296c90$2f8601c7@SusanOne> References: <02be01c9145b$7227cc00$2f8601c7@SusanOne> <041a01c914e2$0e296c90$2f8601c7@SusanOne> Message-ID: Sure you did. I remember it way back when. It's you and Lexi I beleive. If you go to CONTACTS there is a list of names where you are listed and if you click on your name, this comes up. http://www.databaseadvisors.com/newsletters/bio_pages/bio_susan.asp GK On 9/12/08, Susan Harkins wrote: > > Susan, Nice picture on DBA, it makes a big difference when you have an > > image/picture of who you're communicating with. > > =======I didn't know there was a picture of me at DBA. I didn't supply one, > wonder where it came from? I can't find it. > > Susan H. > > -- > 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 iggy at nanaimo.ark.com Thu Sep 11 09:44:53 2008 From: iggy at nanaimo.ark.com (Tony Septav) Date: Thu, 11 Sep 2008 07:44:53 -0700 Subject: [AccessD] Time Comparisons Message-ID: <48C92EE5.3020107@nanaimo.ark.com> Hey All I am trying to trigger an event when the current time = the calculated time. I have been fiddling with this, as previous versions would trip up every so often (ie. after 28 hours). The current version has been running for 3 days and everything seems to be working fine, just wanted to check with the time experts if I am doing this correctly. Me!BTime - unbound on form Timer = 1000 Private Sub Form_Open(Cancel As Integer) Me!Btime = cstr(Format(TimeSerial(Hour(Now()), Minute(Now()), Second(Now()) + 5), "long time")) End Sub Private Sub Form_Timer() If cstr(Format(TimeSerial(Hour(Now()), Minute(Now()), Second(Now())), "long time"))> cstr(Format(TimeSerial(Hour(me!BTime), Minute(me!BTime), Second(Me!Btime)), "long time")) Then Me!BTime = cstr(Format(TimeSerial(Hour(Now()), Minute(Now()), Second(Now()) + 5), "long time")) End If End Sub From Gustav at cactus.dk Fri Sep 12 10:01:40 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 12 Sep 2008 17:01:40 +0200 Subject: [AccessD] Time Comparisons Message-ID: Hi Tony You could skip all the string handling and use a static variable. Private Sub Form_Timer() Static datLast As Date Dim datNow As Date datNow = Now If DateDiff("s", datLast, datNow) > 5 Then ' Do something. Me!BTime.Value = datNow datLast = datNow End If End Sub Set the format property of BTime to short time. /gustav >>> iggy at nanaimo.ark.com 11-09-2008 16:44:53 >>> Hey All I am trying to trigger an event when the current time = the calculated time. I have been fiddling with this, as previous versions would trip up every so often (ie. after 28 hours). The current version has been running for 3 days and everything seems to be working fine, just wanted to check with the time experts if I am doing this correctly. Me!BTime - unbound on form Timer = 1000 Private Sub Form_Open(Cancel As Integer) Me!Btime = cstr(Format(TimeSerial(Hour(Now()), Minute(Now()), Second(Now()) + 5), "long time")) End Sub Private Sub Form_Timer() If cstr(Format(TimeSerial(Hour(Now()), Minute(Now()), Second(Now())), "long time"))> cstr(Format(TimeSerial(Hour(me!BTime), Minute(me!BTime), Second(Me!Btime)), "long time")) Then Me!BTime = cstr(Format(TimeSerial(Hour(Now()), Minute(Now()), Second(Now()) + 5), "long time")) End If End Sub From cfoust at infostatsystems.com Fri Sep 12 10:06:25 2008 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 12 Sep 2008 08:06:25 -0700 Subject: [AccessD] Harkins and Brock In-Reply-To: References: Message-ID: Intelligence has nothing to do with it, Gustav. I just didn't see a practical use for milliseconds, so I was in Susan's boat. Actually, we've had to deal with millisecond issues in our apps because the back ends can be either Access or SQL Server, but we don't use provider specific code routines, we only bow to the specific providers when it's necessary ... Like dealing with milliseconds. What we finally did was strip the pesky things off our data, where they are pretty useless anyhow. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Friday, September 12, 2008 3:18 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Harkins and Brock Hi Charlotte Come on. Both you and Susan are clever people, this millisecond journey is just one of those areas where you may not know exactly what is going on because you either haven't had the need to know or really don't care. If you know what a double is, you are on your feet. Susan's problem was that I had a hard time explaining what to use milliseconds for, and I could only find some generic uninspired examples. I haven't myself used the milliseconds for anything else than experiments, but thought it could be useful for some. But, as always, Susan found a twist to make the topic readable even for the not-so-enthusiastic reader. The idea came one day where I wondered why SQL Server presents a time resolution of 3 ms while Access/VBA/JET only offers 1000 ms, both using the same underlying data type of double. So what was the resolution of double really? Much to my surprise, I found out that the resolution is 1 ms (or better) in the full range of data type date/time - from 100-1-1 00:00:00.000 to 9999-12-31 23.59.59.999. Then I created the functions needed to generate and read time values with milliseconds and to create a set of functions handling milliseconds that mimic the full range of the well-known date/time functions of Access/VBA. One of the challenges was to get the calculations with doubles right avoiding bit errors. This was solved by switching to data type decimal at some critical places. /gustav >>> cfoust at infostatsystems.com 12-09-2008 00:42 >>> OK, all together now ... "uh... huh????" :) Is the jagged time thingie the reason why I run out of money before I run out of time?? Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Thursday, September 11, 2008 3:12 PM To: AccessD at databaseadvisors.com Subject: [AccessD] Harkins and Brock http://www.devx.com/ I just wanted to share this article with you guys -- Gustav and I have written a number of articles together but this one's different as I had to ask him repeatedly... "uh... huh????" :) I think it turned out really well and certainly will be useful to the developers who actually need it. Susan H. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From cfoust at infostatsystems.com Fri Sep 12 10:08:14 2008 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 12 Sep 2008 08:08:14 -0700 Subject: [AccessD] OT Re: Harkins and Brock In-Reply-To: <041a01c914e2$0e296c90$2f8601c7@SusanOne> References: <02be01c9145b$7227cc00$2f8601c7@SusanOne> <041a01c914e2$0e296c90$2f8601c7@SusanOne> Message-ID: I didn't see one, Susan. In fact, I don't think I've ever seen your mugshot. You seem to have been nearly as successful as me at keeping your face off the net. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Friday, September 12, 2008 7:15 AM To: Access Developers discussion and problem solving Subject: [AccessD] OT Re: Harkins and Brock > Susan, Nice picture on DBA, it makes a big difference when you have an > image/picture of who you're communicating with. =======I didn't know there was a picture of me at DBA. I didn't supply one, wonder where it came from? I can't find it. Susan H. From john at winhaven.net Fri Sep 12 10:10:09 2008 From: john at winhaven.net (John Bartow) Date: Fri, 12 Sep 2008 10:10:09 -0500 Subject: [AccessD] Harkins and Brock In-Reply-To: <02be01c9145b$7227cc00$2f8601c7@SusanOne> References: <02be01c9145b$7227cc00$2f8601c7@SusanOne> Message-ID: <00eb01c914e9$a5923dd0$f0b6b970$@net> Where's Jurgen when you need a good comment on things like this? :o) John B. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins http://www.devx.com/ From tinanfields at torchlake.com Fri Sep 12 10:53:08 2008 From: tinanfields at torchlake.com (Tina Norris Fields) Date: Fri, 12 Sep 2008 11:53:08 -0400 Subject: [AccessD] Harkins and Brock In-Reply-To: <02be01c9145b$7227cc00$2f8601c7@SusanOne> References: <02be01c9145b$7227cc00$2f8601c7@SusanOne> Message-ID: <48CA9064.2020908@torchlake.com> Hi Susan, Well, I found the article to be wonderful. Granted, I did a lot of head-scratching as I worked my way through the demo - but it is still wonderful. I don't know when exactly I will make use of this ability to measure milliseconds in Access, but I am grateful to you and Gustav for the article and the demo database. Tina Susan Harkins wrote: > http://www.devx.com/ > > I just wanted to share this article with you guys -- Gustav and I have > written a number of articles together but this one's different as I had to > ask him repeatedly... "uh... huh????" :) > > I think it turned out really well and certainly will be useful to the > developers who actually need it. > > Susan H. > > From ssharkins at gmail.com Fri Sep 12 11:06:04 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Fri, 12 Sep 2008 12:06:04 -0400 Subject: [AccessD] OT Re: Harkins and Brock References: <02be01c9145b$7227cc00$2f8601c7@SusanOne><041a01c914e2$0e296c90$2f8601c7@SusanOne> Message-ID: <04fd01c914f1$7801fd80$2f8601c7@SusanOne> Thanks Gary -- man, is that old! ;) If any of you ever meet me, please don't expect me to look like that! You know, you don't change much from 30 to 40, but 40 to 50 has about killed me! ;) Susan H. > Sure you did. I remember it way back when. It's you and Lexi I beleive. > > If you go to CONTACTS there is a list of names where you are listed > and if you click on your name, this comes up. > > http://www.databaseadvisors.com/newsletters/bio_pages/bio_susan.asp > > GK > > On 9/12/08, Susan Harkins wrote: >> > Susan, Nice picture on DBA, it makes a big difference when you have an >> > image/picture of who you're communicating with. >> >> =======I didn't know there was a picture of me at DBA. I didn't supply >> one, >> wonder where it came from? I can't find it. >> >> Susan H. >> >> -- >> 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 ssharkins at gmail.com Fri Sep 12 11:07:41 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Fri, 12 Sep 2008 12:07:41 -0400 Subject: [AccessD] OT Re: Harkins and Brock References: <02be01c9145b$7227cc00$2f8601c7@SusanOne><041a01c914e2$0e296c90$2f8601c7@SusanOne> Message-ID: <051801c914f1$dbd60540$2f8601c7@SusanOne> TechRepublic.com required a picture for a while, but they've since dispensed with them, thank god. :) Susan H. >I didn't see one, Susan. In fact, I don't think I've ever seen your > mugshot. You seem to have been nearly as successful as me at keeping > your face off the net. From iggy at nanaimo.ark.com Thu Sep 11 11:22:00 2008 From: iggy at nanaimo.ark.com (Tony Septav) Date: Thu, 11 Sep 2008 09:22:00 -0700 Subject: [AccessD] Time Comparisons In-Reply-To: References: Message-ID: <48C945A8.5020201@nanaimo.ark.com> Hey Gustav Sorry for not replying quicker, I was trying your example. My time intervals change as the code loops through a table of activities. Question - your method avoids the second fracture problems with time? That is why I was using > rather than =. Gustav Brock wrote: >Hi Tony > >You could skip all the string handling and use a static variable. > >Private Sub Form_Timer() > > Static datLast As Date > Dim datNow As Date > > datNow = Now > If DateDiff("s", datLast, datNow) > 5 Then > ' Do something. > Me!BTime.Value = datNow > datLast = datNow > End If > >End Sub > >Set the format property of BTime to short time. > >/gustav > > > >>>>iggy at nanaimo.ark.com 11-09-2008 16:44:53 >>> >>>> >>>> >Hey All >I am trying to trigger an event when the current time = the calculated >time. I have been fiddling with this, as previous versions would trip up >every so often (ie. after 28 hours). The current version has been >running for 3 days and everything seems to be working fine, just wanted >to check with the time experts if I am doing this correctly. > >Me!BTime - unbound on form >Timer = 1000 > >Private Sub Form_Open(Cancel As Integer) >Me!Btime = cstr(Format(TimeSerial(Hour(Now()), Minute(Now()), >Second(Now()) + 5), "long time")) >End Sub > >Private Sub Form_Timer() > If cstr(Format(TimeSerial(Hour(Now()), Minute(Now()), >Second(Now())), "long time"))> > cstr(Format(TimeSerial(Hour(me!BTime), Minute(me!BTime), >Second(Me!Btime)), "long time")) > Then > Me!BTime = cstr(Format(TimeSerial(Hour(Now()), >Minute(Now()), Second(Now()) + 5), "long time")) > End If > >End Sub > > > > From Gustav at cactus.dk Fri Sep 12 11:39:50 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 12 Sep 2008 18:39:50 +0200 Subject: [AccessD] Time Comparisons Message-ID: Hi Tony Yes, DateDiff ignores (rounds) fractional seconds. You can read the 5 from a variable if it is to change during your loop. /gustav >>> iggy at nanaimo.ark.com 11-09-2008 18:22:00 >>> Hey Gustav Sorry for not replying quicker, I was trying your example. My time intervals change as the code loops through a table of activities. Question - your method avoids the second fracture problems with time? That is why I was using > rather than =. Gustav Brock wrote: >Hi Tony > >You could skip all the string handling and use a static variable. > >Private Sub Form_Timer() > > Static datLast As Date > Dim datNow As Date > > datNow = Now > If DateDiff("s", datLast, datNow) > 5 Then > ' Do something. > Me!BTime.Value = datNow > datLast = datNow > End If > >End Sub > >Set the format property of BTime to short time. > >/gustav > > > >>>>iggy at nanaimo.ark.com 11-09-2008 16:44:53 >>> >>>> >>>> >Hey All >I am trying to trigger an event when the current time = the calculated >time. I have been fiddling with this, as previous versions would trip up >every so often (ie. after 28 hours). The current version has been >running for 3 days and everything seems to be working fine, just wanted >to check with the time experts if I am doing this correctly. > >Me!BTime - unbound on form >Timer = 1000 > >Private Sub Form_Open(Cancel As Integer) >Me!Btime = cstr(Format(TimeSerial(Hour(Now()), Minute(Now()), >Second(Now()) + 5), "long time")) >End Sub > >Private Sub Form_Timer() > If cstr(Format(TimeSerial(Hour(Now()), Minute(Now()), >Second(Now())), "long time"))> > cstr(Format(TimeSerial(Hour(me!BTime), Minute(me!BTime), >Second(Me!Btime)), "long time")) > Then > Me!BTime = cstr(Format(TimeSerial(Hour(Now()), >Minute(Now()), Second(Now()) + 5), "long time")) > End If > >End Sub From cfoust at infostatsystems.com Fri Sep 12 11:42:54 2008 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 12 Sep 2008 09:42:54 -0700 Subject: [AccessD] OT Re: Harkins and Brock In-Reply-To: <04fd01c914f1$7801fd80$2f8601c7@SusanOne> References: <02be01c9145b$7227cc00$2f8601c7@SusanOne><041a01c914e2$0e296c90$2f8601c7@SusanOne> <04fd01c914f1$7801fd80$2f8601c7@SusanOne> Message-ID: Hah! Wait until you hit 60 ... And it hits back!! LOL Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Friday, September 12, 2008 9:06 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT Re: Harkins and Brock Thanks Gary -- man, is that old! ;) If any of you ever meet me, please don't expect me to look like that! You know, you don't change much from 30 to 40, but 40 to 50 has about killed me! ;) Susan H. > Sure you did. I remember it way back when. It's you and Lexi I beleive. > > If you go to CONTACTS there is a list of names where you are listed > and if you click on your name, this comes up. > > http://www.databaseadvisors.com/newsletters/bio_pages/bio_susan.asp > > GK > > On 9/12/08, Susan Harkins wrote: >> > Susan, Nice picture on DBA, it makes a big difference when you have >> > an image/picture of who you're communicating with. >> >> =======I didn't know there was a picture of me at DBA. I didn't >> supply one, wonder where it came from? I can't find it. >> >> Susan H. >> >> -- >> 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 ssharkins at gmail.com Fri Sep 12 11:55:08 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Fri, 12 Sep 2008 12:55:08 -0400 Subject: [AccessD] OT Re: Harkins and Brock References: <02be01c9145b$7227cc00$2f8601c7@SusanOne><041a01c914e2$0e296c90$2f8601c7@SusanOne><04fd01c914f1$7801fd80$2f8601c7@SusanOne> Message-ID: <05b901c914f8$53b7f720$2f8601c7@SusanOne> > Hah! Wait until you hit 60 ... And it hits back!! LOL ========I'll take a raincheck on that one... ;) Susan H. From iggy at nanaimo.ark.com Thu Sep 11 12:19:32 2008 From: iggy at nanaimo.ark.com (Tony Septav) Date: Thu, 11 Sep 2008 10:19:32 -0700 Subject: [AccessD] Time Comparisons In-Reply-To: References: Message-ID: <48C95324.4020001@nanaimo.ark.com> Hey Gustav Again thanks. I am going to let it run for a day or so and see if I hit any magic times. Gustav Brock wrote: >Hi Tony > >Yes, DateDiff ignores (rounds) fractional seconds. >You can read the 5 from a variable if it is to change during your loop. > >/gustav > > > >>>>iggy at nanaimo.ark.com 11-09-2008 18:22:00 >>> >>>> >>>> >Hey Gustav >Sorry for not replying quicker, I was trying your example. My time >intervals change as the code loops through a table of activities. >Question - your method avoids the second fracture problems with time? >That is why I was using > rather than =. > >Gustav Brock wrote: > > > >>Hi Tony >> >>You could skip all the string handling and use a static variable. >> >>Private Sub Form_Timer() >> >> Static datLast As Date >> Dim datNow As Date >> >> datNow = Now >> If DateDiff("s", datLast, datNow) > 5 Then >> ' Do something. >> Me!BTime.Value = datNow >> datLast = datNow >> End If >> >>End Sub >> >>Set the format property of BTime to short time. >> >>/gustav >> >> >> >> >> >>>>>iggy at nanaimo.ark.com 11-09-2008 16:44:53 >>> >>>>> >>>>> >>>>> >>>>> >>Hey All >>I am trying to trigger an event when the current time = the calculated >>time. I have been fiddling with this, as previous versions would trip up >>every so often (ie. after 28 hours). The current version has been >>running for 3 days and everything seems to be working fine, just wanted >>to check with the time experts if I am doing this correctly. >> >>Me!BTime - unbound on form >>Timer = 1000 >> >>Private Sub Form_Open(Cancel As Integer) >>Me!Btime = cstr(Format(TimeSerial(Hour(Now()), Minute(Now()), >>Second(Now()) + 5), "long time")) >>End Sub >> >>Private Sub Form_Timer() >> If cstr(Format(TimeSerial(Hour(Now()), Minute(Now()), >>Second(Now())), "long time"))> >> cstr(Format(TimeSerial(Hour(me!BTime), Minute(me!BTime), >>Second(Me!Btime)), "long time")) >> Then >> Me!BTime = cstr(Format(TimeSerial(Hour(Now()), >>Minute(Now()), Second(Now()) + 5), "long time")) >> End If >> >>End Sub >> >> > > > > > From rockysmolin at bchacc.com Fri Sep 12 13:03:10 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Fri, 12 Sep 2008 11:03:10 -0700 Subject: [AccessD] CRLF in email In-Reply-To: <355AD6E94090498284DAD7580812A5D6@danwaters> References: <0c8301c91453$33847690$0301a8c0@HAL9005><2398.24.35.25.42.1221169665.squirrel@mail.expedient.net><0c9e01c91459$0665ceb0$0301a8c0@HAL9005><0caf01c9145b$61833ce0$0301a8c0@HAL9005><003201c91472$5df11e00$0d1b910a@denzilnote><0cdf01c91474$37fcb540$0301a8c0@HAL9005> <355AD6E94090498284DAD7580812A5D6@danwaters> Message-ID: <000401c91501$d189f640$0301a8c0@HAL9005> Dan: Worked a treat in Front Page (which is all I got). Like cribbing the SQL out of a query or recording a macro in XL to use in a module, huh? Thanks. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Dan Waters Sent: Friday, September 12, 2008 5:33 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] CRLF in email Hi Rocky, I did something like this once upon a time. First, I used Expression Web to create a page that looked like I wanted it to look. Then switched to code view to see the HTML. I copied that to VBA code, and made syntax mods so it would work there. This will keep you from guessing what you have to type in HTML to get what you want. I bet there are a number of free apps that would do the same thing. Maybe even Word? HTH! Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Thursday, September 11, 2008 8:10 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] CRLF in email Darren: Nothing more or less than using for CrLf. But now the user has ANOTHER request. He'd like the sig in Eras Medium ITC, and some in blue and some in black. Anybody? :o) MTIA, Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darren D Sent: Thursday, September 11, 2008 5:56 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] CRLF in email Hi Rocky and team I have this exact same issue - Can you post the solution? Thanks Darren -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Friday, 12 September 2008 8:12 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] CRLF in email Looks like the works in plain text comin' and goin'. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Thursday, September 11, 2008 2:55 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] CRLF in email Would using

work if the email client is set to display only plain text? Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Michael Bahr Sent: Thursday, September 11, 2008 2:48 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] CRLF in email Rocky, proper html formating should be

bla bla bla

. You could also use
. The difference is
is a soft-return where

is a hard-return. However you should consider using both CRLF and

. This is the same as looking at the source of a web page. Using the CRLF formats the source and the

formats the html. Some email readers may be set to display only plain text (strip out html) so then the formating would still remain the same. Mike... > Dear List: > > I am trying to add some text and a signature to the body of an email > with a report attached. Everything works fine except the carriage > return/Line Feed. I'm using the following: > > > myItem.HTMLBody = "Thank you very much for your order." & Chr(10) & > Chr(13) > _ > & Chr(10) & Chr(13) _ > & "Please review the attached rental agreement and call or e-mail > me with any " _ > & "questions or changes." & vbCrLf & vbCrLf _ > & "If this looks good to you, please complete the credit card > authorization " _ > & "form and fax it back to us at (858) 560-9900." & vbCrLf & vbCrLf _ > & "Ken Gimbel" & vbCrLf & "ph 858.560.5000 | fx 858.560.9900 " & > vbCrLf _ > & "4909 ruffner st. | san diego, CA 92101 " & vbCrLf _ > & "www.voiceandvideo.com " > > and neither CHR(10) & Chr(13) nor vbCrLf work. The email body comes > out looking like this: > > Thank you very much for your order. Please review the attached rental > agreement and call or e-mail me with any questions or changes. If this > looks good to you, please complete the credit card authorization form > and fax it back to us at (858) 560-9900. Ken Gimbel ph 858.560.5000 | > fx 858.560.9900 > 4909 ruffner st. | san diego, CA 92101 www.voiceandvideo.com > > No returns or line spacing. Does anyone know what I'm doing wrong here? > > MTIA > > Rocky > > > > > > > > Rocky Smolin > > Beach Access Software > > 858-259-4334 > > www.e-z-mrp.com > > www.bchacc.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 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/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 jengross at gte.net Fri Sep 12 18:30:53 2008 From: jengross at gte.net (Jennifer Gross) Date: Fri, 12 Sep 2008 15:30:53 -0800 Subject: [AccessD] Disable ability to print report or form Message-ID: <0K73002GFTGHH84E@vms173001.mailsrvcs.net> Hello All, A2K on Windows Server 2000 - I have a client who wants certain information available to employees on the screen, but does not want them to be able to print the information. I don't think I can ever get rid of the ability to print screen, but is there a property I can set for a form or report that will prevent printing. I want to make it so that whether they use Ctl-P, File > Print or click the print button they will not be able to print the report. Thanks in advance for your help. Jennifer From dwaters at usinternet.com Fri Sep 12 18:01:35 2008 From: dwaters at usinternet.com (Dan Waters) Date: Fri, 12 Sep 2008 18:01:35 -0500 Subject: [AccessD] Trigger An Event by Changing Records in a Continuous Form? Message-ID: <32DFCA524FEA405D8514F336E4DCF6D4@danwaters> On a continuous subform, I would like to trigger an event when a different record is viewed, either because the mouse wheel was used or because the scrollbar was used. Is there a way to do this? Somewhere an event is being triggered because conditional formatting will be used to reformat comboboxes and textboxes. Thanks! Dan From cfoust at infostatsystems.com Fri Sep 12 19:16:53 2008 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 12 Sep 2008 17:16:53 -0700 Subject: [AccessD] Trigger An Event by Changing Records in a Continuous Form? In-Reply-To: <32DFCA524FEA405D8514F336E4DCF6D4@danwaters> References: <32DFCA524FEA405D8514F336E4DCF6D4@danwaters> Message-ID: The OnCurrent event is triggered automatically when you move to another record. However, the scrollbar/mousewheel/pgdwn/pgup only affects the display, not the selected record, so it doesn't trigger OnCurrent. Can you explain more about what you're trying to do? Charltote Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Dan Waters Sent: Friday, September 12, 2008 4:02 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Trigger An Event by Changing Records in a Continuous Form? On a continuous subform, I would like to trigger an event when a different record is viewed, either because the mouse wheel was used or because the scrollbar was used. Is there a way to do this? Somewhere an event is being triggered because conditional formatting will be used to reformat comboboxes and textboxes. Thanks! Dan -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From dwaters at usinternet.com Fri Sep 12 19:44:48 2008 From: dwaters at usinternet.com (Dan Waters) Date: Fri, 12 Sep 2008 19:44:48 -0500 Subject: [AccessD] Trigger An Event by Changing Records in a Continuous Form? In-Reply-To: References: <32DFCA524FEA405D8514F336E4DCF6D4@danwaters> Message-ID: The continuous form only shows one record at a time, and the formatting for the controls gets fairly complex. I'd like to avoid putting complicated text into conditional formatting fields, but instead trigger a reformat in code each time a different record is displayed. Conditional formatting will work here, but it's really time consuming and it has no compiler or run-time errors, so anything wrong will go undetected until try all your examples and just look at the screen. Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Friday, September 12, 2008 7:17 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Trigger An Event by Changing Records in a Continuous Form? The OnCurrent event is triggered automatically when you move to another record. However, the scrollbar/mousewheel/pgdwn/pgup only affects the display, not the selected record, so it doesn't trigger OnCurrent. Can you explain more about what you're trying to do? Charltote Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Dan Waters Sent: Friday, September 12, 2008 4:02 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Trigger An Event by Changing Records in a Continuous Form? On a continuous subform, I would like to trigger an event when a different record is viewed, either because the mouse wheel was used or because the scrollbar was used. Is there a way to do this? Somewhere an event is being triggered because conditional formatting will be used to reformat comboboxes and textboxes. Thanks! Dan -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/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 adtp at airtelmail.in Sat Sep 13 07:36:37 2008 From: adtp at airtelmail.in (A.D.Tejpal) Date: Sat, 13 Sep 2008 18:06:37 +0530 Subject: [AccessD] Trigger An Event by Changing Records in aContinuous Form? References: <32DFCA524FEA405D8514F336E4DCF6D4@danwaters> Message-ID: <005501c9159d$8c0f1fe0$c25ea27a@personald6374f> Dan, Pending a direct solution on the lines sought in your post, you can consider a proactive approach. This would involve measures like removal of scroll bars, disabling of mouse scroll wheel, disabling of PgUp and PgDn keys. Instead, navigation would be totally controlled by command buttons (suitable command buttons for PgUp and PgDn can be added if desired). That way, the current record should never go out of view. Best wishes, A.D. Tejpal ------------ ----- Original Message ----- From: Dan Waters To: 'Access Developers discussion and problem solving' Sent: Saturday, September 13, 2008 06:14 Subject: Re: [AccessD] Trigger An Event by Changing Records in aContinuous Form? The continuous form only shows one record at a time, and the formatting for the controls gets fairly complex. I'd like to avoid putting complicated text into conditional formatting fields, but instead trigger a reformat in code each time a different record is displayed. Conditional formatting will work here, but it's really time consuming and it has no compiler or run-time errors, so anything wrong will go undetected until try all your examples and just look at the screen. Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Friday, September 12, 2008 7:17 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Trigger An Event by Changing Records in a Continuous Form? The OnCurrent event is triggered automatically when you move to another record. However, the scrollbar/mousewheel/pgdwn/pgup only affects the display, not the selected record, so it doesn't trigger OnCurrent. Can you explain more about what you're trying to do? Charltote Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Dan Waters Sent: Friday, September 12, 2008 4:02 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Trigger An Event by Changing Records in a Continuous Form? On a continuous subform, I would like to trigger an event when a different record is viewed, either because the mouse wheel was used or because the scrollbar was used. Is there a way to do this? Somewhere an event is being triggered because conditional formatting will be used to reformat comboboxes and textboxes. Thanks! Dan From dwaters at usinternet.com Sat Sep 13 08:36:07 2008 From: dwaters at usinternet.com (Dan Waters) Date: Sat, 13 Sep 2008 08:36:07 -0500 Subject: [AccessD] Trigger An Event by Changing Records in aContinuous Form? In-Reply-To: <005501c9159d$8c0f1fe0$c25ea27a@personald6374f> References: <32DFCA524FEA405D8514F336E4DCF6D4@danwaters> <005501c9159d$8c0f1fe0$c25ea27a@personald6374f> Message-ID: <873C0ADD6B1B48149FA8322C7E4379DD@danwaters> Thanks AD. That's a good, permanent, solution. I do this with all the main screens now, I may as well do it with the larger subforms as well. Thanks! Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of A.D.Tejpal Sent: Saturday, September 13, 2008 7:37 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Trigger An Event by Changing Records in aContinuous Form? Dan, Pending a direct solution on the lines sought in your post, you can consider a proactive approach. This would involve measures like removal of scroll bars, disabling of mouse scroll wheel, disabling of PgUp and PgDn keys. Instead, navigation would be totally controlled by command buttons (suitable command buttons for PgUp and PgDn can be added if desired). That way, the current record should never go out of view. Best wishes, A.D. Tejpal ------------ ----- Original Message ----- From: Dan Waters To: 'Access Developers discussion and problem solving' Sent: Saturday, September 13, 2008 06:14 Subject: Re: [AccessD] Trigger An Event by Changing Records in aContinuous Form? The continuous form only shows one record at a time, and the formatting for the controls gets fairly complex. I'd like to avoid putting complicated text into conditional formatting fields, but instead trigger a reformat in code each time a different record is displayed. Conditional formatting will work here, but it's really time consuming and it has no compiler or run-time errors, so anything wrong will go undetected until try all your examples and just look at the screen. Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Friday, September 12, 2008 7:17 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Trigger An Event by Changing Records in a Continuous Form? The OnCurrent event is triggered automatically when you move to another record. However, the scrollbar/mousewheel/pgdwn/pgup only affects the display, not the selected record, so it doesn't trigger OnCurrent. Can you explain more about what you're trying to do? Charltote Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Dan Waters Sent: Friday, September 12, 2008 4:02 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Trigger An Event by Changing Records in a Continuous Form? On a continuous subform, I would like to trigger an event when a different record is viewed, either because the mouse wheel was used or because the scrollbar was used. Is there a way to do this? Somewhere an event is being triggered because conditional formatting will be used to reformat comboboxes and textboxes. Thanks! Dan -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From miscellany at mvps.org Sat Sep 13 15:53:39 2008 From: miscellany at mvps.org (Steve Schapel) Date: Sun, 14 Sep 2008 08:53:39 +1200 Subject: [AccessD] Trigger An Event by Changing Records in aContinuous Form? In-Reply-To: <873C0ADD6B1B48149FA8322C7E4379DD@danwaters> References: <32DFCA524FEA405D8514F336E4DCF6D4@danwaters> <005501c9159d$8c0f1fe0$c25ea27a@personald6374f> <873C0ADD6B1B48149FA8322C7E4379DD@danwaters> Message-ID: <48CC2853.10005@mvps.org> I agree, Dan. If you are only seeing one record at a time anyway, there seems no advantage of a continuous view subform over single view. Regards Steve Dan Waters wrote: > Thanks AD. That's a good, permanent, solution. > > I do this with all the main screens now, I may as well do it with the larger > subforms as well. > From dwaters at usinternet.com Sat Sep 13 16:59:19 2008 From: dwaters at usinternet.com (Dan Waters) Date: Sat, 13 Sep 2008 16:59:19 -0500 Subject: [AccessD] Trigger An Event by Changing Records in a Continuous Form? In-Reply-To: <48CC2853.10005@mvps.org> References: <32DFCA524FEA405D8514F336E4DCF6D4@danwaters><005501c9159d$8c0f1fe0$c25ea27a@personald6374f><873C0ADD6B1B48149FA8322C7E4379DD@danwaters> <48CC2853.10005@mvps.org> Message-ID: <70490850C82540C9BD4029FC90B712BF@danwaters> For sure! Originally each record had fewer fields, and I displayed two records at a time. I didn't realize this till AD's email came across, but I was stuck in the paradigm of using conditional formatting on that particular subform. Damn those Paradigms! Dan ;-) -----Original Message----- I agree, Dan. If you are only seeing one record at a time anyway, there seems no advantage of a continuous view subform over single view. Regards Steve Dan Waters wrote: > Thanks AD. That's a good, permanent, solution. > > I do this with all the main screens now, I may as well do it with the larger > subforms as well. > From thewaddles at sbcglobal.net Sun Sep 14 02:08:07 2008 From: thewaddles at sbcglobal.net (Kevin Waddle) Date: Sun, 14 Sep 2008 00:08:07 -0700 Subject: [AccessD] Speed Problems when looping through records or the terrors of deduping Message-ID: <8C073DCF1AC344B6A846F9A390A18249@TheWaddles> Hello, I have a table with 18,000 records. The records are titles stored as a string. I am trying compare each record to all of the other records in the table using a Jaro-Winkler Distance function to find similar / potential duplicate records. So 'Cat in the Hat' and 'Hat in the Cat' would flag as similar and 'Composite Science and Technology' and 'Composites Science and Technology' would flag as similar. I have tried looping through the table twice: Set dbs = CurrentDb Set rst1 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) Set rst2 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) rst2.MoveFirst rst1.MoveFirst Do Until rst1.EOF If JaroDistance(rst1![CitationTitle], rst2![CitationTitle]) > 0.8 Then 'INSERT INTO ANOTHER TABLE RELATING THE TITLE TABLE DoEvents rst2.MoveNext Loop rst1.MoveNext Loop I have tried wrapping the Table into a Class Module and Collection and looping through the collection twice: Set dbs = CurrentDb Set rst1 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) rst1.MoveFirst Do Until rst1.EOF Set cls = New clsCitation Set cls2 = New clsCitation2 cls.CitID = rst1![CitationTitleID] cls.Citation = rst1![CitationTitle] cls.RecordCount = cnt Citation.Add cls cls2.CitID2 = rst1![CitationTitleID] cls2.Citation2 = rst1![CitationTitle] cls2.RecordCount2 = cnt Citation2.Add cls2 rst1.MoveNext Loop For Each cls In Citation For Each cls2 In Citation2 If JaroDistance(cls.Citation, cls2.Citation2) > 0.8 Then 'INSERT INTO ANOTHER TABLE RELATING THE TITLE TABLE" DoEvents Next Next Essentially, I end up looping through the entire table 18,000 times! No matter what I do it is taking from 45 to 60 seconds to make one pass through the table. This means that to complete the entire process would take about 12 days, 24 hours a day! Can someone point me to a faster method for applying fuzzy deduping? Thanks, Kevin From stephen at bondsoftware.co.nz Sun Sep 14 03:09:25 2008 From: stephen at bondsoftware.co.nz (Stephen) Date: Sun, 14 Sep 2008 20:09:25 +1200 Subject: [AccessD] Speed Problems when looping through records or the terrors of deduping Message-ID: <569E08FC48047F4F848850B118195FBE0382EE@server.BondSoftware.local> Kevin, What if you built a query with the table occuring 2 times, with the Title field from each of the tables as output, then as the third output field, a call to your JaroDistance function with the 2 fields, and a criteria on this field of >0.8 ?? I can see immediate problems with this approach though. A cartesian query on this data will produce a huge potential recordset (18K * 18K = 324M if they all met the criteria). As a test, I just cobbled together a 500 record table, did the above (my JaroDistance function simply returned a random number between 0 and 1 using the RND function). Of the potential 250K record output there were about 50K meeting the criteria and the query took about 65 seconds on my *slow* development computer. I know, I know, 324M is about 1300x bigger than 250K, but at the above figures, 23-24 hours should do it. On second thought, there has to be a better way ... someone else ?? FWIW, Stephen Bond -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Kevin Waddle Sent: Sunday, 14 September 2008 7:16 p.m. To: Stephen Subject: [AccessD] Speed Problems when looping through records or the terrors of deduping Hello, I have a table with 18,000 records. The records are titles stored as a string. I am trying compare each record to all of the other records in the table using a Jaro-Winkler Distance function to find similar / potential duplicate records. So 'Cat in the Hat' and 'Hat in the Cat' would flag as similar and 'Composite Science and Technology' and 'Composites Science and Technology' would flag as similar. I have tried looping through the table twice: Set dbs = CurrentDb Set rst1 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) Set rst2 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) rst2.MoveFirst rst1.MoveFirst Do Until rst1.EOF If JaroDistance(rst1![CitationTitle], rst2![CitationTitle]) > 0.8 Then 'INSERT INTO ANOTHER TABLE RELATING THE TITLE TABLE DoEvents rst2.MoveNext Loop rst1.MoveNext Loop I have tried wrapping the Table into a Class Module and Collection and looping through the collection twice: Set dbs = CurrentDb Set rst1 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) rst1.MoveFirst Do Until rst1.EOF Set cls = New clsCitation Set cls2 = New clsCitation2 cls.CitID = rst1![CitationTitleID] cls.Citation = rst1![CitationTitle] cls.RecordCount = cnt Citation.Add cls cls2.CitID2 = rst1![CitationTitleID] cls2.Citation2 = rst1![CitationTitle] cls2.RecordCount2 = cnt Citation2.Add cls2 rst1.MoveNext Loop For Each cls In Citation For Each cls2 In Citation2 If JaroDistance(cls.Citation, cls2.Citation2) > 0.8 Then 'INSERT INTO ANOTHER TABLE RELATING THE TITLE TABLE" DoEvents Next Next Essentially, I end up looping through the entire table 18,000 times! No matter what I do it is taking from 45 to 60 seconds to make one pass through the table. This means that to complete the entire process would take about 12 days, 24 hours a day! Can someone point me to a faster method for applying fuzzy deduping? Thanks, Kevin -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Sun Sep 14 03:25:48 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Sun, 14 Sep 2008 10:25:48 +0200 Subject: [AccessD] Speed Problems when looping through records or the terrors of deduping Message-ID: Hi Kevin Given the explanation here on the Jaro-Winkler Distance: http://en.wikipedia.org/wiki/Jaro-Winkler you ultimately will have to make 18000^2 comparisons. You could perhaps gain some speed by moving the logic to the query but the implementation would not be easy. So I believe you are left with some brute-force methods to decrease the count of comparisons. One I could think of is to only compare titles of similar length. A title of length, say, 20 will not match one of length 40 while your two examples have either an exact match of length or a difference of one. The accepted difference in length could be found dynamically from the minimum Jaro score to accept. With a difference of 1 (the example with dwayne and duane from the link above), the Jaro score is above 0.8 thus you would probably need to accept a difference of 2 or 3. My guess is that for a score of 0.9 a difference of only 1 could be accepted while for a score of 0.7 the difference could be 4 or 5. A few experiments with your function could reveal that. With this simple method you could probably cut the processing time by 80% by decreasing the count of iterations from 18000 * 18000 to perhaps only 18000 * 3000. /gustav >>> thewaddles at sbcglobal.net 14-09-2008 09:08 >>> Hello, I have a table with 18,000 records. The records are titles stored as a string. I am trying compare each record to all of the other records in the table using a Jaro-Winkler Distance function to find similar / potential duplicate records. So 'Cat in the Hat' and 'Hat in the Cat' would flag as similar and 'Composite Science and Technology' and 'Composites Science and Technology' would flag as similar. I have tried looping through the table twice: Set dbs = CurrentDb Set rst1 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) Set rst2 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) rst2.MoveFirst rst1.MoveFirst Do Until rst1.EOF If JaroDistance(rst1![CitationTitle], rst2![CitationTitle]) > 0.8 Then 'INSERT INTO ANOTHER TABLE RELATING THE TITLE TABLE DoEvents rst2.MoveNext Loop rst1.MoveNext Loop I have tried wrapping the Table into a Class Module and Collection and looping through the collection twice: Set dbs = CurrentDb Set rst1 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) rst1.MoveFirst Do Until rst1.EOF Set cls = New clsCitation Set cls2 = New clsCitation2 cls.CitID = rst1![CitationTitleID] cls.Citation = rst1![CitationTitle] cls.RecordCount = cnt Citation.Add cls cls2.CitID2 = rst1![CitationTitleID] cls2.Citation2 = rst1![CitationTitle] cls2.RecordCount2 = cnt Citation2.Add cls2 rst1.MoveNext Loop For Each cls In Citation For Each cls2 In Citation2 If JaroDistance(cls.Citation, cls2.Citation2) > 0.8 Then 'INSERT INTO ANOTHER TABLE RELATING THE TITLE TABLE" DoEvents Next Next Essentially, I end up looping through the entire table 18,000 times! No matter what I do it is taking from 45 to 60 seconds to make one pass through the table. This means that to complete the entire process would take about 12 days, 24 hours a day! Can someone point me to a faster method for applying fuzzy deduping? Thanks, Kevin From max.wanadoo at gmail.com Sun Sep 14 06:33:03 2008 From: max.wanadoo at gmail.com (Max Wanadoo) Date: Sun, 14 Sep 2008 12:33:03 +0100 Subject: [AccessD] Speed Problems when looping through records or the terrors of deduping In-Reply-To: References: Message-ID: Would SOUNDEX be of any use? Probably not, but have a google at it. Max On Sun, Sep 14, 2008 at 9:25 AM, Gustav Brock wrote: > Hi Kevin > > Given the explanation here on the Jaro-Winkler Distance: > > http://en.wikipedia.org/wiki/Jaro-Winkler > > you ultimately will have to make 18000^2 comparisons. > You could perhaps gain some speed by moving the logic to the query but the > implementation would not be easy. > > So I believe you are left with some brute-force methods to decrease the > count of comparisons. One I could think of is to only compare titles of > similar length. A title of length, say, 20 will not match one of length 40 > while your two examples have either an exact match of length or a difference > of one. > > The accepted difference in length could be found dynamically from the > minimum Jaro score to accept. With a difference of 1 (the example with > dwayne and duane from the link above), the Jaro score is above 0.8 thus you > would probably need to accept a difference of 2 or 3. My guess is that for a > score of 0.9 a difference of only 1 could be accepted while for a score of > 0.7 the difference could be 4 or 5. A few experiments with your function > could reveal that. > > With this simple method you could probably cut the processing time by 80% > by decreasing the count of iterations from 18000 * 18000 to perhaps only > 18000 * 3000. > > /gustav > > >>> thewaddles at sbcglobal.net 14-09-2008 09:08 >>> > Hello, > > I have a table with 18,000 records. The records are titles stored as a > string. > > I am trying compare each record to all of the other records in the table > using a Jaro-Winkler Distance function to find similar / potential > duplicate > records. > > So 'Cat in the Hat' and 'Hat in the Cat' would flag as similar and > 'Composite Science and Technology' and 'Composites Science and Technology' > would flag as similar. > > I have tried looping through the table twice: > Set dbs = CurrentDb > Set rst1 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", > dbOpenDynaset) > Set rst2 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", > dbOpenDynaset) > rst2.MoveFirst > rst1.MoveFirst > Do Until rst1.EOF > If JaroDistance(rst1![CitationTitle], rst2![CitationTitle]) > > 0.8 Then > 'INSERT INTO ANOTHER TABLE RELATING THE TITLE TABLE > DoEvents > rst2.MoveNext > Loop > rst1.MoveNext > Loop > > I have tried wrapping the Table into a Class Module and Collection and > looping through the collection twice: > Set dbs = CurrentDb > Set rst1 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", > dbOpenDynaset) > rst1.MoveFirst > Do Until rst1.EOF > Set cls = New clsCitation > Set cls2 = New clsCitation2 > cls.CitID = rst1![CitationTitleID] > cls.Citation = rst1![CitationTitle] > cls.RecordCount = cnt > Citation.Add cls > > cls2.CitID2 = rst1![CitationTitleID] > cls2.Citation2 = rst1![CitationTitle] > cls2.RecordCount2 = cnt > Citation2.Add cls2 > rst1.MoveNext > Loop > > For Each cls In Citation > For Each cls2 In Citation2 > If JaroDistance(cls.Citation, cls2.Citation2) > 0.8 Then > 'INSERT INTO ANOTHER TABLE RELATING THE TITLE TABLE" > DoEvents > Next > Next > > > Essentially, I end up looping through the entire table 18,000 times! > No matter what I do it is taking from 45 to 60 seconds to make one pass > through the table. > This means that to complete the entire process would take about 12 days, 24 > hours a day! > > Can someone point me to a faster method for applying fuzzy deduping? > > Thanks, > Kevin > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From rockysmolin at bchacc.com Sun Sep 14 07:49:07 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Sun, 14 Sep 2008 05:49:07 -0700 Subject: [AccessD] Speed Problems when looping through records or theterrors of deduping In-Reply-To: References: Message-ID: <002301c91668$4727a480$0301a8c0@HAL9005> Kevin: Is most of the time being used in the Jaro Function? If so, could you make a simple test or two which would rule in or rule out a match? Like if the first N characters of the two string match then it passes the test and you don't have to call the function? Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Sunday, September 14, 2008 1:26 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Speed Problems when looping through records or theterrors of deduping Hi Kevin Given the explanation here on the Jaro-Winkler Distance: http://en.wikipedia.org/wiki/Jaro-Winkler you ultimately will have to make 18000^2 comparisons. You could perhaps gain some speed by moving the logic to the query but the implementation would not be easy. So I believe you are left with some brute-force methods to decrease the count of comparisons. One I could think of is to only compare titles of similar length. A title of length, say, 20 will not match one of length 40 while your two examples have either an exact match of length or a difference of one. The accepted difference in length could be found dynamically from the minimum Jaro score to accept. With a difference of 1 (the example with dwayne and duane from the link above), the Jaro score is above 0.8 thus you would probably need to accept a difference of 2 or 3. My guess is that for a score of 0.9 a difference of only 1 could be accepted while for a score of 0.7 the difference could be 4 or 5. A few experiments with your function could reveal that. With this simple method you could probably cut the processing time by 80% by decreasing the count of iterations from 18000 * 18000 to perhaps only 18000 * 3000. /gustav >>> thewaddles at sbcglobal.net 14-09-2008 09:08 >>> Hello, I have a table with 18,000 records. The records are titles stored as a string. I am trying compare each record to all of the other records in the table using a Jaro-Winkler Distance function to find similar / potential duplicate records. So 'Cat in the Hat' and 'Hat in the Cat' would flag as similar and 'Composite Science and Technology' and 'Composites Science and Technology' would flag as similar. I have tried looping through the table twice: Set dbs = CurrentDb Set rst1 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) Set rst2 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) rst2.MoveFirst rst1.MoveFirst Do Until rst1.EOF If JaroDistance(rst1![CitationTitle], rst2![CitationTitle]) > 0.8 Then 'INSERT INTO ANOTHER TABLE RELATING THE TITLE TABLE DoEvents rst2.MoveNext Loop rst1.MoveNext Loop I have tried wrapping the Table into a Class Module and Collection and looping through the collection twice: Set dbs = CurrentDb Set rst1 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) rst1.MoveFirst Do Until rst1.EOF Set cls = New clsCitation Set cls2 = New clsCitation2 cls.CitID = rst1![CitationTitleID] cls.Citation = rst1![CitationTitle] cls.RecordCount = cnt Citation.Add cls cls2.CitID2 = rst1![CitationTitleID] cls2.Citation2 = rst1![CitationTitle] cls2.RecordCount2 = cnt Citation2.Add cls2 rst1.MoveNext Loop For Each cls In Citation For Each cls2 In Citation2 If JaroDistance(cls.Citation, cls2.Citation2) > 0.8 Then 'INSERT INTO ANOTHER TABLE RELATING THE TITLE TABLE" DoEvents Next Next Essentially, I end up looping through the entire table 18,000 times! No matter what I do it is taking from 45 to 60 seconds to make one pass through the table. This means that to complete the entire process would take about 12 days, 24 hours a day! Can someone point me to a faster method for applying fuzzy deduping? Thanks, Kevin -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From steve at goodhall.info Sun Sep 14 10:38:48 2008 From: steve at goodhall.info (Steve Goodhall) Date: Sun, 14 Sep 2008 11:38:48 -0400 Subject: [AccessD] Speed Problems when looping through records or theterrors of deduping In-Reply-To: <8C073DCF1AC344B6A846F9A390A18249@TheWaddles> Message-ID: My suggestion would be to do this in memory instead of comparing recordsets. To summarize: Load the table into an array. At a minimum you will need the title and the unique row ID. A table of types might be a good idea. Run through the table checking each entry against all subsequent entries in the table (avoids checking each pair twice). Write a table with the unique row ID's of each matching row. Use that table to drive subsequent processing. Intuitively, I think this should be much faster because it will not go through the database engine, but to be fair I have not subjected it to a formal test. Regards, Steve Goodhall, PMP 248-505-5204 mobile -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Kevin Waddle Sent: Sunday, September 14, 2008 3:08 AM To: accessd at databaseadvisors.com; ACCESS-L at PEACH.EASE.LSOFT.COM Subject: [AccessD] Speed Problems when looping through records or theterrors of deduping Hello, I have a table with 18,000 records. The records are titles stored as a string. I am trying compare each record to all of the other records in the table using a Jaro-Winkler Distance function to find similar / potential duplicate records. So 'Cat in the Hat' and 'Hat in the Cat' would flag as similar and 'Composite Science and Technology' and 'Composites Science and Technology' would flag as similar. I have tried looping through the table twice: Set dbs = CurrentDb Set rst1 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) Set rst2 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) rst2.MoveFirst rst1.MoveFirst Do Until rst1.EOF If JaroDistance(rst1![CitationTitle], rst2![CitationTitle]) > 0.8 Then 'INSERT INTO ANOTHER TABLE RELATING THE TITLE TABLE DoEvents rst2.MoveNext Loop rst1.MoveNext Loop I have tried wrapping the Table into a Class Module and Collection and looping through the collection twice: Set dbs = CurrentDb Set rst1 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) rst1.MoveFirst Do Until rst1.EOF Set cls = New clsCitation Set cls2 = New clsCitation2 cls.CitID = rst1![CitationTitleID] cls.Citation = rst1![CitationTitle] cls.RecordCount = cnt Citation.Add cls cls2.CitID2 = rst1![CitationTitleID] cls2.Citation2 = rst1![CitationTitle] cls2.RecordCount2 = cnt Citation2.Add cls2 rst1.MoveNext Loop For Each cls In Citation For Each cls2 In Citation2 If JaroDistance(cls.Citation, cls2.Citation2) > 0.8 Then 'INSERT INTO ANOTHER TABLE RELATING THE TITLE TABLE" DoEvents Next Next Essentially, I end up looping through the entire table 18,000 times! No matter what I do it is taking from 45 to 60 seconds to make one pass through the table. This means that to complete the entire process would take about 12 days, 24 hours a day! Can someone point me to a faster method for applying fuzzy deduping? Thanks, Kevin -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From dwaters at usinternet.com Sun Sep 14 11:08:52 2008 From: dwaters at usinternet.com (Dan Waters) Date: Sun, 14 Sep 2008 11:08:52 -0500 Subject: [AccessD] Speed Problems when looping through records In-Reply-To: <569E08FC48047F4F848850B118195FBE0382EE@server.BondSoftware.local> References: <569E08FC48047F4F848850B118195FBE0382EE@server.BondSoftware.local> Message-ID: Kevin, You don't need to make all 324M comparisons. Suppose you had 10 records to look for duplicates. Visually, if you have a 10 X 10 grid, you can remove the squares where record A = record A. You can also remove the squares where you're checking record B against record A if you've already checked record A against record B. So starting with 100 comparisons, we can remove 10. Then we can remove half of what's left. So to start with 100, we end up with 45, or 45%. You need to check 45% of 324M. Or about 162M comparisons. The way to do this is during your loop, use a sequential record ID to compare your starting record only against records that have a larger sequential record ID. I'm guessing you still have a lot of hours to run, but it's less than checking the full 324M. Good Luck! Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stephen Sent: Sunday, September 14, 2008 3:09 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Speed Problems when looping through records or the terrors of deduping Kevin, What if you built a query with the table occuring 2 times, with the Title field from each of the tables as output, then as the third output field, a call to your JaroDistance function with the 2 fields, and a criteria on this field of >0.8 ?? I can see immediate problems with this approach though. A cartesian query on this data will produce a huge potential recordset (18K * 18K = 324M if they all met the criteria). As a test, I just cobbled together a 500 record table, did the above (my JaroDistance function simply returned a random number between 0 and 1 using the RND function). Of the potential 250K record output there were about 50K meeting the criteria and the query took about 65 seconds on my *slow* development computer. I know, I know, 324M is about 1300x bigger than 250K, but at the above figures, 23-24 hours should do it. On second thought, there has to be a better way ... someone else ?? FWIW, Stephen Bond -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Kevin Waddle Sent: Sunday, 14 September 2008 7:16 p.m. To: Stephen Subject: [AccessD] Speed Problems when looping through records or the terrors of deduping Hello, I have a table with 18,000 records. The records are titles stored as a string. I am trying compare each record to all of the other records in the table using a Jaro-Winkler Distance function to find similar / potential duplicate records. So 'Cat in the Hat' and 'Hat in the Cat' would flag as similar and 'Composite Science and Technology' and 'Composites Science and Technology' would flag as similar. I have tried looping through the table twice: Set dbs = CurrentDb Set rst1 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) Set rst2 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) rst2.MoveFirst rst1.MoveFirst Do Until rst1.EOF If JaroDistance(rst1![CitationTitle], rst2![CitationTitle]) > 0.8 Then 'INSERT INTO ANOTHER TABLE RELATING THE TITLE TABLE DoEvents rst2.MoveNext Loop rst1.MoveNext Loop I have tried wrapping the Table into a Class Module and Collection and looping through the collection twice: Set dbs = CurrentDb Set rst1 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) rst1.MoveFirst Do Until rst1.EOF Set cls = New clsCitation Set cls2 = New clsCitation2 cls.CitID = rst1![CitationTitleID] cls.Citation = rst1![CitationTitle] cls.RecordCount = cnt Citation.Add cls cls2.CitID2 = rst1![CitationTitleID] cls2.Citation2 = rst1![CitationTitle] cls2.RecordCount2 = cnt Citation2.Add cls2 rst1.MoveNext Loop For Each cls In Citation For Each cls2 In Citation2 If JaroDistance(cls.Citation, cls2.Citation2) > 0.8 Then 'INSERT INTO ANOTHER TABLE RELATING THE TITLE TABLE" DoEvents Next Next Essentially, I end up looping through the entire table 18,000 times! No matter what I do it is taking from 45 to 60 seconds to make one pass through the table. This means that to complete the entire process would take about 12 days, 24 hours a day! Can someone point me to a faster method for applying fuzzy deduping? Thanks, Kevin -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/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 dbdoug at gmail.com Sun Sep 14 14:39:13 2008 From: dbdoug at gmail.com (Doug Steele) Date: Sun, 14 Sep 2008 12:39:13 -0700 Subject: [AccessD] Triple state checkboxes Message-ID: <4dd71a0c0809141239q40867c1fm2be594a8714c0e16@mail.gmail.com> Does anyone know of a solution to the bug where triple state checkboxes in Access 2003 and 2007 don't appear gray when the value is Null and 'Use Windows Themed Controls' is selected? Thanks, Doug Steele From drcaa at click21.com.br Sun Sep 14 16:04:59 2008 From: drcaa at click21.com.br (Carlos Alves) Date: Sun, 14 Sep 2008 14:04:59 -0700 (PDT) Subject: [AccessD] Invitation to connect on LinkedIn Message-ID: <589268101.917289.1221426299954.JavaMail.app@esv4-com10.prod> LinkedIn ------------ Carlos Alves requested to add you as a connection on LinkedIn: ------------------------------------------ Doris, I'd like to add you to my professional network on LinkedIn. - Carlos Alberto - HMJ View invitation from Carlos Alves http://www.linkedin.com/e/GJGqr_Xcuww-eupoeCwqfm8l9PqY0AZwZCdqO6vpjBw/blk/751017102_2/cBYOc34Tcj0NdjsLqnpPbOYWrSlI/svi/ ------------------------------------------ DID YOU KNOW you can conduct a more credible and powerful reference check using LinkedIn? Enter the company name and years of employment or the prospective employee to find their colleagues that are also in your network. This provides you with a more balanced set of feedback to evaluate that new hire. http://www.linkedin.com/e/rsr/inv-27/ ------ (c) 2008, LinkedIn Corporation From robert at servicexp.com Sun Sep 14 19:46:08 2008 From: robert at servicexp.com (Robert) Date: Sun, 14 Sep 2008 20:46:08 -0400 Subject: [AccessD] What are you guys using? In-Reply-To: <589268101.917289.1221426299954.JavaMail.app@esv4-com10.prod> References: <589268101.917289.1221426299954.JavaMail.app@esv4-com10.prod> Message-ID: <000001c916cc$720aa710$561ff530$@com> What is everyone using to keep track of their customers, Sales, software keys, Program bugs ect... I have been looking at a few programs out there, but they just don't fit... The one that I have my eye on the most is Service Desktop Pro, but I would like a better fit... TIA ~Robert From rockysmolin at bchacc.com Sun Sep 14 20:43:52 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Sun, 14 Sep 2008 18:43:52 -0700 Subject: [AccessD] What are you guys using? In-Reply-To: <000001c916cc$720aa710$561ff530$@com> References: <589268101.917289.1221426299954.JavaMail.app@esv4-com10.prod> <000001c916cc$720aa710$561ff530$@com> Message-ID: <003c01c916d4$825fbd00$0301a8c0@HAL9005> I rolled my own. It's a dead simple application, easy to whip up in Access and then you can add things as you go along to make it fit your own needs. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Robert Sent: Sunday, September 14, 2008 5:46 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] What are you guys using? What is everyone using to keep track of their customers, Sales, software keys, Program bugs ect... I have been looking at a few programs out there, but they just don't fit... The one that I have my eye on the most is Service Desktop Pro, but I would like a better fit... TIA ~Robert -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From thewaddles at sbcglobal.net Mon Sep 15 01:07:55 2008 From: thewaddles at sbcglobal.net (Kevin Waddle) Date: Sun, 14 Sep 2008 23:07:55 -0700 Subject: [AccessD] Speed Problems when looping through records or the terrors of deduping In-Reply-To: <8C073DCF1AC344B6A846F9A390A18249@TheWaddles> References: <8C073DCF1AC344B6A846F9A390A18249@TheWaddles> Message-ID: <6D33A13077C84A1DA3D4BC728420884B@TheWaddles> All, Thank you very much for your suggestions. I have spent way more time on this than I can recoup with the bid I placed. Now it has become more of an obsession than a project! I still haven?t found a solution that really works, however I would like to try to answer all those that took the time to reply. Thank you, Kevin Dan suggested only looping through records with higher It?s, so Record 1 would be checked against records 2 to 18,000, Record 17,998 would be checked against 17,999 to 18,000. - Great idea. I have implemented this, but it?s still not fast enough. Emilia and Steve suggested doing the comparison in memory rather than looping. - I created a Class Module (clsCitation) containing the TitleID and Title and a collection (Citation) to store the class: Do Until rst1.EOF Set cls = New clsCitation If rst1![Checked] = False Then cls.CitID = rst1![CitationTitleID] cls.Citation = rst1![CitationTitle] cls.RecordCount = cnt Citation.Add cls End If rst1.MoveNext Loop Set Citation2 = Citation - I then looped through the two collections. Still took about 45 seconds per loop Rocky asked if most of the time was in the function. - I took the function and resulting SQL commands out and the time for each cycle was about the same. Gustav suggested cutting down on the number of comparisons based on string length. - Unfortunately, there appears to have been no normalization in the table structure. So the following records would be considered duplicates: ?European Journal of Social Psychology? = ?Social Psychology? ?Applied Developmental Psychology? = ?Journal of Applied Developmental Psychology? Stephen suggested a Cartesian query and then hit immediately on the problem with that route. My problem is I get a ?Not Enough Space on Temp Disk? error before the query finishes. David asked for the functions: The Jaro Function uses two functions: JaroDistance and CleanString. I have also included a Levenshtein Distance function. The Levenshtein distance between two strings is the minimum number of operations needed to transform one string into the other, where an operation is an insertion, deletion, or substitution of a single character. '*** Code Start *** Function JaroDistance(ByVal str1 As String, ByVal str2 As String) As Double Dim Len1 As Integer Dim Len2 As Integer Dim LenMin As Integer Dim LenMax As Integer Dim m As Integer Dim i As Integer Dim j As Integer Dim Common As Integer Dim tr As Double Dim a1 As String Dim a2 As String Dim Aux As String Dim AuxStr As String Dim f As Integer Dim l As Integer Dim wcd As Double Dim wrd As Double Dim wtr As Double Dim f1() As Boolean Dim f2() As Boolean str1 = CleanString(str1) str2 = CleanString(str2) Len1 = Len(str1) Len2 = Len(str2) If Len1 > Len2 Then Aux = Len2 Len2 = Len1 Len1 = Aux AuxStr = str1 str1 = str2 str2 = AuxStr End If LenMin = Len1 LenMax = Len2 ReDim f1(Len1), f2(Len2) For i = 1 To Len1 f1(i) = False Next i For j = 1 To Len2 f2(j) = False Next j m = Int((LenMax / 2) - 1) Common = 0 tr = 0 For i = 1 To Len1 a1 = Mid(str1, i, 1) If m >= i Then f = 1 l = i + m Else f = i - m l = i + m End If If l > LenMax Then l = LenMax End If For j = f To l a2 = Mid(str2, j, 1) If (a2 = a1) And (f2(j) = False) Then Common = Common + 1 f1(i) = True f2(j) = True GoTo linea_exit End If Next j linea_exit: Next i l = 1 For i = 1 To Len1 If f1(i) Then For j = l To Len2 If f2(j) Then l = j + 1 a1 = Mid(str1, i, 1) a2 = Mid(str2, j, 1) If a1 <> a2 Then tr = tr + 0.5 End If Exit For End If Next j End If Next i wcd = 1 / 3 wrd = 1 / 3 wtr = 1 / 3 If Common <> 0 Then JaroDistance = wcd * Common / Len1 + wrd * Common / Len2 + wtr * (Common - tr) / Common Else JaroDistance = 0 End If End Function Function CleanString(str1 As String) As String str1 = Replace(str1, ".", "") str1 = Replace(str1, ",", "") str1 = Replace(str1, "-", "") str1 = Replace(str1, ";", "") str1 = Replace(str1, ":", "") str1 = Replace(str1, "?", "A") str1 = Replace(str1, "?", "E") str1 = Replace(str1, "?", "I") str1 = Replace(str1, "?", "O") str1 = Replace(str1, "?", "U") str1 = Replace(str1, "'", "") str1 = Replace(str1, Chr(34), "") str1 = Replace(str1, "&", "and") str1 = Replace(str1, " COMPANY ", " CO ") str1 = Replace(str1, " CORPORATION ", " CO ") str1 = Replace(str1, " a ", " ") str1 = Replace(str1, " an ", " ") str1 = Replace(str1, " and ", " ") str1 = Replace(str1, " the ", " ") str1 = Replace(str1, "the ", "") str1 = Replace(str1, " ", "") CleanString = str1 End Function '******************************** '*** Compute Levenshtein Distance '******************************** Sub testLD() Dim i As Variant Dim str1 As String Dim str2 As String str1 = "Cat in the Hat" str2 = "the in Hat Cat" i = LD(str1, str2) Debug.Print i End Sub Public Function LD(ByVal s As String, ByVal t As String) As Integer Dim d() As Integer ' matrix Dim m As Integer ' length of t Dim n As Integer ' length of s Dim i As Integer ' iterates through s Dim j As Integer ' iterates through t Dim s_i As String ' ith character of s Dim t_j As String ' jth character of t Dim cost As Integer ' cost ' Step 1 n = Len(s) m = Len(t) If n = 0 Then LD = m Exit Function End If If m = 0 Then LD = n Exit Function End If ReDim d(0 To n, 0 To m) As Integer ' Step 2 For i = 0 To n d(i, 0) = i Next i For j = 0 To m d(0, j) = j Next j ' Step 3 For i = 1 To n s_i = Mid$(s, i, 1) ' Step 4 For j = 1 To m t_j = Mid$(t, j, 1) ' Step 5 If s_i = t_j Then cost = 0 Else cost = 1 End If ' Step 6 d(i, j) = Minimum(d(i - 1, j) + 1, d(i, j - 1) + 1, d(i - 1, j - 1) + cost) Next j Next i ' Step 7 LD = d(n, m) Erase d End Function '******************************* '*** Get minimum of three values '******************************* Private Function Minimum(ByVal a As Integer, _ ByVal b As Integer, _ ByVal c As Integer) As Integer Dim mi As Integer mi = a If b < mi Then mi = b End If If c < mi Then mi = c End If Minimum = mi End Function '*** Code End *** Hypochondria is the only disease I haven't got. -----Original Message----- From: Microsoft Access Database Discussion List [mailto:ACCESS-L at PEACH.EASE.LSOFT.COM] On Behalf Of Kevin Waddle Sent: Sunday, September 14, 2008 12:08 AM To: ACCESS-L at PEACH.EASE.LSOFT.COM Subject: Speed Problems when looping through records or the terrors of deduping Hello, I have a table with 18,000 records. The records are titles stored as a string. I am trying compare each record to all of the other records in the table using a Jaro-Winkler Distance function to find similar / potential duplicate records. So 'Cat in the Hat' and 'Hat in the Cat' would flag as similar and 'Composite Science and Technology' and 'Composites Science and Technology' would flag as similar. I have tried looping through the table twice: Set dbs = CurrentDb Set rst1 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) Set rst2 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) rst2.MoveFirst rst1.MoveFirst Do Until rst1.EOF If JaroDistance(rst1![CitationTitle], rst2![CitationTitle]) > 0.8 Then 'INSERT INTO ANOTHER TABLE RELATING THE TITLE TABLE DoEvents rst2.MoveNext Loop rst1.MoveNext Loop I have tried wrapping the Table into a Class Module and Collection and looping through the collection twice: Set dbs = CurrentDb Set rst1 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) rst1.MoveFirst Do Until rst1.EOF Set cls = New clsCitation Set cls2 = New clsCitation2 cls.CitID = rst1![CitationTitleID] cls.Citation = rst1![CitationTitle] cls.RecordCount = cnt Citation.Add cls cls2.CitID2 = rst1![CitationTitleID] cls2.Citation2 = rst1![CitationTitle] cls2.RecordCount2 = cnt Citation2.Add cls2 rst1.MoveNext Loop For Each cls In Citation For Each cls2 In Citation2 If JaroDistance(cls.Citation, cls2.Citation2) > 0.8 Then 'INSERT INTO ANOTHER TABLE RELATING THE TITLE TABLE" DoEvents Next Next Essentially, I end up looping through the entire table 18,000 times! No matter what I do it is taking from 45 to 60 seconds to make one pass through the table. This means that to complete the entire process would take about 12 days, 24 hours a day! Can someone point me to a faster method for applying fuzzy deduping? Thanks, Kevin -------------------------------------------------------------------------- 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 Gustav at cactus.dk Mon Sep 15 01:37:15 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Mon, 15 Sep 2008 08:37:15 +0200 Subject: [AccessD] Speed Problems when looping through records or the terrors of deduping Message-ID: Hi Kevin .. So the following records would be considered duplicates: 'European Journal of Social Psychology' = 'Social Psychology' 'Applied Developmental Psychology' = 'Journal of Applied Developmental Psychology' But these comparison return a Jaro distance of 0.53 and 0.76, not fulfilling your requirement of 0.8 as the minimum. So how should these match? That said, such examples could be found much faster by a simple string comparison using InStr. This will return a positive value when the smaller string is found in the larger. /gustav >>> thewaddles at sbcglobal.net 15-09-2008 08:07 >>> All, Thank you very much for your suggestions. I have spent way more time on this than I can recoup with the bid I placed. Now it has become more of an obsession than a project! I still haven't found a solution that really works, however I would like to try to answer all those that took the time to reply. Thank you, Kevin Dan suggested only looping through records with higher It's, so Record 1 would be checked against records 2 to 18,000, Record 17,998 would be checked against 17,999 to 18,000. - Great idea. I have implemented this, but it's still not fast enough. Emilia and Steve suggested doing the comparison in memory rather than looping. - I created a Class Module (clsCitation) containing the TitleID and Title and a collection (Citation) to store the class: Do Until rst1.EOF Set cls = New clsCitation If rst1![Checked] = False Then cls.CitID = rst1![CitationTitleID] cls.Citation = rst1![CitationTitle] cls.RecordCount = cnt Citation.Add cls End If rst1.MoveNext Loop Set Citation2 = Citation - I then looped through the two collections. Still took about 45 seconds per loop Rocky asked if most of the time was in the function. - I took the function and resulting SQL commands out and the time for each cycle was about the same. Gustav suggested cutting down on the number of comparisons based on string length. - Unfortunately, there appears to have been no normalization in the table structure. So the following records would be considered duplicates: 'European Journal of Social Psychology' = 'Social Psychology' 'Applied Developmental Psychology' = 'Journal of Applied Developmental Psychology' Stephen suggested a Cartesian query and then hit immediately on the problem with that route. My problem is I get a "Not Enough Space on Temp Disk" error before the query finishes. David asked for the functions: The Jaro Function uses two functions: JaroDistance and CleanString. I have also included a Levenshtein Distance function. The Levenshtein distance between two strings is the minimum number of operations needed to transform one string into the other, where an operation is an insertion, deletion, or substitution of a single character. '*** Code Start *** Function JaroDistance(ByVal str1 As String, ByVal str2 As String) As Double Dim Len1 As Integer Dim Len2 As Integer Dim LenMin As Integer Dim LenMax As Integer Dim m As Integer Dim i As Integer Dim j As Integer Dim Common As Integer Dim tr As Double Dim a1 As String Dim a2 As String Dim Aux As String Dim AuxStr As String Dim f As Integer Dim l As Integer Dim wcd As Double Dim wrd As Double Dim wtr As Double Dim f1() As Boolean Dim f2() As Boolean str1 = CleanString(str1) str2 = CleanString(str2) Len1 = Len(str1) Len2 = Len(str2) If Len1 > Len2 Then Aux = Len2 Len2 = Len1 Len1 = Aux AuxStr = str1 str1 = str2 str2 = AuxStr End If LenMin = Len1 LenMax = Len2 ReDim f1(Len1), f2(Len2) For i = 1 To Len1 f1(i) = False Next i For j = 1 To Len2 f2(j) = False Next j m = Int((LenMax / 2) - 1) Common = 0 tr = 0 For i = 1 To Len1 a1 = Mid(str1, i, 1) If m >= i Then f = 1 l = i + m Else f = i - m l = i + m End If If l > LenMax Then l = LenMax End If For j = f To l a2 = Mid(str2, j, 1) If (a2 = a1) And (f2(j) = False) Then Common = Common + 1 f1(i) = True f2(j) = True GoTo linea_exit End If Next j linea_exit: Next i l = 1 For i = 1 To Len1 If f1(i) Then For j = l To Len2 If f2(j) Then l = j + 1 a1 = Mid(str1, i, 1) a2 = Mid(str2, j, 1) If a1 <> a2 Then tr = tr + 0.5 End If Exit For End If Next j End If Next i wcd = 1 / 3 wrd = 1 / 3 wtr = 1 / 3 If Common <> 0 Then JaroDistance = wcd * Common / Len1 + wrd * Common / Len2 + wtr * (Common - tr) / Common Else JaroDistance = 0 End If End Function Function CleanString(str1 As String) As String str1 = Replace(str1, ".", "") str1 = Replace(str1, ",", "") str1 = Replace(str1, "-", "") str1 = Replace(str1, ";", "") str1 = Replace(str1, ":", "") str1 = Replace(str1, "?", "A") str1 = Replace(str1, "?", "E") str1 = Replace(str1, "?", "I") str1 = Replace(str1, "?", "O") str1 = Replace(str1, "?", "U") str1 = Replace(str1, "'", "") str1 = Replace(str1, Chr(34), "") str1 = Replace(str1, "&", "and") str1 = Replace(str1, " COMPANY ", " CO ") str1 = Replace(str1, " CORPORATION ", " CO ") str1 = Replace(str1, " a ", " ") str1 = Replace(str1, " an ", " ") str1 = Replace(str1, " and ", " ") str1 = Replace(str1, " the ", " ") str1 = Replace(str1, "the ", "") str1 = Replace(str1, " ", "") CleanString = str1 End Function '******************************** '*** Compute Levenshtein Distance '******************************** Sub testLD() Dim i As Variant Dim str1 As String Dim str2 As String str1 = "Cat in the Hat" str2 = "the in Hat Cat" i = LD(str1, str2) Debug.Print i End Sub Public Function LD(ByVal s As String, ByVal t As String) As Integer Dim d() As Integer ' matrix Dim m As Integer ' length of t Dim n As Integer ' length of s Dim i As Integer ' iterates through s Dim j As Integer ' iterates through t Dim s_i As String ' ith character of s Dim t_j As String ' jth character of t Dim cost As Integer ' cost ' Step 1 n = Len(s) m = Len(t) If n = 0 Then LD = m Exit Function End If If m = 0 Then LD = n Exit Function End If ReDim d(0 To n, 0 To m) As Integer ' Step 2 For i = 0 To n d(i, 0) = i Next i For j = 0 To m d(0, j) = j Next j ' Step 3 For i = 1 To n s_i = Mid$(s, i, 1) ' Step 4 For j = 1 To m t_j = Mid$(t, j, 1) ' Step 5 If s_i = t_j Then cost = 0 Else cost = 1 End If ' Step 6 d(i, j) = Minimum(d(i - 1, j) + 1, d(i, j - 1) + 1, d(i - 1, j - 1) + cost) Next j Next i ' Step 7 LD = d(n, m) Erase d End Function '******************************* '*** Get minimum of three values '******************************* Private Function Minimum(ByVal a As Integer, _ ByVal b As Integer, _ ByVal c As Integer) As Integer Dim mi As Integer mi = a If b < mi Then mi = b End If If c < mi Then mi = c End If Minimum = mi End Function '*** Code End *** Hypochondria is the only disease I haven't got. -----Original Message----- From: Microsoft Access Database Discussion List [mailto:ACCESS-L at PEACH.EASE.LSOFT.COM] On Behalf Of Kevin Waddle Sent: Sunday, September 14, 2008 12:08 AM To: ACCESS-L at PEACH.EASE.LSOFT.COM Subject: Speed Problems when looping through records or the terrors of deduping Hello, I have a table with 18,000 records. The records are titles stored as a string. I am trying compare each record to all of the other records in the table using a Jaro-Winkler Distance function to find similar / potential duplicate records. So 'Cat in the Hat' and 'Hat in the Cat' would flag as similar and 'Composite Science and Technology' and 'Composites Science and Technology' would flag as similar. I have tried looping through the table twice: Set dbs = CurrentDb Set rst1 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) Set rst2 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) rst2.MoveFirst rst1.MoveFirst Do Until rst1.EOF If JaroDistance(rst1![CitationTitle], rst2![CitationTitle]) > 0.8 Then 'INSERT INTO ANOTHER TABLE RELATING THE TITLE TABLE DoEvents rst2.MoveNext Loop rst1.MoveNext Loop I have tried wrapping the Table into a Class Module and Collection and looping through the collection twice: Set dbs = CurrentDb Set rst1 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) rst1.MoveFirst Do Until rst1.EOF Set cls = New clsCitation Set cls2 = New clsCitation2 cls.CitID = rst1![CitationTitleID] cls.Citation = rst1![CitationTitle] cls.RecordCount = cnt Citation.Add cls cls2.CitID2 = rst1![CitationTitleID] cls2.Citation2 = rst1![CitationTitle] cls2.RecordCount2 = cnt Citation2.Add cls2 rst1.MoveNext Loop For Each cls In Citation For Each cls2 In Citation2 If JaroDistance(cls.Citation, cls2.Citation2) > 0.8 Then 'INSERT INTO ANOTHER TABLE RELATING THE TITLE TABLE" DoEvents Next Next Essentially, I end up looping through the entire table 18,000 times! No matter what I do it is taking from 45 to 60 seconds to make one pass through the table. This means that to complete the entire process would take about 12 days, 24 hours a day! Can someone point me to a faster method for applying fuzzy deduping? Thanks, Kevin From John.Clark at niagaracounty.com Mon Sep 15 07:52:13 2008 From: John.Clark at niagaracounty.com (John Clark) Date: Mon, 15 Sep 2008 08:52:13 -0400 Subject: [AccessD] Importing XML into Access 03 or 07 In-Reply-To: References: <4dd71a0c0809090851y3a65aeaalc10b97109fcd7393@mail.gmail.com><48C8B9E0.3040303@mvps.org><4dd71a0c0809110802s7ac92712r14a95d56dcdbfe9b@mail.gmail.com> <48C9326F.167F.006B.0@niagaracounty.com> Message-ID: <48CE223C.167F.006B.0@niagaracounty.com> I dunno...this is why I am asking for help. I thought maybe there was way to automate this process. If I could script the process of hitting "import", choosing the next email message/XML entry, in the directly, then deleting it, it would work great. PS...I haven't been here, since I sent the message, so I apologize for the late response. John W. Clark Information Technology Technician Niagara County Central Data Processing >>> "Charlotte Foust" 9/11/2008 3:22 PM >>> If you have 250 emails, how would you expect to handle them all at once? Confused Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Clark Sent: Thursday, September 11, 2008 12:00 PM To: Access Developers discussion and problem solving Subject: [AccessD] Importing XML into Access 03 or 07 Our department hosts this Technology & Homeland Security Forum every year...it is at the Niagara Falls Casino this year, next month. This is my first year of any involvement other than "one of the department employees." The woman who did this, in the past, posted a registration form, on our web site (http://www.niagaracounty.com/docs/registrationform.pdf) that she created using "Adobe LiveCycle Designer 8.0" This information is received by us, usually, via email, in the format of the following...actually, I'll place it at the end... Each single email contains XML data for one single user. She was importing these, somehow, into Excel. Excel would be fine, although, I'd prefer Access. I know how to import each of these one at a time, but there are about 250 of these and I'd like to import them all at once if I could. Any ideas? XML data, in Email follows: - ( file:///G:/Tech%20Forum%202007/Final%20Attendee%20Information/Registrati on%20Forms/deemer.xml# ) - ( file:///G:/Tech%20Forum%202007/Final%20Attendee%20Information/Registrati on%20Forms/deemer.xml# ) Tami Deemer Niagara County Data Processing tami.deemer at niagaracounty.com 0 0 0 0 1 0 0 0 0 0 John W. Clark Information Technology Technician Niagara County Central Data Processing -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/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 Mon Sep 15 09:04:25 2008 From: markamatte at hotmail.com (Mark A Matte) Date: Mon, 15 Sep 2008 14:04:25 +0000 Subject: [AccessD] Speed Problems when looping through records or the terrors of deduping Message-ID: I ran a small test with about 2700 records...I called the function from a query and compared all names to my name...( JaroDistance([bo_name],"Mark Matte"))...for testing...this took out the cartersian join, or any join that may slow this down....and againts 2700 records it took 7-8 seconds. I believe Rocky hit on it earlier...it does not appear that your time is lost in getting the records, or joining them...its running them through the function. Your test: 18000 records= 45 seconds per My test: 2700 records= 7 second per Rationalization: 7*2700records=18900...7*7seconds=49 ...its the same amount of time...bottom line is it doesn't matter, at this point, how you pull the records together to compare them...it just takes that long to compare. If the speed is to be improved, I agree the 2 best approaches would be 1...work on the speed of the function...not the recordset/query. 2...call the function less times. Good Luck, Mark A. Matte > Date: Mon, 15 Sep 2008 08:37:15 +0200 > From: Gustav at cactus.dk > To: accessd at databaseadvisors.com > Subject: Re: [AccessD] Speed Problems when looping through records or the terrors of deduping > > Hi Kevin > > .. So the following records would be considered duplicates: > 'European Journal of Social Psychology' = 'Social Psychology' > 'Applied Developmental Psychology' = 'Journal of Applied Developmental Psychology' > > But these comparison return a Jaro distance of 0.53 and 0.76, not fulfilling your requirement of 0.8 as the minimum. > So how should these match? > > That said, such examples could be found much faster by a simple string comparison using InStr. This will return a positive value when the smaller string is found in the larger. > > /gustav > >>>> thewaddles at sbcglobal.net 15-09-2008 08:07>>> > All, > Thank you very much for your suggestions. > > I have spent way more time on this than I can recoup with the bid I placed. > Now it has become more of an obsession than a project! > > I still haven't found a solution that really works, however I would like to > try to answer all those that took the time to reply. > > Thank you, > Kevin > > Dan suggested only looping through records with higher It's, so Record 1 > would be checked against records 2 to 18,000, Record 17,998 would be checked > against 17,999 to 18,000. > - Great idea. I have implemented this, but it's still not fast enough. > > Emilia and Steve suggested doing the comparison in memory rather than > looping. > - I created a Class Module (clsCitation) containing the TitleID and Title > and a collection (Citation) to store the class: > Do Until rst1.EOF > Set cls = New clsCitation > If rst1![Checked] = False Then > cls.CitID = rst1![CitationTitleID] > cls.Citation = rst1![CitationTitle] > cls.RecordCount = cnt > Citation.Add cls > End If > rst1.MoveNext > Loop > Set Citation2 = Citation > - I then looped through the two collections. Still took about 45 seconds per loop > > Rocky asked if most of the time was in the function. > - I took the function and resulting SQL commands out and the time > for each cycle was about the same. > > Gustav suggested cutting down on the number of comparisons based on string length. > - Unfortunately, there appears to have been no normalization in the table structure. > So the following records would be considered duplicates: > 'European Journal of Social Psychology' = 'Social Psychology' > 'Applied Developmental Psychology' = 'Journal of Applied Developmental Psychology' > > Stephen suggested a Cartesian query and then hit immediately on the problem with that route. > My problem is I get a "Not Enough Space on Temp Disk" error before the query finishes. > > David asked for the functions: > The Jaro Function uses two functions: JaroDistance and CleanString. I have > also included a Levenshtein Distance function. The Levenshtein distance > between two strings is the minimum number of operations needed to transform > one string into the other, where an operation is an insertion, deletion, or > substitution of a single character. > > '*** Code Start *** > Function JaroDistance(ByVal str1 As String, ByVal str2 As String) As Double > Dim Len1 As Integer > Dim Len2 As Integer > Dim LenMin As Integer > Dim LenMax As Integer > Dim m As Integer > Dim i As Integer > Dim j As Integer > Dim Common As Integer > Dim tr As Double > Dim a1 As String > Dim a2 As String > Dim Aux As String > Dim AuxStr As String > Dim f As Integer > Dim l As Integer > Dim wcd As Double > Dim wrd As Double > Dim wtr As Double > Dim f1() As Boolean > Dim f2() As Boolean > str1 = CleanString(str1) > str2 = CleanString(str2) > Len1 = Len(str1) > Len2 = Len(str2) > If Len1> Len2 Then > Aux = Len2 > Len2 = Len1 > Len1 = Aux > AuxStr = str1 > str1 = str2 > str2 = AuxStr > End If > LenMin = Len1 > LenMax = Len2 > ReDim f1(Len1), f2(Len2) > For i = 1 To Len1 > f1(i) = False > Next i > For j = 1 To Len2 > f2(j) = False > Next j > m = Int((LenMax / 2) - 1) > Common = 0 > tr = 0 > For i = 1 To Len1 > a1 = Mid(str1, i, 1) > If m>= i Then > f = 1 > l = i + m > Else > f = i - m > l = i + m > End If > If l> LenMax Then > l = LenMax > End If > For j = f To l > a2 = Mid(str2, j, 1) > If (a2 = a1) And (f2(j) = False) Then > Common = Common + 1 > f1(i) = True > f2(j) = True > GoTo linea_exit > End If > Next j > linea_exit: > Next i > l = 1 > For i = 1 To Len1 > If f1(i) Then > For j = l To Len2 > If f2(j) Then > l = j + 1 > a1 = Mid(str1, i, 1) > a2 = Mid(str2, j, 1) > If a1 <> a2 Then > tr = tr + 0.5 > End If > Exit For > End If > Next j > End If > Next i > wcd = 1 / 3 > wrd = 1 / 3 > wtr = 1 / 3 > If Common <> 0 Then > JaroDistance = wcd * Common / Len1 + wrd * Common / Len2 + wtr * (Common - tr) / Common > Else > JaroDistance = 0 > End If > End Function > Function CleanString(str1 As String) As String > str1 = Replace(str1, ".", "") > str1 = Replace(str1, ",", "") > str1 = Replace(str1, "-", "") > str1 = Replace(str1, ";", "") > str1 = Replace(str1, ":", "") > str1 = Replace(str1, "?", "A") > str1 = Replace(str1, "?", "E") > str1 = Replace(str1, "?", "I") > str1 = Replace(str1, "?", "O") > str1 = Replace(str1, "?", "U") > str1 = Replace(str1, "'", "") > str1 = Replace(str1, Chr(34), "") > str1 = Replace(str1, "&", "and") > str1 = Replace(str1, " COMPANY ", " CO ") > str1 = Replace(str1, " CORPORATION ", " CO ") > str1 = Replace(str1, " a ", " ") > str1 = Replace(str1, " an ", " ") > str1 = Replace(str1, " and ", " ") > str1 = Replace(str1, " the ", " ") > str1 = Replace(str1, "the ", "") > str1 = Replace(str1, " ", "") > CleanString = str1 > End Function > > '******************************** > '*** Compute Levenshtein Distance > '******************************** > > Sub testLD() > Dim i As Variant > Dim str1 As String > Dim str2 As String > str1 = "Cat in the Hat" > str2 = "the in Hat Cat" > i = LD(str1, str2) > Debug.Print i > End Sub > > Public Function LD(ByVal s As String, ByVal t As String) As Integer > Dim d() As Integer ' matrix > Dim m As Integer ' length of t > Dim n As Integer ' length of s > Dim i As Integer ' iterates > through s > Dim j As Integer ' iterates > through t > Dim s_i As String ' ith character of s > Dim t_j As String ' jth character of t > Dim cost As Integer ' cost > ' Step 1 > n = Len(s) > m = Len(t) > If n = 0 Then > LD = m > Exit Function > End If > If m = 0 Then > LD = n > Exit Function > End If > ReDim d(0 To n, 0 To m) As Integer > ' Step 2 > For i = 0 To n > d(i, 0) = i > Next i > For j = 0 To m > d(0, j) = j > Next j > ' Step 3 > For i = 1 To n > s_i = Mid$(s, i, 1) > ' Step 4 > For j = 1 To m > t_j = Mid$(t, j, 1) > ' Step 5 > If s_i = t_j Then > cost = 0 > Else > cost = 1 > End If > ' Step 6 > d(i, j) = Minimum(d(i - 1, j) + 1, d(i, j - 1) + 1, d(i - 1, j - 1) + cost) > Next j > Next i > ' Step 7 > LD = d(n, m) > Erase d > End Function > '******************************* > '*** Get minimum of three values > '******************************* > Private Function Minimum(ByVal a As Integer, _ > ByVal b As Integer, _ > ByVal c As Integer) As Integer > Dim mi As Integer > mi = a > If b < mi Then > mi = b > End If > If c < mi Then > mi = c > End If > Minimum = mi > End Function > '*** Code End *** > > > > Hypochondria is the only disease I haven't got. > > -----Original Message----- > From: Microsoft Access Database Discussion List > [mailto:ACCESS-L at PEACH.EASE.LSOFT.COM] On Behalf Of Kevin Waddle > Sent: Sunday, September 14, 2008 12:08 AM > To: ACCESS-L at PEACH.EASE.LSOFT.COM > Subject: Speed Problems when looping through records or the terrors of > deduping > > Hello, > > I have a table with 18,000 records. The records are titles stored as a > string. > > I am trying compare each record to all of the other records in the table > using a Jaro-Winkler Distance function to find similar / potential duplicate > records. > > So 'Cat in the Hat' and 'Hat in the Cat' would flag as similar and > 'Composite Science and Technology' and 'Composites Science and Technology' > would flag as similar. > > I have tried looping through the table twice: > Set dbs = CurrentDb > Set rst1 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) > Set rst2 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) > rst2.MoveFirst > rst1.MoveFirst > Do Until rst1.EOF > If JaroDistance(rst1![CitationTitle], rst2![CitationTitle])> 0.8 Then > 'INSERT INTO ANOTHER TABLE RELATING THE TITLE TABLE > DoEvents > rst2.MoveNext > Loop > rst1.MoveNext > Loop > > I have tried wrapping the Table into a Class Module and Collection and looping through the collection twice: > Set dbs = CurrentDb > Set rst1 = dbs.OpenRecordset("SELECT * FROM [tblCitationTitles]", dbOpenDynaset) > rst1.MoveFirst > Do Until rst1.EOF > Set cls = New clsCitation > Set cls2 = New clsCitation2 > cls.CitID = rst1![CitationTitleID] > cls.Citation = rst1![CitationTitle] > cls.RecordCount = cnt > Citation.Add cls > > cls2.CitID2 = rst1![CitationTitleID] > cls2.Citation2 = rst1![CitationTitle] > cls2.RecordCount2 = cnt > Citation2.Add cls2 > rst1.MoveNext > Loop > > For Each cls In Citation > For Each cls2 In Citation2 > If JaroDistance(cls.Citation, cls2.Citation2)> 0.8 Then > 'INSERT INTO ANOTHER TABLE RELATING THE TITLE TABLE" > DoEvents > Next > Next > > > Essentially, I end up looping through the entire table 18,000 times! > No matter what I do it is taking from 45 to 60 seconds to make one pass through the table. > This means that to complete the entire process would take about 12 days, 24 hours a day! > > Can someone point me to a faster method for applying fuzzy deduping? > > Thanks, > Kevin > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com _________________________________________________________________ Get more out of the Web. Learn 10 hidden secrets of Windows Live. http://windowslive.com/connect/post/jamiethomson.spaces.live.com-Blog-cns!550F681DAD532637!5295.entry?ocid=TXT_TAGLM_WL_domore_092008 From Gustav at cactus.dk Mon Sep 15 09:56:30 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Mon, 15 Sep 2008 16:56:30 +0200 Subject: [AccessD] Speed Problems when looping through records or the terrors of deduping Message-ID: Hi Kevin and Mark This reminds me of the array speed test we did in Oct. 2005 (look up subject: "Array faster in DLL?") where I found out that moving a trivial routine like this to an external dll made with a simple tool like FreeBasic, speed could be increased by a factor more than 10. However, Shamil made the same in C++ and this was _way_ faster than both the VBA and the Basic implementations: .. speed improvement compared to VBA: VBA: 1:1 PowerBasic dll: 10:1 FreeBASIC dll: 15.5:1 C++ dll: 170:1 /gustav >>> markamatte at hotmail.com 15-09-2008 16:04 >>> I ran a small test with about 2700 records...I called the function from a query and compared all names to my name...( JaroDistance([bo_name],"Mark Matte"))...for testing...this took out the cartersian join, or any join that may slow this down....and againts 2700 records it took 7-8 seconds. I believe Rocky hit on it earlier...it does not appear that your time is lost in getting the records, or joining them...its running them through the function. Your test: 18000 records= 45 seconds per My test: 2700 records= 7 second per Rationalization: 7*2700records=18900...7*7seconds=49 ...its the same amount of time...bottom line is it doesn't matter, at this point, how you pull the records together to compare them...it just takes that long to compare. If the speed is to be improved, I agree the 2 best approaches would be 1...work on the speed of the function...not the recordset/query. 2...call the function less times. Good Luck, Mark A. Matte From robert at servicexp.com Mon Sep 15 06:18:17 2008 From: robert at servicexp.com (Robert) Date: Mon, 15 Sep 2008 07:18:17 -0400 Subject: [AccessD] What are you guys using? In-Reply-To: <003c01c916d4$825fbd00$0301a8c0@HAL9005> References: <589268101.917289.1221426299954.JavaMail.app@esv4-com10.prod> <000001c916cc$720aa710$561ff530$@com> <003c01c916d4$825fbd00$0301a8c0@HAL9005> Message-ID: <000a01c91724$dfb0b090$9f1211b0$@com> Thanks Rocky, but right now I'm not sure I have the time to come up with something in Access. I wouldn't mind dropping a 100 bucks or so for something that all I have to do is start using... Do you know of any programming titles out there for our purposes?? WBR ~Robert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Sunday, September 14, 2008 9:44 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] What are you guys using? I rolled my own. It's a dead simple application, easy to whip up in Access and then you can add things as you go along to make it fit your own needs. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Robert Sent: Sunday, September 14, 2008 5:46 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] What are you guys using? What is everyone using to keep track of their customers, Sales, software keys, Program bugs ect... I have been looking at a few programs out there, but they just don't fit... The one that I have my eye on the most is Service Desktop Pro, but I would like a better fit... TIA ~Robert -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/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 adtp at airtelmail.in Mon Sep 15 10:02:04 2008 From: adtp at airtelmail.in (A.D.Tejpal) Date: Mon, 15 Sep 2008 20:32:04 +0530 Subject: [AccessD] Speed Problems when looping through records orthe terrors of deduping References: <569E08FC48047F4F848850B118195FBE0382EE@server.BondSoftware.local> Message-ID: <003f01c91744$5254e480$855ea27a@personald6374f> Kevin, Sample subroutine P_MatchAllRecords(), as given below, is expected to provide significant improvement in speed. Higher the incidence of matching values, more pronounced will be the gain in speed. Basically it involves one cycle of stepping through only a portion of total records. This portion gets smaller and smaller as more matches are found. For sample demonstration, T_A is the name of table having fields ID (autonumber P.K.), Title (text type) and Matched (number type). To start with, ID and Title of first record are stored in variables as master ID and master Title. An update query, stores the value of this master ID in field named Matched, for all records where Title matches the master Title, using function Fn_MatchTwoValues(). You can substitute your own function here. The scope of update query is additionally restricted to only those records where field Matched is blank and difference of lengths for Title and master Title is <= 2. You can change this value of 2 to whatever is felt appropriate. After the above update action, the recordset gets re-set to balance records where field Matched is still blank. ID and Title for first record of this new recordset become the fresh master values and the update query gets executed for all matching records as in previous para. Thus with every new cycle, the recordset continues to shrink, ignoring all records that stand matched. Finally, the results arranged in groups of matched records can be viewed via sample query named Q_MatchedRecords, also given below. You might like to try it out and confirm the outcome. Note - In the worst case scenario, if there is no matched record at all, there will be one cycle of stepping through all the records, with one execution of update query per record. Best wishes, A.D. Tejpal ------------ ' Sample code in general module '================================ Sub P_MatchAllRecords() ' Table T_A has fields ID (autonumber P.K.), ' Title (text type) and Matched (number type) ' Compares the contents of Title on each ' record with all other records for a match ' (satisfying function Fn_MatchTwoValues()) ' Field named Matched gets updated with ID ' of master matching record. Dim db As DAO.Database Dim rst As DAO.Recordset Dim Rtv As Variant, Ln As Long, Idn As Long Set db = DBEngine(0)(0) ' Clear Matched field for all records db.Execute "UPDATE T_A SET " & _ "Matched = Null;", dbFailOnError Do While True ' Set rst to cover only those records where ' Matched field is still blank Set rst = db.OpenRecordset("SELECT * " & _ "FROM T_A WHERE " & _ "Title Is Not Null And Matched Is Null") If rst.EOF Then Exit Do End If ' Get values for first record With rst Rtv = .Fields("Title") Ln = Len(Rtv) Idn = .Fields("ID") End With ' Update Matched field to Idn, only where it ' is blank, length differential of Title vs Rtv ' is within 2, and Fn_MatchTwoValues() ' comparing Title with Rtv returns True. db.Execute "UPDATE T_A SET " & _ "Matched = " & Idn & _ " WHERE Matched Is Null " & _ "And Abs(Len(Title) - " & Ln & _ ") <= 2 And " & _ "Fn_MatchTwoValues(Title, '" & _ Rtv & "') = True;", dbFailOnError ' Note: ' The statement above, treats 2 as max alowed ' difference in length, beyond which there is no ' need to test for Fn_MatchTwoValues(). ' Depending upon the actual requirements, ' this value of 2 can be revised as desired. Loop rst.Close Set rst = Nothing Set db = Nothing End Sub '=================================== Q_MatchedRecords (Sample query showing matched records) '=================================== SELECT T_A.* FROM T_A ORDER BY T_A.Matched, T_A.ID; '=================================== -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Kevin Waddle Sent: Sunday, 14 September 2008 7:16 p.m. To: Stephen Subject: [AccessD] Speed Problems when looping through records or the terrors of deduping Hello, I have a table with 18,000 records. The records are titles stored as a string. I am trying compare each record to all of the other records in the table using a Jaro-Winkler Distance function to find similar / potential duplicate records. So 'Cat in the Hat' and 'Hat in the Cat' would flag as similar and 'Composite Science and Technology' and 'Composites Science and Technology' would flag as similar. I have tried looping through the table twice: <<>Snipped> Essentially, I end up looping through the entire table 18,000 times! No matter what I do it is taking from 45 to 60 seconds to make one pass through the table. This means that to complete the entire process would take about 12 days, 24 hours a day! Can someone point me to a faster method for applying fuzzy deduping? Thanks, Kevin From cfoust at infostatsystems.com Mon Sep 15 10:32:11 2008 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Mon, 15 Sep 2008 08:32:11 -0700 Subject: [AccessD] What are you guys using? In-Reply-To: <000001c916cc$720aa710$561ff530$@com> References: <589268101.917289.1221426299954.JavaMail.app@esv4-com10.prod> <000001c916cc$720aa710$561ff530$@com> Message-ID: In our office, we us AxoSoft's OnTime for the bugs, features, suggestions and support issues. Our licenses are tracked in an application we built that allows us to keep a history of keys issued, to whom and why, as well as the licensing period, on each serial number. It's gotten more refined over the years and is currently in .Net with a SQL Server back end. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Robert Sent: Sunday, September 14, 2008 5:46 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] What are you guys using? What is everyone using to keep track of their customers, Sales, software keys, Program bugs ect... I have been looking at a few programs out there, but they just don't fit... The one that I have my eye on the most is Service Desktop Pro, but I would like a better fit... TIA ~Robert -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From markamatte at hotmail.com Mon Sep 15 10:51:25 2008 From: markamatte at hotmail.com (Mark A Matte) Date: Mon, 15 Sep 2008 15:51:25 +0000 Subject: [AccessD] Speed Problems when looping through records orthe terrors of deduping In-Reply-To: <003f01c91744$5254e480$855ea27a@personald6374f> References: <569E08FC48047F4F848850B118195FBE0382EE@server.BondSoftware.local> <003f01c91744$5254e480$855ea27a@personald6374f> Message-ID: I think you may eliminate some matches with this approach...if he runs the code that he provided...and uses this technique to limit the number of times he calls the function...matches wil be missed. with his code I found some matches with at least a difference of 4 in length. For example:JaroDistance([bo_name],"matte,mark") RESULTS: bo_name : Score : Length Matte,Mark : 1 : 10 mathews,marc : 0.804 : 12 This would eliminate both records from further comparisons. So the next set would be ommitted EX: JaroDistance([bo_name],"mathews,marc") RESULTS: bo_name : Score : Length Matte,Mark : 0.804 : 10 Matthews,Frances : 0.825 : 16 pathews,marcus : 0.8927 : 14 mathews,marc : 1 : 12 Frances Mathews and Marcus Pathews would not be included due to Marc Mathews being matched in the first run. Good Luck, Mark A. Matte PS...Also, in looking at the original function provided...there possibly may be some unnecessary looping...and the function CleanString...seems to be doing some replacements twice?...example..."&" is replaced with "and" then " and " with " "...then " " with ""......the same with a few others to " "...then at the end the " " to "". Not sure if it would save any time...but seems like it might be redundancy > From: adtp at airtelmail.in > To: accessd at databaseadvisors.com > Date: Mon, 15 Sep 2008 20:32:04 +0530 > CC: adtejpal at gmail.com > Subject: Re: [AccessD] Speed Problems when looping through records orthe terrors of deduping > > Kevin, > > Sample subroutine P_MatchAllRecords(), as given below, is expected to provide significant improvement in speed. Higher the incidence of matching values, more pronounced will be the gain in speed. > > Basically it involves one cycle of stepping through only a portion of total records. This portion gets smaller and smaller as more matches are found. > > For sample demonstration, T_A is the name of table having fields ID (autonumber P.K.), Title (text type) and Matched (number type). To start with, ID and Title of first record are stored in variables as master ID and master Title. An update query, stores the value of this master ID in field named Matched, for all records where Title matches the master Title, using function Fn_MatchTwoValues(). You can substitute your own function here. The scope of update query is additionally restricted to only those records where field Matched is blank and difference of lengths for Title and master Title is <= 2. You can change this value of 2 to whatever is felt appropriate. > > After the above update action, the recordset gets re-set to balance records where field Matched is still blank. ID and Title for first record of this new recordset become the fresh master values and the update query gets executed for all matching records as in previous para. Thus with every new cycle, the recordset continues to shrink, ignoring all records that stand matched. > > Finally, the results arranged in groups of matched records can be viewed via sample query named Q_MatchedRecords, also given below. > > You might like to try it out and confirm the outcome. > > Note - In the worst case scenario, if there is no matched record at all, there will be one cycle of stepping through all the records, with one execution of update query per record. > > Best wishes, > A.D. Tejpal > ------------ > > ' Sample code in general module > '================================ > Sub P_MatchAllRecords() > ' Table T_A has fields ID (autonumber P.K.), > ' Title (text type) and Matched (number type) > ' Compares the contents of Title on each > ' record with all other records for a match > ' (satisfying function Fn_MatchTwoValues()) > ' Field named Matched gets updated with ID > ' of master matching record. > Dim db As DAO.Database > Dim rst As DAO.Recordset > Dim Rtv As Variant, Ln As Long, Idn As Long > > Set db = DBEngine(0)(0) > > ' Clear Matched field for all records > db.Execute "UPDATE T_A SET " & _ > "Matched = Null;", dbFailOnError > > Do While True > ' Set rst to cover only those records where > ' Matched field is still blank > Set rst = db.OpenRecordset("SELECT * " & _ > "FROM T_A WHERE " & _ > "Title Is Not Null And Matched Is Null") > If rst.EOF Then > Exit Do > End If > > ' Get values for first record > With rst > Rtv = .Fields("Title") > Ln = Len(Rtv) > Idn = .Fields("ID") > End With > > ' Update Matched field to Idn, only where it > ' is blank, length differential of Title vs Rtv > ' is within 2, and Fn_MatchTwoValues() > ' comparing Title with Rtv returns True. > db.Execute "UPDATE T_A SET " & _ > "Matched = " & Idn & _ > " WHERE Matched Is Null " & _ > "And Abs(Len(Title) - " & Ln & _ > ") <= 2 And " & _ > "Fn_MatchTwoValues(Title, '" & _ > Rtv & "') = True;", dbFailOnError > > ' Note: > ' The statement above, treats 2 as max alowed > ' difference in length, beyond which there is no > ' need to test for Fn_MatchTwoValues(). > ' Depending upon the actual requirements, > ' this value of 2 can be revised as desired. > Loop > > rst.Close > Set rst = Nothing > Set db = Nothing > End Sub > '=================================== > > Q_MatchedRecords > (Sample query showing matched records) > '=================================== > SELECT T_A.* > FROM T_A > ORDER BY T_A.Matched, T_A.ID; > '=================================== > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Kevin Waddle > Sent: Sunday, 14 September 2008 7:16 p.m. > To: Stephen > Subject: [AccessD] Speed Problems when looping through records or the > terrors of deduping > > Hello, > > I have a table with 18,000 records. The records are titles stored as a > string. > > I am trying compare each record to all of the other records in the table > using a Jaro-Winkler Distance function to find similar / potential > duplicate records. > > So 'Cat in the Hat' and 'Hat in the Cat' would flag as similar and > 'Composite Science and Technology' and 'Composites Science and > Technology' > would flag as similar. > > I have tried looping through the table twice: > <<>Snipped> > > Essentially, I end up looping through the entire table 18,000 times! > No matter what I do it is taking from 45 to 60 seconds to make one pass > through the table. > This means that to complete the entire process would take about 12 days, > 24 hours a day! > > Can someone point me to a faster method for applying fuzzy deduping? > > Thanks, > Kevin > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com _________________________________________________________________ Stay up to date on your PC, the Web, and your mobile phone with Windows Live. http://clk.atdmt.com/MRT/go/msnnkwxp1020093185mrt/direct/01/ From adtp at airtelmail.in Mon Sep 15 11:37:26 2008 From: adtp at airtelmail.in (A.D.Tejpal) Date: Mon, 15 Sep 2008 22:07:26 +0530 Subject: [AccessD] Speed Problems when looping through recordsorthe terrors of deduping References: <569E08FC48047F4F848850B118195FBE0382EE@server.BondSoftware.local><003f01c91744$5254e480$855ea27a@personald6374f> Message-ID: <002e01c91751$6e0b8b90$425ea27a@personald6374f> As implied in my previous post, the value of 2 as max permissible difference in length, so as to qualify as a candidate for comparison, is arbitrary. Kevin has to decide upon the most suitable safe value. A.D. Tejpal ------------ ----- Original Message ----- From: Mark A Matte To: Access Developers discussion and problem solving Sent: Monday, September 15, 2008 21:21 Subject: Re: [AccessD] Speed Problems when looping through recordsorthe terrors of deduping I think you may eliminate some matches with this approach...if he runs the code that he provided...and uses this technique to limit the number of times he calls the function...matches wil be missed. with his code I found some matches with at least a difference of 4 in length. For example:JaroDistance([bo_name],"matte,mark") RESULTS: bo_name : Score : Length Matte,Mark : 1 : 10 mathews,marc : 0.804 : 12 This would eliminate both records from further comparisons. So the next set would be ommitted EX: JaroDistance([bo_name],"mathews,marc") RESULTS: bo_name : Score : Length Matte,Mark : 0.804 : 10 Matthews,Frances : 0.825 : 16 pathews,marcus : 0.8927 : 14 mathews,marc : 1 : 12 Frances Mathews and Marcus Pathews would not be included due to Marc Mathews being matched in the first run. Good Luck, Mark A. Matte PS...Also, in looking at the original function provided...there possibly may be some unnecessary looping...and the function CleanString...seems to be doing some replacements twice?...example..."&" is replaced with "and" then " and " with " "...then " " with ""......the same with a few others to " "...then at the end the " " to "". Not sure if it would save any time...but seems like it might be redundancy > From: adtp at airtelmail.in > To: accessd at databaseadvisors.com > Date: Mon, 15 Sep 2008 20:32:04 +0530 > CC: adtejpal at gmail.com > Subject: Re: [AccessD] Speed Problems when looping through records orthe terrors of deduping > > Kevin, > > Sample subroutine P_MatchAllRecords(), as given below, is expected to provide significant improvement in speed. Higher the incidence of matching values, more pronounced will be the gain in speed. > > Basically it involves one cycle of stepping through only a portion of total records. This portion gets smaller and smaller as more matches are found. > > For sample demonstration, T_A is the name of table having fields ID (autonumber P.K.), Title (text type) and Matched (number type). To start with, ID and Title of first record are stored in variables as master ID and master Title. An update query, stores the value of this master ID in field named Matched, for all records where Title matches the master Title, using function Fn_MatchTwoValues(). You can substitute your own function here. The scope of update query is additionally restricted to only those records where field Matched is blank and difference of lengths for Title and master Title is <= 2. You can change this value of 2 to whatever is felt appropriate. > > After the above update action, the recordset gets re-set to balance records where field Matched is still blank. ID and Title for first record of this new recordset become the fresh master values and the update query gets executed for all matching records as in previous para. Thus with every new cycle, the recordset continues to shrink, ignoring all records that stand matched. > > Finally, the results arranged in groups of matched records can be viewed via sample query named Q_MatchedRecords, also given below. > > You might like to try it out and confirm the outcome. > > Note - In the worst case scenario, if there is no matched record at all, there will be one cycle of stepping through all the records, with one execution of update query per record. > > Best wishes, > A.D. Tejpal > ------------ > > ' Sample code in general module > '================================ > Sub P_MatchAllRecords() > ' Table T_A has fields ID (autonumber P.K.), > ' Title (text type) and Matched (number type) > ' Compares the contents of Title on each > ' record with all other records for a match > ' (satisfying function Fn_MatchTwoValues()) > ' Field named Matched gets updated with ID > ' of master matching record. > Dim db As DAO.Database > Dim rst As DAO.Recordset > Dim Rtv As Variant, Ln As Long, Idn As Long > > Set db = DBEngine(0)(0) > > ' Clear Matched field for all records > db.Execute "UPDATE T_A SET " & _ > "Matched = Null;", dbFailOnError > > Do While True > ' Set rst to cover only those records where > ' Matched field is still blank > Set rst = db.OpenRecordset("SELECT * " & _ > "FROM T_A WHERE " & _ > "Title Is Not Null And Matched Is Null") > If rst.EOF Then > Exit Do > End If > > ' Get values for first record > With rst > Rtv = .Fields("Title") > Ln = Len(Rtv) > Idn = .Fields("ID") > End With > > ' Update Matched field to Idn, only where it > ' is blank, length differential of Title vs Rtv > ' is within 2, and Fn_MatchTwoValues() > ' comparing Title with Rtv returns True. > db.Execute "UPDATE T_A SET " & _ > "Matched = " & Idn & _ > " WHERE Matched Is Null " & _ > "And Abs(Len(Title) - " & Ln & _ > ") <= 2 And " & _ > "Fn_MatchTwoValues(Title, '" & _ > Rtv & "') = True;", dbFailOnError > > ' Note: > ' The statement above, treats 2 as max alowed > ' difference in length, beyond which there is no > ' need to test for Fn_MatchTwoValues(). > ' Depending upon the actual requirements, > ' this value of 2 can be revised as desired. > Loop > > rst.Close > Set rst = Nothing > Set db = Nothing > End Sub > '=================================== > > Q_MatchedRecords > (Sample query showing matched records) > '=================================== > SELECT T_A.* > FROM T_A > ORDER BY T_A.Matched, T_A.ID; > '=================================== From DWUTKA at Marlow.com Mon Sep 15 12:01:37 2008 From: DWUTKA at Marlow.com (Drew Wutka) Date: Mon, 15 Sep 2008 12:01:37 -0500 Subject: [AccessD] Speed Problems when looping through records or theterrors of deduping In-Reply-To: <8C073DCF1AC344B6A846F9A390A18249@TheWaddles> Message-ID: I've got a little different approach for you to try. Instead of running every record through code, to compare to every other record A slightly different approach would be to break down each title into words. So, let's say tblTitles is your table with titles, with TitleID (long integer ID), Title as the field with the title, and add a field called WordCount (long integer). Then create tblWords (WordID (Autonumber), and Word (text)), and tblWordsInTitles (TitleID, WordID). Then you would run the following functions (actually, run GetWordsFromTitles, RemovePunctuation is used inside that function): Function RemovePunctuation(ByVal strWord As String) As String Dim intChar As Long intChar = Asc(Right(strWord, 1)) Do Until intChar >= 65 And intChar <= 90 If Len(strWord) >= 1 Then RemovePunctuation = "" Exit Function End If strWord = Left(strWord, Len(strWord) - 1) intChar = Asc(Right(strWord, 1)) Loop RemovePunctuation = strWord End Function Function GetWordsFromTitles() Dim rs As ADODB.Recordset Dim strSQL As String Dim rsWord As ADODB.Recordset Dim strArray() As String Dim i As Long Dim intWordCount As Long Dim strWord As String strSQL = "SELECT TitleID, Title, WordCount FROM tblTitles WHERE WordCount=0" Set rs = New ADODB.Recordset rs.Open strSQL, CurrentProject.Connection, adOpenKeyset, adLockOptimistic If rs.EOF = False Then rs.MoveFirst Do Until rs.EOF = True strArray = Split(rs.Fields(1).Value) intWordCount = 0 For i = 0 To UBound(strArray) strWord = RemovePunctuation(UCase(strArray(i))) If strWord <> "" Then strSQL = "SELECT WordID FROM tblWords WHERE Word=""" & strWord & """" Set rsWord = New ADODB.Recordset rsWord.Open strSQL, CurrentProject.Connection, adOpenKeyset, adLockReadOnly If rsWord.EOF = True And rsWord.BOF = True Then rsWord.Close Set rsWord = Nothing Set rsWord = New ADODB.Recordset rsWord.Open "tblWords", CurrentProject.Connection, adOpenKeyset, adLockOptimistic rsWord.AddNew rsWord.Fields("Word").Value = strWord rsWord.Update Else rsWord.MoveFirst End If strSQL = "INSERT INTO tblWordsInTitles ([TitleID],[WordID]) VALUES(" & rs.Fields(0).Value & "," & rsWord.Fields("WordID").Value & ")" rsWord.Close Set rsWord = Nothing DoCmd.SetWarnings False DoCmd.RunSQL strSQL DoCmd.SetWarnings True intWordCount = intWordCount + 1 End If Next i rs.Fields("WordCount").Value = intWordCount rs.Update rs.MoveNext Loop rs.Close Set rs = Nothing MsgBox "Done" End Function Now you have a table with all the words from your titles, and you have a table with links between the words and the titles. You can then do a 'reverse lookup' of sorts, based on the commonality of the words, and the number of words. For example: SELECT tblTitles.TitleID, tblTitles.Title FROM tblWordsInTitles AS tblWordsInTitles_1 INNER JOIN (tblWordsInTitles INNER JOIN tblTitles ON tblWordsInTitles.TitleID = tblTitles.TitleID) ON tblWordsInTitles_1.WordID = tblWordsInTitles.WordID WHERE (((tblTitles.TitleID)<>1) AND ((tblWordsInTitles_1.TitleID)=1)) GROUP BY tblTitles.TitleID, tblTitles.Title HAVING (((Count(tblTitles.TitleID))>(0.8*4))); Would display any common titles with at least 80% of the words in the title with ID 1 (the WHERE clause designates the ID for the original title) and the HAVING clause is the .8 (80%) of 4 (WordCount for record with ID of 1)). If you need a running record of matched titles, then you would just have to run this query against each record. Now, this is in no way a perfect example, you may need to tweak things a bit. Maybe tweak it so that it ignores common words like in, the, a, etc. or catches words that are plurals of existing words. The advantage of this approach would be if you need to list 'common titles' on the fly. The code above would need to be run whenever new titles are added, but it'll only run against new titles (with WordCount=0), so it might take a minute on your first 18k records, but from then on it's a second to run for a handful of records. And any querying against the 'reverse word lookup' would be pretty quick since it's all indexed numbers. Just a thought. Drew The information contained in this transmission is intended only for the person or entity to which it is addressed and may contain II-VI Proprietary and/or II-VI Business Sensitive material. If you are not the intended recipient, please contact the sender immediately and destroy the material in its entirety, whether electronic or hard copy. You are notified that any review, retransmission, copying, disclosure, dissemination, or other use of, or taking of any action in reliance upon this information by persons or entities other than the intended recipient is prohibited. From markamatte at hotmail.com Mon Sep 15 12:01:48 2008 From: markamatte at hotmail.com (Mark A Matte) Date: Mon, 15 Sep 2008 17:01:48 +0000 Subject: [AccessD] Speed Problems when looping through recordsorthe terrors of deduping In-Reply-To: <002e01c91751$6e0b8b90$425ea27a@personald6374f> References: <569E08FC48047F4F848850B118195FBE0382EE@server.BondSoftware.local><003f01c91744$5254e480$855ea27a@personald6374f> <002e01c91751$6e0b8b90$425ea27a@personald6374f> Message-ID: Thanks A.D. My post was not so much aimed at the length issue...as it was at the limitting of records. The example below shows 2 records that would match his criteria but omitted with this technique. Mark A. Matte > From: adtp at airtelmail.in > To: accessd at databaseadvisors.com > Date: Mon, 15 Sep 2008 22:07:26 +0530 > Subject: Re: [AccessD] Speed Problems when looping through recordsorthe terrors of deduping > > As implied in my previous post, the value of 2 as max permissible difference in length, so as to qualify as a candidate for comparison, is arbitrary. Kevin has to decide upon the most suitable safe value. > > A.D. Tejpal > ------------ > > ----- Original Message ----- > From: Mark A Matte > To: Access Developers discussion and problem solving > Sent: Monday, September 15, 2008 21:21 > Subject: Re: [AccessD] Speed Problems when looping through recordsorthe terrors of deduping > > I think you may eliminate some matches with this approach...if he runs the code that he provided...and uses this technique to limit the number of times he calls the function...matches wil be missed. with his code I found some matches with at least a difference of 4 in length. > > For example:JaroDistance([bo_name],"matte,mark") > RESULTS: > bo_name : Score : Length > Matte,Mark : 1 : 10 > mathews,marc : 0.804 : 12 > > This would eliminate both records from further comparisons. So the next set would be ommitted > > EX: JaroDistance([bo_name],"mathews,marc") > RESULTS: > bo_name : Score : Length > Matte,Mark : 0.804 : 10 > Matthews,Frances : 0.825 : 16 > pathews,marcus : 0.8927 : 14 > mathews,marc : 1 : 12 > > Frances Mathews and Marcus Pathews would not be included due to Marc Mathews being matched in the first run. > > Good Luck, > > Mark A. Matte > > PS...Also, in looking at the original function provided...there possibly may be some unnecessary looping...and the function CleanString...seems to be doing some replacements twice?...example..."&" is replaced with "and" then " and " with " "...then " " with ""......the same with a few others to " "...then at the end the " " to "". Not sure if it would save any time...but seems like it might be redundancy > > > >> From: adtp at airtelmail.in >> To: accessd at databaseadvisors.com >> Date: Mon, 15 Sep 2008 20:32:04 +0530 >> CC: adtejpal at gmail.com >> Subject: Re: [AccessD] Speed Problems when looping through records orthe terrors of deduping >> >> Kevin, >> >> Sample subroutine P_MatchAllRecords(), as given below, is expected to provide significant improvement in speed. Higher the incidence of matching values, more pronounced will be the gain in speed. >> >> Basically it involves one cycle of stepping through only a portion of total records. This portion gets smaller and smaller as more matches are found. >> >> For sample demonstration, T_A is the name of table having fields ID (autonumber P.K.), Title (text type) and Matched (number type). To start with, ID and Title of first record are stored in variables as master ID and master Title. An update query, stores the value of this master ID in field named Matched, for all records where Title matches the master Title, using function Fn_MatchTwoValues(). You can substitute your own function here. The scope of update query is additionally restricted to only those records where field Matched is blank and difference of lengths for Title and master Title is <= 2. You can change this value of 2 to whatever is felt appropriate. >> >> After the above update action, the recordset gets re-set to balance records where field Matched is still blank. ID and Title for first record of this new recordset become the fresh master values and the update query gets executed for all matching records as in previous para. Thus with every new cycle, the recordset continues to shrink, ignoring all records that stand matched. >> >> Finally, the results arranged in groups of matched records can be viewed via sample query named Q_MatchedRecords, also given below. >> >> You might like to try it out and confirm the outcome. >> >> Note - In the worst case scenario, if there is no matched record at all, there will be one cycle of stepping through all the records, with one execution of update query per record. >> >> Best wishes, >> A.D. Tejpal >> ------------ >> >> ' Sample code in general module >> '================================ >> Sub P_MatchAllRecords() >> ' Table T_A has fields ID (autonumber P.K.), >> ' Title (text type) and Matched (number type) >> ' Compares the contents of Title on each >> ' record with all other records for a match >> ' (satisfying function Fn_MatchTwoValues()) >> ' Field named Matched gets updated with ID >> ' of master matching record. >> Dim db As DAO.Database >> Dim rst As DAO.Recordset >> Dim Rtv As Variant, Ln As Long, Idn As Long >> >> Set db = DBEngine(0)(0) >> >> ' Clear Matched field for all records >> db.Execute "UPDATE T_A SET " & _ >> "Matched = Null;", dbFailOnError >> >> Do While True >> ' Set rst to cover only those records where >> ' Matched field is still blank >> Set rst = db.OpenRecordset("SELECT * " & _ >> "FROM T_A WHERE " & _ >> "Title Is Not Null And Matched Is Null") >> If rst.EOF Then >> Exit Do >> End If >> >> ' Get values for first record >> With rst >> Rtv = .Fields("Title") >> Ln = Len(Rtv) >> Idn = .Fields("ID") >> End With >> >> ' Update Matched field to Idn, only where it >> ' is blank, length differential of Title vs Rtv >> ' is within 2, and Fn_MatchTwoValues() >> ' comparing Title with Rtv returns True. >> db.Execute "UPDATE T_A SET " & _ >> "Matched = " & Idn & _ >> " WHERE Matched Is Null " & _ >> "And Abs(Len(Title) - " & Ln & _ >> ") <= 2 And " & _ >> "Fn_MatchTwoValues(Title, '" & _ >> Rtv & "') = True;", dbFailOnError >> >> ' Note: >> ' The statement above, treats 2 as max alowed >> ' difference in length, beyond which there is no >> ' need to test for Fn_MatchTwoValues(). >> ' Depending upon the actual requirements, >> ' this value of 2 can be revised as desired. >> Loop >> >> rst.Close >> Set rst = Nothing >> Set db = Nothing >> End Sub >> '=================================== >> >> Q_MatchedRecords >> (Sample query showing matched records) >> '=================================== >> SELECT T_A.* >> FROM T_A >> ORDER BY T_A.Matched, T_A.ID; >> '=================================== > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com _________________________________________________________________ See how Windows connects the people, information, and fun that are part of your life. http://clk.atdmt.com/MRT/go/msnnkwxp1020093175mrt/direct/01/ From phpons at gmail.com Tue Sep 16 09:05:25 2008 From: phpons at gmail.com (philippe pons) Date: Tue, 16 Sep 2008 16:05:25 +0200 Subject: [AccessD] Addding a password to a pdf document Message-ID: <57144ced0809160705h6d3ed74r6a445432d7db5d65@mail.gmail.com> Hi all, I have an Access application that stores a list of email addresses, each one having a password. The application has to go through each address, read the corresponding password, use it to protect a pdf file, and send it to the recipient. I don't know wether it is possible to do it without specific tools. I would like to use VBA code instead! Do you have any hint that could help me? Thanks in advance, Philippe From Chester_Kaup at kindermorgan.com Tue Sep 16 14:09:16 2008 From: Chester_Kaup at kindermorgan.com (Kaup, Chester) Date: Tue, 16 Sep 2008 14:09:16 -0500 Subject: [AccessD] Comparing Tables Message-ID: <0B2BF8524B73A248A2F1B81BA751ED3C0A492C96@houex1.kindermorgan.com> I have two tables. The first table contains a master list of wells. The second table contains a list of wells with automated test equipment. Only some of the wells are automated. I need to generate a list of all the wells with a flag field with a value of "A" if the well is automated and a value of "M" if it is not. I can probably do this with an unmatched query giving me a list of the manual wells and then another query to combine the second table and the results of this query but was looking for any ideas of 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 markamatte at hotmail.com Tue Sep 16 14:33:44 2008 From: markamatte at hotmail.com (Mark A Matte) Date: Tue, 16 Sep 2008 19:33:44 +0000 Subject: [AccessD] Comparing Tables In-Reply-To: <0B2BF8524B73A248A2F1B81BA751ED3C0A492C96@houex1.kindermorgan.com> References: <0B2BF8524B73A248A2F1B81BA751ED3C0A492C96@houex1.kindermorgan.com> Message-ID: How about just an IIF statement...if you are only trying to differentiate between in 1 table...and not the other. ******************* SELECT tblMasterWell.ID, IIf(IsNull([tblAutoEQ].[ID])=True,"M","A") AS Type FROM tblMasterWell LEFT JOIN tblAutoEQ ON tblMasterWell.ID = tblAutoEQ.ID; ******************* Good luck, Mark A. Matte > From: Chester_Kaup at kindermorgan.com > To: accessd at databaseadvisors.com > Date: Tue, 16 Sep 2008 14:09:16 -0500 > Subject: [AccessD] Comparing Tables > > I have two tables. The first table contains a master list of wells. The second table contains a list of wells with automated test equipment. Only some of the wells are automated. I need to generate a list of all the wells with a flag field with a value of "A" if the well is automated and a value of "M" if it is not. I can probably do this with an unmatched query giving me a list of the manual wells and then another query to combine the second table and the results of this query but was looking for any ideas of 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. > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com _________________________________________________________________ Get more out of the Web. Learn 10 hidden secrets of Windows Live. http://windowslive.com/connect/post/jamiethomson.spaces.live.com-Blog-cns!550F681DAD532637!5295.entry?ocid=TXT_TAGLM_WL_domore_092008 From markamatte at hotmail.com Wed Sep 17 09:07:03 2008 From: markamatte at hotmail.com (Mark A Matte) Date: Wed, 17 Sep 2008 14:07:03 +0000 Subject: [AccessD] Test In-Reply-To: <0B2BF8524B73A248A2F1B81BA751ED3C0A492C96@houex1.kindermorgan.com> References: <0B2BF8524B73A248A2F1B81BA751ED3C0A492C96@houex1.kindermorgan.com> Message-ID: Just checking...so quiet. _________________________________________________________________ Get more out of the Web. Learn 10 hidden secrets of Windows Live. http://windowslive.com/connect/post/jamiethomson.spaces.live.com-Blog-cns!550F681DAD532637!5295.entry?ocid=TXT_TAGLM_WL_domore_092008 From mmattys at rochester.rr.com Wed Sep 17 09:14:08 2008 From: mmattys at rochester.rr.com (Michael R Mattys) Date: Wed, 17 Sep 2008 10:14:08 -0400 Subject: [AccessD] Test References: <0B2BF8524B73A248A2F1B81BA751ED3C0A492C96@houex1.kindermorgan.com> Message-ID: <02cc01c918cf$a799a110$0402a8c0@Laptop> Hi Mark! Michael R. Mattys MapPoint & Access Dev www.mattysconsulting.com ----- Original Message ----- From: "Mark A Matte" To: "Access Developers discussion and problem solving" Sent: Wednesday, September 17, 2008 10:07 AM Subject: [AccessD] Test > > Just checking...so quiet. From adtp at airtelmail.in Wed Sep 17 13:43:02 2008 From: adtp at airtelmail.in (A.D.Tejpal) Date: Thu, 18 Sep 2008 00:13:02 +0530 Subject: [AccessD] Comparing Tables References: <0B2BF8524B73A248A2F1B81BA751ED3C0A492C96@houex1.kindermorgan.com> Message-ID: <021a01c918f5$4af4a150$dd5ea27a@personald6374f> Chester, My sample db named Query_CompareTables might be of interest to you. It is available at Rogers Access Library (other developers library). Link - http://www.rogersaccesslibrary.com/forum/forum_topics.asp?FID=45 The sample is in Access 2000 File Format (Reference required: DAO 3.6). Brief description is given below. Best wishes, A.D. Tejpal ------------ Query_CompareTables (Sample Db) Brief Description =========================== Discrepancies in the contents of two tables (for records identified by combination of PtID and AdmDate) are displayed as follows: 1 - Non-Matching records: (a) These are displayed in the subform at right. For each row, the name of its source table is also shown. (b) Each row is highlighted (separate back colors, depending upon the source table name). (c) For the fields under comparison, only those values are shown where there is a discrepancy between the two tables. Other fields (having no deviation) appear blank. (d) Displayed non-matching values are highlighted (separate back colors depending upon which table the field belongs to). 2 - Missing records (Existing in one table but not the other): (a) These are displayed in the subform at left. For each row, the name of its source table is also shown. (b) Each row is highlighted (separate back colors, depending upon the source table name). =================================== ----- Original Message ----- From: Kaup, Chester To: Access Developers discussion and problem solving Sent: Wednesday, September 17, 2008 00:39 Subject: [AccessD] Comparing Tables I have two tables. The first table contains a master list of wells. The second table contains a list of wells with automated test equipment. Only some of the wells are automated. I need to generate a list of all the wells with a flag field with a value of "A" if the well is automated and a value of "M" if it is not. I can probably do this with an unmatched query giving me a list of the manual wells and then another query to combine the second table and the results of this query but was looking for any ideas of a better way to do this. Chester Kaup From max.wanadoo at gmail.com Thu Sep 18 03:21:27 2008 From: max.wanadoo at gmail.com (Max Wanadoo) Date: Thu, 18 Sep 2008 09:21:27 +0100 Subject: [AccessD] Report Grouping for Financial Years Message-ID: Hi,I am trying to create a report based on Financial Years grouping. The default grouping gives Calendar Years. Is there anyway I can group by Financial Years (1 April to 31st March). Thanks Max From Gustav at cactus.dk Thu Sep 18 03:36:42 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Thu, 18 Sep 2008 10:36:42 +0200 Subject: [AccessD] Report Grouping for Financial Years Message-ID: Hi Max You can group by the financial year: =Year(DateAdd("m", -3, [YourDate])) /gustav >>> max.wanadoo at gmail.com 18-09-2008 10:21 >>> Hi,I am trying to create a report based on Financial Years grouping. The default grouping gives Calendar Years. Is there anyway I can group by Financial Years (1 April to 31st March). Thanks Max From rosalyn.clarke at barclays.com Thu Sep 18 03:48:36 2008 From: rosalyn.clarke at barclays.com (rosalyn.clarke at barclays.com) Date: Thu, 18 Sep 2008 09:48:36 +0100 Subject: [AccessD] Report Grouping for Financial Years In-Reply-To: References: Message-ID: Hi Max I don't know of any way to do this other than to specify the financial years in a dates table (worthwhile if you also need to track financial periods), or by creating a column with an Iif statement in to bump the record into the right year, something like IIf(Month([RecordDate])>=4,Year([RecordDate])+1,Year([RecordDate])) - this assumes your financial year starts on 1st April. Roz -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Max Wanadoo Sent: 18 September 2008 09:21 To: Access Developers discussion and problem solving Subject: [AccessD] Report Grouping for Financial Years Hi,I am trying to create a report based on Financial Years grouping. The default grouping gives Calendar Years. Is there anyway I can group by Financial Years (1 April to 31st March). Thanks Max -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com This e-mail and any attachments are confidential and intended solely for the addressee and may also be privileged or exempt from disclosure under applicable law. If you are not the addressee, or have received this e-mail in error, please notify the sender immediately, delete it from your system and do not copy, disclose or otherwise act upon any part of this e-mail or its attachments. Internet communications are not guaranteed to be secure or virus-free. The Barclays Group does not accept responsibility for any loss arising from unauthorised access to, or interference with, any Internet communications by any third party, or from the transmission of any viruses. Replies to this e-mail may be monitored by the Barclays Group for operational or business reasons. Any opinion or other information in this e-mail or its attachments that does not relate to the business of the Barclays Group is personal to the sender and is not given or endorsed by the Barclays Group. Barclays Bank PLC.Registered in England and Wales (registered no. 1026167). Registered Office: 1 Churchill Place, London, E14 5HP, United Kingdom. Barclays Bank PLC is authorised and regulated by the Financial Services Authority. From rosalyn.clarke at barclays.com Thu Sep 18 03:49:30 2008 From: rosalyn.clarke at barclays.com (rosalyn.clarke at barclays.com) Date: Thu, 18 Sep 2008 09:49:30 +0100 Subject: [AccessD] Report Grouping for Financial Years In-Reply-To: References: Message-ID: Gustav always has a more elegant answer! -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: 18 September 2008 09:37 To: accessd at databaseadvisors.com Subject: Re: [AccessD] Report Grouping for Financial Years Hi Max You can group by the financial year: =Year(DateAdd("m", -3, [YourDate])) /gustav >>> max.wanadoo at gmail.com 18-09-2008 10:21 >>> Hi,I am trying to create a report based on Financial Years grouping. The default grouping gives Calendar Years. Is there anyway I can group by Financial Years (1 April to 31st March). Thanks Max -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com This e-mail and any attachments are confidential and intended solely for the addressee and may also be privileged or exempt from disclosure under applicable law. If you are not the addressee, or have received this e-mail in error, please notify the sender immediately, delete it from your system and do not copy, disclose or otherwise act upon any part of this e-mail or its attachments. Internet communications are not guaranteed to be secure or virus-free. The Barclays Group does not accept responsibility for any loss arising from unauthorised access to, or interference with, any Internet communications by any third party, or from the transmission of any viruses. Replies to this e-mail may be monitored by the Barclays Group for operational or business reasons. Any opinion or other information in this e-mail or its attachments that does not relate to the business of the Barclays Group is personal to the sender and is not given or endorsed by the Barclays Group. Barclays Bank PLC.Registered in England and Wales (registered no. 1026167). Registered Office: 1 Churchill Place, London, E14 5HP, United Kingdom. Barclays Bank PLC is authorised and regulated by the Financial Services Authority. From denis at sherman.org.uk Thu Sep 18 03:54:33 2008 From: denis at sherman.org.uk (DenisSherman) Date: Thu, 18 Sep 2008 09:54:33 +0100 Subject: [AccessD] Report Grouping for Financial Years In-Reply-To: References: Message-ID: Thanks Gustav,I can't quite get my head around how I put this into the Grouping options in the Report. The income records extend back over a few years and I need to report on how much income each fundraiser has generated by financial year. Thanks Max On Thu, Sep 18, 2008 at 9:36 AM, Gustav Brock wrote: > Hi Max > > You can group by the financial year: > > =Year(DateAdd("m", -3, [YourDate])) > > /gustav > > >>> max.wanadoo at gmail.com 18-09-2008 10:21 >>> > Hi,I am trying to create a report based on Financial Years grouping. The > default grouping gives Calendar Years. > Is there anyway I can group by Financial Years (1 April to 31st March). > Thanks > Max > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From Gustav at cactus.dk Thu Sep 18 04:09:55 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Thu, 18 Sep 2008 11:09:55 +0200 Subject: [AccessD] Report Grouping for Financial Years Message-ID: Hi Max - in the small box, Sorting and Grouping. Insert that line as the expression. /gustav >>> denis at sherman.org.uk 18-09-2008 10:54 >>> Thanks Gustav,I can't quite get my head around how I put this into the Grouping options in the Report. The income records extend back over a few years and I need to report on how much income each fundraiser has generated by financial year. Thanks Max On Thu, Sep 18, 2008 at 9:36 AM, Gustav Brock wrote: > Hi Max > > You can group by the financial year: > > =Year(DateAdd("m", -3, [YourDate])) > > /gustav > > >>> max.wanadoo at gmail.com 18-09-2008 10:21 >>> > Hi,I am trying to create a report based on Financial Years grouping. The > default grouping gives Calendar Years. > Is there anyway I can group by Financial Years (1 April to 31st March). > Thanks > Max From denis at sherman.org.uk Thu Sep 18 04:15:55 2008 From: denis at sherman.org.uk (DenisSherman) Date: Thu, 18 Sep 2008 10:15:55 +0100 Subject: [AccessD] Report Grouping for Financial Years In-Reply-To: References: Message-ID: Roz,That's it m'dear! Well done. The final bit I am now using is this: FinYr: IIf(Month([ProcessDate])>=4,Year([ProcessDate]) & "/" & Year([ProcessDate])+1,Year([ProcessDate])-1 & "/" & Year([ProcessDate])) Thanks a million Max On Thu, Sep 18, 2008 at 9:48 AM, wrote: > Hi Max > > I don't know of any way to do this other than to specify the financial > years > in a dates table (worthwhile if you also need to track financial periods), > or > by creating a column with an Iif statement in to bump the record into the > right year, something like > > IIf(Month([RecordDate])>=4,Year([RecordDate])+1,Year([RecordDate])) - this > assumes your financial year starts on 1st April. > > Roz > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Max Wanadoo > Sent: 18 September 2008 09:21 > To: Access Developers discussion and problem solving > Subject: [AccessD] Report Grouping for Financial Years > > Hi,I am trying to create a report based on Financial Years grouping. The > default grouping gives Calendar Years. > Is there anyway I can group by Financial Years (1 April to 31st March). > Thanks > Max > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > This e-mail and any attachments are confidential and intended solely for > the addressee and may also be privileged or exempt from disclosure under > applicable law. If you are not the addressee, or have received this e-mail > in error, please notify the sender immediately, delete it from your system > and do not copy, disclose or otherwise act upon any part of this e-mail or > its attachments. > > Internet communications are not guaranteed to be secure or virus-free. > The Barclays Group does not accept responsibility for any loss arising from > unauthorised access to, or interference with, any Internet communications by > any third party, or from the transmission of any viruses. Replies to this > e-mail may be monitored by the Barclays Group for operational or business > reasons. > > Any opinion or other information in this e-mail or its attachments that > does not relate to the business of the Barclays Group is personal to the > sender and is not given or endorsed by the Barclays Group. > > Barclays Bank PLC.Registered in England and Wales (registered no. 1026167). > Registered Office: 1 Churchill Place, London, E14 5HP, United Kingdom. > > Barclays Bank PLC is authorised and regulated by the Financial Services > Authority. > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From denis at sherman.org.uk Thu Sep 18 04:17:40 2008 From: denis at sherman.org.uk (DenisSherman) Date: Thu, 18 Sep 2008 10:17:40 +0100 Subject: [AccessD] Report Grouping for Financial Years In-Reply-To: References: Message-ID: Aha! I didn't know you could do that. Thanks Gustav. As you will see from my reply to Roz, I have now sorted it.Thanks very much for the input. Learn something every day! Max On Thu, Sep 18, 2008 at 10:09 AM, Gustav Brock wrote: > Hi Max > > - in the small box, Sorting and Grouping. Insert that line as the > expression. > > /gustav > > >>> denis at sherman.org.uk 18-09-2008 10:54 >>> > Thanks Gustav,I can't quite get my head around how I put this into the > Grouping options in the Report. The income records extend back over a few > years and I need to report on how much income each fundraiser has generated > by financial year. > > Thanks > Max > > > On Thu, Sep 18, 2008 at 9:36 AM, Gustav Brock wrote: > > > Hi Max > > > > You can group by the financial year: > > > > =Year(DateAdd("m", -3, [YourDate])) > > > > /gustav > > > > >>> max.wanadoo at gmail.com 18-09-2008 10:21 >>> > > Hi,I am trying to create a report based on Financial Years grouping. The > > default grouping gives Calendar Years. > > Is there anyway I can group by Financial Years (1 April to 31st March). > > Thanks > > Max > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From Chester_Kaup at kindermorgan.com Thu Sep 18 12:17:19 2008 From: Chester_Kaup at kindermorgan.com (Kaup, Chester) Date: Thu, 18 Sep 2008 12:17:19 -0500 Subject: [AccessD] Comparing Tables In-Reply-To: References: <0B2BF8524B73A248A2F1B81BA751ED3C0A492C96@houex1.kindermorgan.com> Message-ID: <0B2BF8524B73A248A2F1B81BA751ED3C0BBD6782@houex1.kindermorgan.com> Worked great . Thanks. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mark A Matte Sent: Tuesday, September 16, 2008 2:34 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Comparing Tables How about just an IIF statement...if you are only trying to differentiate between in 1 table...and not the other. ******************* SELECT tblMasterWell.ID, IIf(IsNull([tblAutoEQ].[ID])=True,"M","A") AS Type FROM tblMasterWell LEFT JOIN tblAutoEQ ON tblMasterWell.ID = tblAutoEQ.ID; ******************* Good luck, Mark A. Matte > From: Chester_Kaup at kindermorgan.com > To: accessd at databaseadvisors.com > Date: Tue, 16 Sep 2008 14:09:16 -0500 > Subject: [AccessD] Comparing Tables > > I have two tables. The first table contains a master list of wells. The second table contains a list of wells with automated test equipment. Only some of the wells are automated. I need to generate a list of all the wells with a flag field with a value of "A" if the well is automated and a value of "M" if it is not. I can probably do this with an unmatched query giving me a list of the manual wells and then another query to combine the second table and the results of this query but was looking for any ideas of 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. > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com _________________________________________________________________ Get more out of the Web. Learn 10 hidden secrets of Windows Live. http://windowslive.com/connect/post/jamiethomson.spaces.live.com-Blog-cns!550F681DAD532637!5295.entry?ocid=TXT_TAGLM_WL_domore_092008 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From dwaters at usinternet.com Thu Sep 18 13:52:30 2008 From: dwaters at usinternet.com (Dan Waters) Date: Thu, 18 Sep 2008 13:52:30 -0500 Subject: [AccessD] Access and Outlook Message-ID: If I use docmd.sendobject in Access, closing the email creates a 2501 error I can trap for. When Access uses Outlook code to send an email, if the user closes the email without sending it, there is nothing coming back to Access to know that the email was closed instead of sent. I need to use Outlook code to send an email with multiple attachments, and I want to know if the email was actually sent. How can I do that? Thanks! Dan From andy at minstersystems.co.uk Thu Sep 18 15:07:14 2008 From: andy at minstersystems.co.uk (Andy Lacey) Date: Thu, 18 Sep 2008 21:07:14 +0100 Subject: [AccessD] Access and Outlook In-Reply-To: Message-ID: Dan, if you set the editmessage param to False it will just go without the user being able to close it. -- Andy Lacey http://www.minstersystems.co.uk >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Dan Waters >Sent: 18 September 2008 19:53 >To: 'Access Developers discussion and problem solving' >Subject: [AccessD] Access and Outlook > > >If I use docmd.sendobject in Access, closing the email creates >a 2501 error I can trap for. > >When Access uses Outlook code to send an email, if the user >closes the email without sending it, there is nothing coming >back to Access to know that the email was closed instead of sent. > >I need to use Outlook code to send an email with multiple >attachments, and I want to know if the email was actually sent. > >How can I do that? > >Thanks! >Dan > > > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com > From dwaters at usinternet.com Thu Sep 18 15:30:52 2008 From: dwaters at usinternet.com (Dan Waters) Date: Thu, 18 Sep 2008 15:30:52 -0500 Subject: [AccessD] Access and Outlook In-Reply-To: References: Message-ID: <2DC0204A9F964A02AF0206FC6CB329C4@danwaters> In this case the user needs to review what's attached and may add/remove recipients before sending. Thanks! Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Andy Lacey Sent: Thursday, September 18, 2008 3:07 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access and Outlook Dan, if you set the editmessage param to False it will just go without the user being able to close it. -- Andy Lacey http://www.minstersystems.co.uk >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Dan Waters >Sent: 18 September 2008 19:53 >To: 'Access Developers discussion and problem solving' >Subject: [AccessD] Access and Outlook > > >If I use docmd.sendobject in Access, closing the email creates >a 2501 error I can trap for. > >When Access uses Outlook code to send an email, if the user >closes the email without sending it, there is nothing coming >back to Access to know that the email was closed instead of sent. > >I need to use Outlook code to send an email with multiple >attachments, and I want to know if the email was actually sent. > >How can I do that? > >Thanks! >Dan > > > > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/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 denis at sherman.org.uk Thu Sep 18 15:37:17 2008 From: denis at sherman.org.uk (DenisSherman) Date: Thu, 18 Sep 2008 21:37:17 +0100 Subject: [AccessD] Access and Outlook In-Reply-To: References: Message-ID: ...and further to what Andy just said. If you do a BCC to yourself (or a holding email address), you can then confirm that it actually went because the holding email will receive a copy. You can then write code to check Outlook for this email and update flags etc based on its arrival - but that is another story. Max On Thu, Sep 18, 2008 at 9:07 PM, Andy Lacey wrote: > Dan, if you set the editmessage param to False it will just go without the > user being able to close it. > > -- Andy Lacey > http://www.minstersystems.co.uk > > >-----Original Message----- > >From: accessd-bounces at databaseadvisors.com > >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Dan Waters > >Sent: 18 September 2008 19:53 > >To: 'Access Developers discussion and problem solving' > >Subject: [AccessD] Access and Outlook > > > > > >If I use docmd.sendobject in Access, closing the email creates > >a 2501 error I can trap for. > > > >When Access uses Outlook code to send an email, if the user > >closes the email without sending it, there is nothing coming > >back to Access to know that the email was closed instead of sent. > > > >I need to use Outlook code to send an email with multiple > >attachments, and I want to know if the email was actually sent. > > > >How can I do that? > > > >Thanks! > >Dan > > > > > > > > > >-- > >AccessD mailing list > >AccessD at databaseadvisors.com > >http://databaseadvisors.com/mailman/listinfo/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 rusty.hammond at cpiqpc.com Thu Sep 18 16:06:51 2008 From: rusty.hammond at cpiqpc.com (rusty.hammond at cpiqpc.com) Date: Thu, 18 Sep 2008 16:06:51 -0500 Subject: [AccessD] Access and Outlook Message-ID: <49A286ABF515E94A8505CD14DEB72170018756F5@CPIEMAIL-EVS1.CPIQPC.NET> Instead of checking another mailbox,could the Sent Items folder be checked? -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of DenisSherman Sent: Thursday, September 18, 2008 3:37 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access and Outlook ...and further to what Andy just said. If you do a BCC to yourself (or a holding email address), you can then confirm that it actually went because the holding email will receive a copy. You can then write code to check Outlook for this email and update flags etc based on its arrival - but that is another story. Max On Thu, Sep 18, 2008 at 9:07 PM, Andy Lacey wrote: > Dan, if you set the editmessage param to False it will just go without the > user being able to close it. > > -- Andy Lacey > http://www.minstersystems.co.uk > > >-----Original Message----- > >From: accessd-bounces at databaseadvisors.com > >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Dan Waters > >Sent: 18 September 2008 19:53 > >To: 'Access Developers discussion and problem solving' > >Subject: [AccessD] Access and Outlook > > > > > >If I use docmd.sendobject in Access, closing the email creates > >a 2501 error I can trap for. > > > >When Access uses Outlook code to send an email, if the user > >closes the email without sending it, there is nothing coming > >back to Access to know that the email was closed instead of sent. > > > >I need to use Outlook code to send an email with multiple > >attachments, and I want to know if the email was actually sent. > > > >How can I do that? > > > >Thanks! > >Dan > > > > > > > > > >-- > >AccessD mailing list > >AccessD at databaseadvisors.com > >http://databaseadvisors.com/mailman/listinfo/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 ********************************************************************** 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 steve at goodhall.info Thu Sep 18 17:56:12 2008 From: steve at goodhall.info (Steve Goodhall) Date: Thu, 18 Sep 2008 18:56:12 -0400 Subject: [AccessD] Access and Outlook In-Reply-To: <49A286ABF515E94A8505CD14DEB72170018756F5@CPIEMAIL-EVS1.CPIQPC.NET> Message-ID: <737C2536B5184C47BDF2CA7495584AE5@StevenAcer> It would not be as definitive. Outlook puts things in the Sent Messages box once it has sent them to the POP server. If they get blocked there, say by an improper relay, you might not notice. Regards, Steve Goodhall, PMP 248-505-5204 mobile -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of rusty.hammond at cpiqpc.com Sent: Thursday, September 18, 2008 5:07 PM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Access and Outlook Instead of checking another mailbox,could the Sent Items folder be checked? -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of DenisSherman Sent: Thursday, September 18, 2008 3:37 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access and Outlook ...and further to what Andy just said. If you do a BCC to yourself (or a holding email address), you can then confirm that it actually went because the holding email will receive a copy. You can then write code to check Outlook for this email and update flags etc based on its arrival - but that is another story. Max On Thu, Sep 18, 2008 at 9:07 PM, Andy Lacey wrote: > Dan, if you set the editmessage param to False it will just go without the > user being able to close it. > > -- Andy Lacey > http://www.minstersystems.co.uk > > >-----Original Message----- > >From: accessd-bounces at databaseadvisors.com > >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Dan Waters > >Sent: 18 September 2008 19:53 > >To: 'Access Developers discussion and problem solving' > >Subject: [AccessD] Access and Outlook > > > > > >If I use docmd.sendobject in Access, closing the email creates > >a 2501 error I can trap for. > > > >When Access uses Outlook code to send an email, if the user > >closes the email without sending it, there is nothing coming > >back to Access to know that the email was closed instead of sent. > > > >I need to use Outlook code to send an email with multiple > >attachments, and I want to know if the email was actually sent. > > > >How can I do that? > > > >Thanks! > >Dan > > > > > > > > > >-- > >AccessD mailing list > >AccessD at databaseadvisors.com > >http://databaseadvisors.com/mailman/listinfo/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 ********************************************************************** 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. ********************************************************************** -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jimdettman at verizon.net Fri Sep 19 12:12:05 2008 From: jimdettman at verizon.net (Jim Dettman) Date: Fri, 19 Sep 2008 13:12:05 -0400 Subject: [AccessD] CDO/Priority flag. Message-ID: <97C89F39C3ED4FBBB59C10F661DA20E8@XPS> All, This seems like it should be simple, and yet an internet search turns up a variety of answers, none of which seems to work. I've never worked with CDO before, but have instead preferred to use vbSendMail, but I have a client that wants to go with CDO as that's what is being used with the rest of the apps they already have. This is a simple "send an e-mail" based on a table utility. Two things don't seem to be working right; multiple recipients and setting a priority flag. For the multiple recipients, I'm using a semi-colon delimited list. For the priority flag, I've tried it as part of the configuration setting and as a change to the message fields (I get an error with this method about being disconnect from the client and Access then hangs at exit). Can't believe I've spent the amount of time I have on something that should be so simple. Anyone got any insight on this? Code is below. Jim. Public Sub DoEmailTask(strTaskName As String) Dim db As DAO.Database Dim rst As DAO.Recordset Dim strSQL As String Dim strMsg As String Dim objMessage As Object On Error GoTo DoEmailTask_Error Set db = CurrentDb() strSQL = "SELECT * FROM tblEmailTasks WHERE [EmailTaskName] = '" & strTaskName & "'" Set rst = db.OpenRecordset(strSQL) If rst.RecordCount = 0 Then ' Task name not in table strMsg = "Mail task name '" & strTaskName & "' was not found in tblEmailTasks." MsgBox strMsg, vbCritical + vbOKOnly, "Invalid e-mail task name" Else With rst ' Send the e-mail Set objMessage = CreateObject("CDO.Message") ' Don't rely on configuration settting on client objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/sendusing") = !SendUsing objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/smtpserver") = !SMTPServer objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/smtpauthenticate") = !SMTPAuthenticate objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/sendusername") = !SendUserName objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/sendpassword") = !SendUserPassword objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/sendusing") = !SendUsing objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/smtpserverport") = !SMTPPort objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/smtpusessl") = !UseSSL objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/smtpconnectiontimeout") = !ConnectTimeout 'objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/conf iguration/priority") = !priority objMessage.Configuration.Fields.Item("urn:schemas:mailheader:X-MSMail-Priori ty") = 0 objMessage.Configuration.Fields.Update Stop objMessage.From = !From objMessage.To = !To objMessage.CC = !CC objMessage.BCC = !BCC objMessage.Subject = !Subject objMessage.TextBody = !Message objMessage.Send End With End If DoEmailTask_Exit: Set objMessage = Nothing If Not rst Is Nothing Then rst.Close Set rst = Nothing End If Set db = Nothing Exit Sub DoEmailTask_Error: Resume DoEmailTask_Exit End Sub From Gustav at cactus.dk Fri Sep 19 15:00:59 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 19 Sep 2008 22:00:59 +0200 Subject: [AccessD] CDO/Priority flag. Message-ID: Hi Jim Which values are you passing to Priority? Some are for Outlook, some for normal mail clients: http://classicasp.aspfaq.com/email/how-do-i-alter-the-priority/importance-of-an-e-mail-message.html /gustav >>> jimdettman at verizon.net 19-09-2008 19:12 >>> All, This seems like it should be simple, and yet an internet search turns up a variety of answers, none of which seems to work. I've never worked with CDO before, but have instead preferred to use vbSendMail, but I have a client that wants to go with CDO as that's what is being used with the rest of the apps they already have. This is a simple "send an e-mail" based on a table utility. Two things don't seem to be working right; multiple recipients and setting a priority flag. For the multiple recipients, I'm using a semi-colon delimited list. For the priority flag, I've tried it as part of the configuration setting and as a change to the message fields (I get an error with this method about being disconnect from the client and Access then hangs at exit). Can't believe I've spent the amount of time I have on something that should be so simple. Anyone got any insight on this? Code is below. Jim. Public Sub DoEmailTask(strTaskName As String) Dim db As DAO.Database Dim rst As DAO.Recordset Dim strSQL As String Dim strMsg As String Dim objMessage As Object On Error GoTo DoEmailTask_Error Set db = CurrentDb() strSQL = "SELECT * FROM tblEmailTasks WHERE [EmailTaskName] = '" & strTaskName & "'" Set rst = db.OpenRecordset(strSQL) If rst.RecordCount = 0 Then ' Task name not in table strMsg = "Mail task name '" & strTaskName & "' was not found in tblEmailTasks." MsgBox strMsg, vbCritical + vbOKOnly, "Invalid e-mail task name" Else With rst ' Send the e-mail Set objMessage = CreateObject("CDO.Message") ' Don't rely on configuration settting on client objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/sendusing") = !SendUsing objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/smtpserver") = !SMTPServer objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/smtpauthenticate") = !SMTPAuthenticate objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/sendusername") = !SendUserName objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/sendpassword") = !SendUserPassword objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/sendusing") = !SendUsing objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/smtpserverport") = !SMTPPort objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/smtpusessl") = !UseSSL objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/smtpconnectiontimeout") = !ConnectTimeout 'objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/conf iguration/priority") = !priority objMessage.Configuration.Fields.Item("urn:schemas:mailheader:X-MSMail-Priori ty") = 0 objMessage.Configuration.Fields.Update Stop objMessage.From = !From objMessage.To = !To objMessage.CC = !CC objMessage.BCC = !BCC objMessage.Subject = !Subject objMessage.TextBody = !Message objMessage.Send End With End If DoEmailTask_Exit: Set objMessage = Nothing If Not rst Is Nothing Then rst.Close Set rst = Nothing End If Set db = Nothing Exit Sub DoEmailTask_Error: Resume DoEmailTask_Exit End Sub From joeo at appoli.com Fri Sep 19 22:20:04 2008 From: joeo at appoli.com (Joe O'Connell) Date: Fri, 19 Sep 2008 23:20:04 -0400 Subject: [AccessD] CDO/Priority flag. In-Reply-To: <97C89F39C3ED4FBBB59C10F661DA20E8@XPS> References: <97C89F39C3ED4FBBB59C10F661DA20E8@XPS> Message-ID: Jim, Try putting a space after the semi-colon for multiple recipients. Joe O'Connell -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Dettman Sent: Friday, September 19, 2008 1:12 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] CDO/Priority flag. All, This seems like it should be simple, and yet an internet search turns up a variety of answers, none of which seems to work. I've never worked with CDO before, but have instead preferred to use vbSendMail, but I have a client that wants to go with CDO as that's what is being used with the rest of the apps they already have. This is a simple "send an e-mail" based on a table utility. Two things don't seem to be working right; multiple recipients and setting a priority flag. For the multiple recipients, I'm using a semi-colon delimited list. For the priority flag, I've tried it as part of the configuration setting and as a change to the message fields (I get an error with this method about being disconnect from the client and Access then hangs at exit). Can't believe I've spent the amount of time I have on something that should be so simple. Anyone got any insight on this? Code is below. Jim. Public Sub DoEmailTask(strTaskName As String) Dim db As DAO.Database Dim rst As DAO.Recordset Dim strSQL As String Dim strMsg As String Dim objMessage As Object On Error GoTo DoEmailTask_Error Set db = CurrentDb() strSQL = "SELECT * FROM tblEmailTasks WHERE [EmailTaskName] = '" & strTaskName & "'" Set rst = db.OpenRecordset(strSQL) If rst.RecordCount = 0 Then ' Task name not in table strMsg = "Mail task name '" & strTaskName & "' was not found in tblEmailTasks." MsgBox strMsg, vbCritical + vbOKOnly, "Invalid e-mail task name" Else With rst ' Send the e-mail Set objMessage = CreateObject("CDO.Message") ' Don't rely on configuration settting on client objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/sendusing") = !SendUsing objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/smtpserver") = !SMTPServer objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/smtpauthenticate") = !SMTPAuthenticate objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/sendusername") = !SendUserName objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/sendpassword") = !SendUserPassword objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/sendusing") = !SendUsing objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/smtpserverport") = !SMTPPort objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/smtpusessl") = !UseSSL objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/smtpconnectiontimeout") = !ConnectTimeout 'objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/ conf iguration/priority") = !priority objMessage.Configuration.Fields.Item("urn:schemas:mailheader:X-MSMail-Pr iori ty") = 0 objMessage.Configuration.Fields.Update Stop objMessage.From = !From objMessage.To = !To objMessage.CC = !CC objMessage.BCC = !BCC objMessage.Subject = !Subject objMessage.TextBody = !Message objMessage.Send End With End If DoEmailTask_Exit: Set objMessage = Nothing If Not rst Is Nothing Then rst.Close Set rst = Nothing End If Set db = Nothing Exit Sub DoEmailTask_Error: Resume DoEmailTask_Exit End Sub -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From rockysmolin at bchacc.com Sat Sep 20 18:53:46 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Sat, 20 Sep 2008 16:53:46 -0700 Subject: [AccessD] (In)security - A2K7 or Vista? Message-ID: <00d101c91b7c$1ef35d10$0201a8c0@HAL9005> Dear List: I am developing a legal app for my client which he is going to make into a commercial product. He has his first beta test site. Beta site is using Access 2007 on a Vista machine. My client uses A2K7 on an XP machine and runs Access 2007 with Vista (SP1) on his home machine, although I am developing the app in 2003. The app works on both of client's machines. On Beta's machine when he tries to start the app he gets a message that the app is being blocked on his computer because it comes from another potentially unsafe computer. He clicks unblock but still gets the same thing. I don't know if this is coming from Access or Vista, but I suspect Vista. My client suggested to beta that he load SP1 for Vista and Beta responded that he did install SP1 and it screwed up his scanner but didn't help with getting the Access app started. So client sent this procedure to Beta: 1) Open Access 2007 and click Options. 2) Go to Trust Center and click Trust Center Settings 3) On macro settings make sure Enable all macros is selected and click OK. Beta responds that after this he still has the problem. I think this message may be coming from Vista. Is anyone familiar with this situation and have a solution? MTIA, Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com From bheid at sc.rr.com Sat Sep 20 21:12:12 2008 From: bheid at sc.rr.com (Bobby Heid) Date: Sat, 20 Sep 2008 22:12:12 -0400 Subject: [AccessD] (In)security - A2K7 or Vista? In-Reply-To: <00d101c91b7c$1ef35d10$0201a8c0@HAL9005> References: <00d101c91b7c$1ef35d10$0201a8c0@HAL9005> Message-ID: <000f01c91b8f$763b4980$62b1dc80$@rr.com> I think that you have to sign your code using a certificate. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Saturday, September 20, 2008 7:54 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] (In)security - A2K7 or Vista? Dear List: I am developing a legal app for my client which he is going to make into a commercial product. He has his first beta test site. Beta site is using Access 2007 on a Vista machine. My client uses A2K7 on an XP machine and runs Access 2007 with Vista (SP1) on his home machine, although I am developing the app in 2003. The app works on both of client's machines. On Beta's machine when he tries to start the app he gets a message that the app is being blocked on his computer because it comes from another potentially unsafe computer. He clicks unblock but still gets the same thing. I don't know if this is coming from Access or Vista, but I suspect Vista. My client suggested to beta that he load SP1 for Vista and Beta responded that he did install SP1 and it screwed up his scanner but didn't help with getting the Access app started. So client sent this procedure to Beta: 1) Open Access 2007 and click Options. 2) Go to Trust Center and click Trust Center Settings 3) On macro settings make sure Enable all macros is selected and click OK. Beta responds that after this he still has the problem. I think this message may be coming from Vista. Is anyone familiar with this situation and have a solution? MTIA, Rocky Smolin From rockysmolin at bchacc.com Sat Sep 20 22:04:21 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Sat, 20 Sep 2008 20:04:21 -0700 Subject: [AccessD] (In)security - A2K7 or Vista? In-Reply-To: <000f01c91b8f$763b4980$62b1dc80$@rr.com> References: <00d101c91b7c$1ef35d10$0201a8c0@HAL9005> <000f01c91b8f$763b4980$62b1dc80$@rr.com> Message-ID: <00dc01c91b96$bedf4f40$0201a8c0@HAL9005> Piece of cake. Wait a minute... Where do I sign? And what is this "certificate" of which you speak? Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Saturday, September 20, 2008 7:12 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] (In)security - A2K7 or Vista? I think that you have to sign your code using a certificate. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Saturday, September 20, 2008 7:54 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] (In)security - A2K7 or Vista? Dear List: I am developing a legal app for my client which he is going to make into a commercial product. He has his first beta test site. Beta site is using Access 2007 on a Vista machine. My client uses A2K7 on an XP machine and runs Access 2007 with Vista (SP1) on his home machine, although I am developing the app in 2003. The app works on both of client's machines. On Beta's machine when he tries to start the app he gets a message that the app is being blocked on his computer because it comes from another potentially unsafe computer. He clicks unblock but still gets the same thing. I don't know if this is coming from Access or Vista, but I suspect Vista. My client suggested to beta that he load SP1 for Vista and Beta responded that he did install SP1 and it screwed up his scanner but didn't help with getting the Access app started. So client sent this procedure to Beta: 1) Open Access 2007 and click Options. 2) Go to Trust Center and click Trust Center Settings 3) On macro settings make sure Enable all macros is selected and click OK. Beta responds that after this he still has the problem. I think this message may be coming from Vista. Is anyone familiar with this situation and have a solution? MTIA, Rocky Smolin -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Sun Sep 21 05:20:15 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Sun, 21 Sep 2008 12:20:15 +0200 Subject: [AccessD] (In)security - A2K7 or Vista? Message-ID: Hi Rocky Don't know about A2007 but if you wish to digitally sign your A2003 code, here is how: http://msdn2.microsoft.com/en-us/library/aa167281(office.11).aspx If selfcertification is not enough, you can obtain a free certificate here at CAcert: http://www.cacert.org/ /gustav >>> rockysmolin at bchacc.com 21-09-2008 05:04 >>> Piece of cake. Wait a minute... Where do I sign? And what is this "certificate" of which you speak? Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Saturday, September 20, 2008 7:12 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] (In)security - A2K7 or Vista? I think that you have to sign your code using a certificate. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Saturday, September 20, 2008 7:54 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] (In)security - A2K7 or Vista? Dear List: I am developing a legal app for my client which he is going to make into a commercial product. He has his first beta test site. Beta site is using Access 2007 on a Vista machine. My client uses A2K7 on an XP machine and runs Access 2007 with Vista (SP1) on his home machine, although I am developing the app in 2003. The app works on both of client's machines. On Beta's machine when he tries to start the app he gets a message that the app is being blocked on his computer because it comes from another potentially unsafe computer. He clicks unblock but still gets the same thing. I don't know if this is coming from Access or Vista, but I suspect Vista. My client suggested to beta that he load SP1 for Vista and Beta responded that he did install SP1 and it screwed up his scanner but didn't help with getting the Access app started. So client sent this procedure to Beta: 1) Open Access 2007 and click Options. 2) Go to Trust Center and click Trust Center Settings 3) On macro settings make sure Enable all macros is selected and click OK. Beta responds that after this he still has the problem. I think this message may be coming from Vista. Is anyone familiar with this situation and have a solution? MTIA, Rocky Smolin From rockysmolin at bchacc.com Sun Sep 21 07:11:33 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Sun, 21 Sep 2008 05:11:33 -0700 Subject: [AccessD] (In)security - A2K7 or Vista? In-Reply-To: References: Message-ID: <000301c91be3$301ec9a0$0201a8c0@HAL9005> Gustav: Thanks. I'll check it out. Do you think from my description of what's going on that this is the problem/solution? Best, Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Sunday, September 21, 2008 3:20 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] (In)security - A2K7 or Vista? Hi Rocky Don't know about A2007 but if you wish to digitally sign your A2003 code, here is how: http://msdn2.microsoft.com/en-us/library/aa167281(office.11).aspx If selfcertification is not enough, you can obtain a free certificate here at CAcert: http://www.cacert.org/ /gustav >>> rockysmolin at bchacc.com 21-09-2008 05:04 >>> Piece of cake. Wait a minute... Where do I sign? And what is this "certificate" of which you speak? Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Saturday, September 20, 2008 7:12 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] (In)security - A2K7 or Vista? I think that you have to sign your code using a certificate. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Saturday, September 20, 2008 7:54 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] (In)security - A2K7 or Vista? Dear List: I am developing a legal app for my client which he is going to make into a commercial product. He has his first beta test site. Beta site is using Access 2007 on a Vista machine. My client uses A2K7 on an XP machine and runs Access 2007 with Vista (SP1) on his home machine, although I am developing the app in 2003. The app works on both of client's machines. On Beta's machine when he tries to start the app he gets a message that the app is being blocked on his computer because it comes from another potentially unsafe computer. He clicks unblock but still gets the same thing. I don't know if this is coming from Access or Vista, but I suspect Vista. My client suggested to beta that he load SP1 for Vista and Beta responded that he did install SP1 and it screwed up his scanner but didn't help with getting the Access app started. So client sent this procedure to Beta: 1) Open Access 2007 and click Options. 2) Go to Trust Center and click Trust Center Settings 3) On macro settings make sure Enable all macros is selected and click OK. Beta responds that after this he still has the problem. I think this message may be coming from Vista. Is anyone familiar with this situation and have a solution? MTIA, Rocky Smolin -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From iggy at nanaimo.ark.com Sat Sep 20 12:08:43 2008 From: iggy at nanaimo.ark.com (Tony Septav) Date: Sat, 20 Sep 2008 10:08:43 -0700 Subject: [AccessD] (In)security - A2K7 or Vista? In-Reply-To: <00d101c91b7c$1ef35d10$0201a8c0@HAL9005> References: <00d101c91b7c$1ef35d10$0201a8c0@HAL9005> Message-ID: <48D52E1B.2030308@nanaimo.ark.com> Hey Rocky Is this a different warning from the Macro security warning??? Rocky Smolin at Beach Access Software wrote: >Dear List: > >I am developing a legal app for my client which he is going to make into a >commercial product. He has his first beta test site. Beta site is using >Access 2007 on a Vista machine. My client uses A2K7 on an XP machine and >runs Access 2007 with Vista (SP1) on his home machine, although I am >developing the app in 2003. The app works on both of client's machines. > >On Beta's machine when he tries to start the app he gets a message that the >app is being blocked on his computer because it comes from another >potentially unsafe computer. He clicks unblock but still gets the same >thing. I don't know if this is coming from Access or Vista, but I suspect >Vista. > >My client suggested to beta that he load SP1 for Vista and Beta responded >that he did install SP1 and it screwed up his scanner but didn't help with >getting the Access app started. > >So client sent this procedure to Beta: > >1) Open Access 2007 and click Options. >2) Go to Trust Center and click Trust Center Settings >3) On macro settings make sure Enable all macros is selected and click OK. > >Beta responds that after this he still has the problem. > >I think this message may be coming from Vista. Is anyone familiar with this >situation and have a solution? > >MTIA, > > >Rocky Smolin > >Beach Access Software > >858-259-4334 > >www.e-z-mrp.com > >www.bchacc.com > > > > > > > > > > > > > > > > > > >Rocky Smolin > >Beach Access Software > >858-259-4334 > >www.e-z-mrp.com > >www.bchacc.com > > > > > > > > From rockysmolin at bchacc.com Sun Sep 21 09:23:00 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Sun, 21 Sep 2008 07:23:00 -0700 Subject: [AccessD] (In)security - A2K7 or Vista? In-Reply-To: <48D52E1B.2030308@nanaimo.ark.com> References: <00d101c91b7c$1ef35d10$0201a8c0@HAL9005> <48D52E1B.2030308@nanaimo.ark.com> Message-ID: <001a01c91bf5$8d616e80$0201a8c0@HAL9005> I believe so. Although all I have to go on are the screen shots my client sent me. Not sure if this is coming from Vista or Access 2007. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Tony Septav Sent: Saturday, September 20, 2008 10:09 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] (In)security - A2K7 or Vista? Hey Rocky Is this a different warning from the Macro security warning??? Rocky Smolin at Beach Access Software wrote: >Dear List: > >I am developing a legal app for my client which he is going to make >into a commercial product. He has his first beta test site. Beta site >is using Access 2007 on a Vista machine. My client uses A2K7 on an XP >machine and runs Access 2007 with Vista (SP1) on his home machine, >although I am developing the app in 2003. The app works on both of client's machines. > >On Beta's machine when he tries to start the app he gets a message that >the app is being blocked on his computer because it comes from another >potentially unsafe computer. He clicks unblock but still gets the same >thing. I don't know if this is coming from Access or Vista, but I >suspect Vista. > >My client suggested to beta that he load SP1 for Vista and Beta >responded that he did install SP1 and it screwed up his scanner but >didn't help with getting the Access app started. > >So client sent this procedure to Beta: > >1) Open Access 2007 and click Options. >2) Go to Trust Center and click Trust Center Settings >3) On macro settings make sure Enable all macros is selected and click OK. > >Beta responds that after this he still has the problem. > >I think this message may be coming from Vista. Is anyone familiar with >this situation and have a solution? > >MTIA, > > >Rocky Smolin > >Beach Access Software > >858-259-4334 > >www.e-z-mrp.com > >www.bchacc.com > > > > > > > > > > > > > > > > > > >Rocky Smolin > >Beach Access Software > >858-259-4334 > >www.e-z-mrp.com > >www.bchacc.com > > > > > > > > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Sun Sep 21 09:42:04 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Sun, 21 Sep 2008 16:42:04 +0200 Subject: [AccessD] (In)security - A2K7 or Vista? Message-ID: Hi Rocky Sounds more like an IE warning ... More stuff here: http://office.microsoft.com/download/afile.aspx?AssetID=AM102424861033 /gustav >>> rockysmolin at bchacc.com 21-09-2008 14:11 >>> Gustav: Thanks. I'll check it out. Do you think from my description of what's going on that this is the problem/solution? Best, Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Sunday, September 21, 2008 3:20 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] (In)security - A2K7 or Vista? Hi Rocky Don't know about A2007 but if you wish to digitally sign your A2003 code, here is how: http://msdn2.microsoft.com/en-us/library/aa167281(office.11).aspx If selfcertification is not enough, you can obtain a free certificate here at CAcert: http://www.cacert.org/ /gustav >>> rockysmolin at bchacc.com 21-09-2008 05:04 >>> Piece of cake. Wait a minute... Where do I sign? And what is this "certificate" of which you speak? Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Bobby Heid Sent: Saturday, September 20, 2008 7:12 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] (In)security - A2K7 or Vista? I think that you have to sign your code using a certificate. Bobby -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Saturday, September 20, 2008 7:54 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] (In)security - A2K7 or Vista? Dear List: I am developing a legal app for my client which he is going to make into a commercial product. He has his first beta test site. Beta site is using Access 2007 on a Vista machine. My client uses A2K7 on an XP machine and runs Access 2007 with Vista (SP1) on his home machine, although I am developing the app in 2003. The app works on both of client's machines. On Beta's machine when he tries to start the app he gets a message that the app is being blocked on his computer because it comes from another potentially unsafe computer. He clicks unblock but still gets the same thing. I don't know if this is coming from Access or Vista, but I suspect Vista. My client suggested to beta that he load SP1 for Vista and Beta responded that he did install SP1 and it screwed up his scanner but didn't help with getting the Access app started. So client sent this procedure to Beta: 1) Open Access 2007 and click Options. 2) Go to Trust Center and click Trust Center Settings 3) On macro settings make sure Enable all macros is selected and click OK. Beta responds that after this he still has the problem. I think this message may be coming from Vista. Is anyone familiar with this situation and have a solution? MTIA, Rocky Smolin From iggy at nanaimo.ark.com Sun Sep 21 10:27:50 2008 From: iggy at nanaimo.ark.com (Tony Septav) Date: Sun, 21 Sep 2008 08:27:50 -0700 Subject: [AccessD] (In)security - A2K7 or Vista? In-Reply-To: <001a01c91bf5$8d616e80$0201a8c0@HAL9005> References: <00d101c91b7c$1ef35d10$0201a8c0@HAL9005> <48D52E1B.2030308@nanaimo.ark.com> <001a01c91bf5$8d616e80$0201a8c0@HAL9005> Message-ID: <48D667F6.7030601@nanaimo.ark.com> Hey Rocky I think Gustav may be on the right track. Usually you get the macro security warnings if the user doesn't have Access on his machine or they have their Access macro security set to high or medium. Rocky Smolin at Beach Access Software wrote: >I believe so. Although all I have to go on are the screen shots my client >sent me. Not sure if this is coming from Vista or Access 2007. > > >Rocky Smolin >Beach Access Software >858-259-4334 >www.e-z-mrp.com >www.bchacc.com > > > >-----Original Message----- >From: accessd-bounces at databaseadvisors.com >[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Tony Septav >Sent: Saturday, September 20, 2008 10:09 AM >To: Access Developers discussion and problem solving >Subject: Re: [AccessD] (In)security - A2K7 or Vista? > >Hey Rocky >Is this a different warning from the Macro security warning??? > >Rocky Smolin at Beach Access Software wrote: > > > >>Dear List: >> >>I am developing a legal app for my client which he is going to make >>into a commercial product. He has his first beta test site. Beta site >>is using Access 2007 on a Vista machine. My client uses A2K7 on an XP >>machine and runs Access 2007 with Vista (SP1) on his home machine, >>although I am developing the app in 2003. The app works on both of >> >> >client's machines. > > >>On Beta's machine when he tries to start the app he gets a message that >>the app is being blocked on his computer because it comes from another >>potentially unsafe computer. He clicks unblock but still gets the same >>thing. I don't know if this is coming from Access or Vista, but I >>suspect Vista. >> >>My client suggested to beta that he load SP1 for Vista and Beta >>responded that he did install SP1 and it screwed up his scanner but >>didn't help with getting the Access app started. >> >>So client sent this procedure to Beta: >> >>1) Open Access 2007 and click Options. >>2) Go to Trust Center and click Trust Center Settings >>3) On macro settings make sure Enable all macros is selected and click OK. >> >>Beta responds that after this he still has the problem. >> >>I think this message may be coming from Vista. Is anyone familiar with >>this situation and have a solution? >> >>MTIA, >> >> >>Rocky Smolin >> >>Beach Access Software >> >>858-259-4334 >> >>www.e-z-mrp.com >> >>www.bchacc.com >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >>Rocky Smolin >> >>Beach Access Software >> >>858-259-4334 >> >>www.e-z-mrp.com >> >>www.bchacc.com >> >> >> >> >> >> >> >> >> >> > >-- >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com > > > From shamil at smsconsulting.spb.ru Sun Sep 21 13:58:34 2008 From: shamil at smsconsulting.spb.ru (Shamil Salakhetdinov) Date: Sun, 21 Sep 2008 22:58:34 +0400 Subject: [AccessD] OT: Weekend, technology OT: Microsoft Surface Computing.... Message-ID: <000401c91c1c$0d592da0$6401a8c0@nant> Hi All, Have you seen/are you all talking there about this amazing "thick" technology from MS: http://www.popularmechanics.com/technology/industry/4217348.html http://www.microsoft.com/presspass/press/2007/may07/05-29mssurfacepr.mspx I did write "thick" because this really amazing (I will not get tired to repeat that - I think I was never that excited about new technology) - this "coffee-table computer" is still rather thick (or tall) - 50 cm(?) tall and expensive - 5,000-10,000USD? Are there any rumors there when it will become thin and inexpensive enough to be broadly used in usual office work? - But the latter promise to be so unusual if that piece of technologies ever reaches it - but it (rather soon) will, will not it? It all looks like David Copperfield (Laser) Illusion - have anybody seen that tables in reality and in action - they say they are now distributed in AT&T stores/shops there, are they? Thank you. -- Shamil P.S. BYW, it looks like MS Vista (or similar) Windows OS version drives these "smart coffee tables"... From max.wanadoo at gmail.com Sun Sep 21 15:02:51 2008 From: max.wanadoo at gmail.com (Max Wanadoo) Date: Sun, 21 Sep 2008 21:02:51 +0100 Subject: [AccessD] OT: Weekend, technology OT: Microsoft Surface Computing.... In-Reply-To: <000401c91c1c$0d592da0$6401a8c0@nant> References: <000401c91c1c$0d592da0$6401a8c0@nant> Message-ID: Hi Shamil, This is not new. I saw this a year or maybe more ago. I passed details on to a guy who writes games. I think in time you will see lots of apps coming out for this. Imagine flicking through a database to find a record as you would a deck of cards etc. Max On Sun, Sep 21, 2008 at 7:58 PM, Shamil Salakhetdinov < shamil at smsconsulting.spb.ru> wrote: > Hi All, > > Have you seen/are you all talking there about this amazing "thick" > technology from MS: > > http://www.popularmechanics.com/technology/industry/4217348.html > > http://www.microsoft.com/presspass/press/2007/may07/05-29mssurfacepr.mspx > > > I did write "thick" because this really amazing (I will not get tired to > repeat that - I think I was never that excited about new technology) - this > "coffee-table computer" is still rather thick (or tall) - 50 cm(?) tall and > expensive - 5,000-10,000USD? > > Are there any rumors there when it will become thin and inexpensive enough > to be broadly used in usual office work? - But the latter promise to be so > unusual if that piece of technologies ever reaches it - but it (rather > soon) > will, will not it? > > It all looks like David Copperfield (Laser) Illusion - have anybody seen > that tables in reality and in action - they say they are now distributed in > AT&T stores/shops there, are they? > > Thank you. > > -- > Shamil > > P.S. BYW, it looks like MS Vista (or similar) Windows OS version drives > these "smart coffee tables"... > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From Gustav at cactus.dk Sun Sep 21 15:25:34 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Sun, 21 Sep 2008 22:25:34 +0200 Subject: [AccessD] OT: Weekend, technology OT: Microsoft Surface Computing.... Message-ID: Hi Shamil and Max Still interesting, but didn't an entertainment movie some years ago demonstrate exactly that technique for picture handling? Indeed the method for resizing? /gustav >>> max.wanadoo at gmail.com 21-09-2008 22:02 >>> Hi Shamil, This is not new. I saw this a year or maybe more ago. I passed details on to a guy who writes games. I think in time you will see lots of apps coming out for this. Imagine flicking through a database to find a record as you would a deck of cards etc. Max On Sun, Sep 21, 2008 at 7:58 PM, Shamil Salakhetdinov < shamil at smsconsulting.spb.ru> wrote: > Hi All, > > Have you seen/are you all talking there about this amazing "thick" > technology from MS: > > http://www.popularmechanics.com/technology/industry/4217348.html > > http://www.microsoft.com/presspass/press/2007/may07/05-29mssurfacepr.mspx > > > I did write "thick" because this really amazing (I will not get tired to > repeat that - I think I was never that excited about new technology) - this > "coffee-table computer" is still rather thick (or tall) - 50 cm(?) tall and > expensive - 5,000-10,000USD? > > Are there any rumors there when it will become thin and inexpensive enough > to be broadly used in usual office work? - But the latter promise to be so > unusual if that piece of technologies ever reaches it - but it (rather > soon) > will, will not it? > > It all looks like David Copperfield (Laser) Illusion - have anybody seen > that tables in reality and in action - they say they are now distributed in > AT&T stores/shops there, are they? > > Thank you. > > -- > Shamil > > P.S. BYW, it looks like MS Vista (or similar) Windows OS version drives > these "smart coffee tables"... From shamil at smsconsulting.spb.ru Sun Sep 21 15:49:34 2008 From: shamil at smsconsulting.spb.ru (Shamil Salakhetdinov) Date: Mon, 22 Sep 2008 00:49:34 +0400 Subject: [AccessD] OT: Weekend, technology OT: Microsoft Surface Computing.... In-Reply-To: Message-ID: <000001c91c2b$8f49a6f0$6401a8c0@nant> Hi Gustav and Max, Yes, this technology was first announced in 2007 - the question here is what is your feelings/expectations there how much it will take until it gets broadly used in the office work (if ever) - I mean it's getting developed there at MS: http://www.microsoft.com/presspass/press/2008/apr08/04-01SurfaceRetailPR.msp x http://www.microsoft.com/surface/index.html But still expensive... And they say it's available now in AT&T stores - used by merchants to talk with the customers/present them goods etc. ASAIU - did anybody see/touch it there live? - it looks so amazing. How it's done? Some-infrared transmitters/detectors located very close to the screen surface? Why this "smart coffer tables" are still so thick? Is there anywhere description how it's done? Thank you. -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Monday, September 22, 2008 12:26 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] OT: Weekend,technology OT: Microsoft Surface Computing.... Hi Shamil and Max Still interesting, but didn't an entertainment movie some years ago demonstrate exactly that technique for picture handling? Indeed the method for resizing? /gustav >>> max.wanadoo at gmail.com 21-09-2008 22:02 >>> Hi Shamil, This is not new. I saw this a year or maybe more ago. I passed details on to a guy who writes games. I think in time you will see lots of apps coming out for this. Imagine flicking through a database to find a record as you would a deck of cards etc. Max On Sun, Sep 21, 2008 at 7:58 PM, Shamil Salakhetdinov < shamil at smsconsulting.spb.ru> wrote: > Hi All, > > Have you seen/are you all talking there about this amazing "thick" > technology from MS: > > http://www.popularmechanics.com/technology/industry/4217348.html > > http://www.microsoft.com/presspass/press/2007/may07/05-29mssurfacepr.mspx > > > I did write "thick" because this really amazing (I will not get tired to > repeat that - I think I was never that excited about new technology) - this > "coffee-table computer" is still rather thick (or tall) - 50 cm(?) tall and > expensive - 5,000-10,000USD? > > Are there any rumors there when it will become thin and inexpensive enough > to be broadly used in usual office work? - But the latter promise to be so > unusual if that piece of technologies ever reaches it - but it (rather > soon) > will, will not it? > > It all looks like David Copperfield (Laser) Illusion - have anybody seen > that tables in reality and in action - they say they are now distributed in > AT&T stores/shops there, are they? > > Thank you. > > -- > Shamil > > P.S. BYW, it looks like MS Vista (or similar) Windows OS version drives > these "smart coffee tables"... -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Sun Sep 21 15:59:59 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Sun, 21 Sep 2008 22:59:59 +0200 Subject: [AccessD] OT: Weekend, technology OT: Microsoft Surface Computing.... Message-ID: Hi Shamil The cut at PopularMechanics very briefly tells about the construction - it's where they move around with glass bricks and a glass of cola. These demos always forget about the keyboard ... /gustav >>> shamil at smsconsulting.spb.ru 21-09-2008 22:49 >>> Hi Gustav and Max, Yes, this technology was first announced in 2007 - the question here is what is your feelings/expectations there how much it will take until it gets broadly used in the office work (if ever) - I mean it's getting developed there at MS: http://www.microsoft.com/presspass/press/2008/apr08/04-01SurfaceRetailPR.msp x http://www.microsoft.com/surface/index.html But still expensive... And they say it's available now in AT&T stores - used by merchants to talk with the customers/present them goods etc. ASAIU - did anybody see/touch it there live? - it looks so amazing. How it's done? Some-infrared transmitters/detectors located very close to the screen surface? Why this "smart coffer tables" are still so thick? Is there anywhere description how it's done? Thank you. -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Monday, September 22, 2008 12:26 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] OT: Weekend,technology OT: Microsoft Surface Computing.... Hi Shamil and Max Still interesting, but didn't an entertainment movie some years ago demonstrate exactly that technique for picture handling? Indeed the method for resizing? /gustav >>> max.wanadoo at gmail.com 21-09-2008 22:02 >>> Hi Shamil, This is not new. I saw this a year or maybe more ago. I passed details on to a guy who writes games. I think in time you will see lots of apps coming out for this. Imagine flicking through a database to find a record as you would a deck of cards etc. Max On Sun, Sep 21, 2008 at 7:58 PM, Shamil Salakhetdinov < shamil at smsconsulting.spb.ru> wrote: > Hi All, > > Have you seen/are you all talking there about this amazing "thick" > technology from MS: > > http://www.popularmechanics.com/technology/industry/4217348.html > > http://www.microsoft.com/presspass/press/2007/may07/05-29mssurfacepr.mspx > > > I did write "thick" because this really amazing (I will not get tired to > repeat that - I think I was never that excited about new technology) - this > "coffee-table computer" is still rather thick (or tall) - 50 cm(?) tall and > expensive - 5,000-10,000USD? > > Are there any rumors there when it will become thin and inexpensive enough > to be broadly used in usual office work? - But the latter promise to be so > unusual if that piece of technologies ever reaches it - but it (rather soon) > will, will not it? > > It all looks like David Copperfield (Laser) Illusion - have anybody seen > that tables in reality and in action - they say they are now distributed in > AT&T stores/shops there, are they? > > Thank you. > > -- > Shamil > > P.S. BYW, it looks like MS Vista (or similar) Windows OS version drives > these "smart coffee tables"... From rockysmolin at bchacc.com Sun Sep 21 18:23:00 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Sun, 21 Sep 2008 16:23:00 -0700 Subject: [AccessD] OT: Weekend, technology OT: Microsoft Surface Computing.... In-Reply-To: <000001c91c2b$8f49a6f0$6401a8c0@nant> References: <000001c91c2b$8f49a6f0$6401a8c0@nant> Message-ID: <007301c91c40$fd681030$0201a8c0@HAL9005> I saw it on the news - during one of the conventions, I think. It was mounted vertically, and the news guy was moving stuff around on it with his fingers. Pretty cool. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Sunday, September 21, 2008 1:50 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Weekend,technology OT: Microsoft Surface Computing.... Hi Gustav and Max, Yes, this technology was first announced in 2007 - the question here is what is your feelings/expectations there how much it will take until it gets broadly used in the office work (if ever) - I mean it's getting developed there at MS: http://www.microsoft.com/presspass/press/2008/apr08/04-01SurfaceRetailPR.msp x http://www.microsoft.com/surface/index.html But still expensive... And they say it's available now in AT&T stores - used by merchants to talk with the customers/present them goods etc. ASAIU - did anybody see/touch it there live? - it looks so amazing. How it's done? Some-infrared transmitters/detectors located very close to the screen surface? Why this "smart coffer tables" are still so thick? Is there anywhere description how it's done? Thank you. -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Monday, September 22, 2008 12:26 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] OT: Weekend,technology OT: Microsoft Surface Computing.... Hi Shamil and Max Still interesting, but didn't an entertainment movie some years ago demonstrate exactly that technique for picture handling? Indeed the method for resizing? /gustav >>> max.wanadoo at gmail.com 21-09-2008 22:02 >>> Hi Shamil, This is not new. I saw this a year or maybe more ago. I passed details on to a guy who writes games. I think in time you will see lots of apps coming out for this. Imagine flicking through a database to find a record as you would a deck of cards etc. Max On Sun, Sep 21, 2008 at 7:58 PM, Shamil Salakhetdinov < shamil at smsconsulting.spb.ru> wrote: > Hi All, > > Have you seen/are you all talking there about this amazing "thick" > technology from MS: > > http://www.popularmechanics.com/technology/industry/4217348.html > > http://www.microsoft.com/presspass/press/2007/may07/05-29mssurfacepr.m > spx > > > I did write "thick" because this really amazing (I will not get tired > to repeat that - I think I was never that excited about new > technology) - this > "coffee-table computer" is still rather thick (or tall) - 50 cm(?) > tall and > expensive - 5,000-10,000USD? > > Are there any rumors there when it will become thin and inexpensive > enough to be broadly used in usual office work? - But the latter > promise to be so unusual if that piece of technologies ever reaches it > - but it (rather > soon) > will, will not it? > > It all looks like David Copperfield (Laser) Illusion - have anybody > seen that tables in reality and in action - they say they are now > distributed in > AT&T stores/shops there, are they? > > Thank you. > > -- > Shamil > > P.S. BYW, it looks like MS Vista (or similar) Windows OS version > drives these "smart coffee tables"... -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/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 smsconsulting.spb.ru Mon Sep 22 03:27:02 2008 From: shamil at smsconsulting.spb.ru (Shamil Salakhetdinov) Date: Mon, 22 Sep 2008 12:27:02 +0400 Subject: [AccessD] OT: Weekend, technology OT: Microsoft Surface Computing.... In-Reply-To: <007301c91c40$fd681030$0201a8c0@HAL9005> Message-ID: <000701c91c8c$fe709500$6401a8c0@nant> Yes, one of the applications could be to use this "coffee table" instead of/together with a blackboard in the schools if to put it vertically - this is why it's important to have it as thin as possible. Of course one can make a special niche in the wall to put it there but still having it as thin as a usual blackboard and not that expensive as USD5,000-1,0000 as it's now(?) would be much more convenient - so for this application in the school the three main tasks to solve are: - make it at least as think as a usual blackboard; - make its total cost as a usual blackboard cost + average cost of a modern PC with large display; - make its screen bright enough to be seen clearly from at least 15 meters daytime... Could that happen that the above tasks will be solved soon enough? What are you bets on that? Thank you. -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Monday, September 22, 2008 3:23 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Weekend,technology OT: Microsoft Surface Computing.... I saw it on the news - during one of the conventions, I think. It was mounted vertically, and the news guy was moving stuff around on it with his fingers. Pretty cool. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Sunday, September 21, 2008 1:50 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Weekend,technology OT: Microsoft Surface Computing.... Hi Gustav and Max, Yes, this technology was first announced in 2007 - the question here is what is your feelings/expectations there how much it will take until it gets broadly used in the office work (if ever) - I mean it's getting developed there at MS: http://www.microsoft.com/presspass/press/2008/apr08/04-01SurfaceRetailPR.msp x http://www.microsoft.com/surface/index.html But still expensive... And they say it's available now in AT&T stores - used by merchants to talk with the customers/present them goods etc. ASAIU - did anybody see/touch it there live? - it looks so amazing. How it's done? Some-infrared transmitters/detectors located very close to the screen surface? Why this "smart coffer tables" are still so thick? Is there anywhere description how it's done? Thank you. -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Monday, September 22, 2008 12:26 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] OT: Weekend,technology OT: Microsoft Surface Computing.... Hi Shamil and Max Still interesting, but didn't an entertainment movie some years ago demonstrate exactly that technique for picture handling? Indeed the method for resizing? /gustav >>> max.wanadoo at gmail.com 21-09-2008 22:02 >>> Hi Shamil, This is not new. I saw this a year or maybe more ago. I passed details on to a guy who writes games. I think in time you will see lots of apps coming out for this. Imagine flicking through a database to find a record as you would a deck of cards etc. Max On Sun, Sep 21, 2008 at 7:58 PM, Shamil Salakhetdinov < shamil at smsconsulting.spb.ru> wrote: > Hi All, > > Have you seen/are you all talking there about this amazing "thick" > technology from MS: > > http://www.popularmechanics.com/technology/industry/4217348.html > > http://www.microsoft.com/presspass/press/2007/may07/05-29mssurfacepr.m > spx > > > I did write "thick" because this really amazing (I will not get tired > to repeat that - I think I was never that excited about new > technology) - this > "coffee-table computer" is still rather thick (or tall) - 50 cm(?) > tall and > expensive - 5,000-10,000USD? > > Are there any rumors there when it will become thin and inexpensive > enough to be broadly used in usual office work? - But the latter > promise to be so unusual if that piece of technologies ever reaches it > - but it (rather > soon) > will, will not it? > > It all looks like David Copperfield (Laser) Illusion - have anybody > seen that tables in reality and in action - they say they are now > distributed in > AT&T stores/shops there, are they? > > Thank you. > > -- > Shamil > > P.S. BYW, it looks like MS Vista (or similar) Windows OS version > drives these "smart coffee tables"... From Darryl.Collins at coles.com.au Mon Sep 22 06:00:42 2008 From: Darryl.Collins at coles.com.au (Darryl Collins) Date: Mon, 22 Sep 2008 21:00:42 +1000 Subject: [AccessD] OT: Weekend, technology OT: Microsoft Surface Computing.... In-Reply-To: <000701c91c8c$fe709500$6401a8c0@nant> Message-ID: <57E6E6CA42105A48B977303A2CDC2720076DA26FA2@WPEXCH22.retail.ad.cmltd.net.au> well... maybe..., 'They' have been promising the demise of the book for years now, but a book is an almost perfect technology and is still going strong. In places where electricity is hit and miss, tech support non-existent and tech expertise thin on the ground, well, you really can't beat a blackboard and some chalk for teaching kids how to do stuff. Given that most of the world live like that and us folks who live in rich first world countries are the lucky ones... well.... I love tech, but it can also be awfully over-rated. ok, it is v cool, but will it change the world? maybe, but only the rich world and even then, not yet.... Sometimes the old tech is just cheaper, faster, better.... -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Shamil Salakhetdinov Sent: Monday, 22 September 2008 6:27 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Weekend, technology OT: Microsoft Surface Computing.... Yes, one of the applications could be to use this "coffee table" instead of/together with a blackboard in the schools if to put it vertically - this is why it's important to have it as thin as possible. Of course one can make a special niche in the wall to put it there but still having it as thin as a usual blackboard and not that expensive as USD5,000-1,0000 as it's now(?) would be much more convenient - so for this application in the school the three main tasks to solve are: - make it at least as think as a usual blackboard; - make its total cost as a usual blackboard cost + average cost of a modern PC with large display; - make its screen bright enough to be seen clearly from at least 15 meters daytime... Could that happen that the above tasks will be solved soon enough? What are you bets on that? Thank you. -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Monday, September 22, 2008 3:23 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Weekend,technology OT: Microsoft Surface Computing.... I saw it on the news - during one of the conventions, I think. It was mounted vertically, and the news guy was moving stuff around on it with his fingers. Pretty cool. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Sunday, September 21, 2008 1:50 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Weekend,technology OT: Microsoft Surface Computing.... Hi Gustav and Max, Yes, this technology was first announced in 2007 - the question here is what is your feelings/expectations there how much it will take until it gets broadly used in the office work (if ever) - I mean it's getting developed there at MS: http://www.microsoft.com/presspass/press/2008/apr08/04-01SurfaceRetailPR.msp x http://www.microsoft.com/surface/index.html But still expensive... And they say it's available now in AT&T stores - used by merchants to talk with the customers/present them goods etc. ASAIU - did anybody see/touch it there live? - it looks so amazing. How it's done? Some-infrared transmitters/detectors located very close to the screen surface? Why this "smart coffer tables" are still so thick? Is there anywhere description how it's done? Thank you. -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Monday, September 22, 2008 12:26 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] OT: Weekend,technology OT: Microsoft Surface Computing.... Hi Shamil and Max Still interesting, but didn't an entertainment movie some years ago demonstrate exactly that technique for picture handling? Indeed the method for resizing? /gustav >>> max.wanadoo at gmail.com 21-09-2008 22:02 >>> Hi Shamil, This is not new. I saw this a year or maybe more ago. I passed details on to a guy who writes games. I think in time you will see lots of apps coming out for this. Imagine flicking through a database to find a record as you would a deck of cards etc. Max On Sun, Sep 21, 2008 at 7:58 PM, Shamil Salakhetdinov < shamil at smsconsulting.spb.ru> wrote: > Hi All, > > Have you seen/are you all talking there about this amazing "thick" > technology from MS: > > http://www.popularmechanics.com/technology/industry/4217348.html > > http://www.microsoft.com/presspass/press/2007/may07/05-29mssurfacepr.m > spx > > > I did write "thick" because this really amazing (I will not get tired > to repeat that - I think I was never that excited about new > technology) - this > "coffee-table computer" is still rather thick (or tall) - 50 cm(?) > tall and > expensive - 5,000-10,000USD? > > Are there any rumors there when it will become thin and inexpensive > enough to be broadly used in usual office work? - But the latter > promise to be so unusual if that piece of technologies ever reaches it > - but it (rather > soon) > will, will not it? > > It all looks like David Copperfield (Laser) Illusion - have anybody > seen that tables in reality and in action - they say they are now > distributed in > AT&T stores/shops there, are they? > > Thank you. > > -- > Shamil > > P.S. BYW, it looks like MS Vista (or similar) Windows OS version > drives these "smart coffee tables"... -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. From fuller.artful at gmail.com Mon Sep 22 06:52:23 2008 From: fuller.artful at gmail.com (Arthur Fuller) Date: Mon, 22 Sep 2008 08:52:23 -0300 Subject: [AccessD] OT: Weekend, technology OT: Microsoft Surface Computing.... In-Reply-To: <57E6E6CA42105A48B977303A2CDC2720076DA26FA2@WPEXCH22.retail.ad.cmltd.net.au> References: <000701c91c8c$fe709500$6401a8c0@nant> <57E6E6CA42105A48B977303A2CDC2720076DA26FA2@WPEXCH22.retail.ad.cmltd.net.au> Message-ID: <29f585dd0809220452n28ee7fc5k6423916bc7cf8df0@mail.gmail.com> As for me, I really like pencils, especially with erasers on their heads. That covers the writing part. As for the reading part, I'm afraid to take my notebook into the bathtub. With a book there's no risk of electrocution, only elocution :) A. On Mon, Sep 22, 2008 at 8:00 AM, Darryl Collins wrote: > well... maybe..., > > 'They' have been promising the demise of the book for years now, but a book > is an almost perfect technology and is still going strong. In places where > electricity is hit and miss, tech support non-existent and tech expertise > thin on the ground, well, you really can't beat a blackboard and some chalk > for teaching kids how to do stuff. Given that most of the world live like > that and us folks who live in rich first world countries are the lucky > ones... well.... > > I love tech, but it can also be awfully over-rated. ok, it is v cool, but > will it change the world? maybe, but only the rich world and even then, not > yet.... Sometimes the old tech is just cheaper, faster, better.... > > > From shait at stephenhait.com Mon Sep 22 07:44:20 2008 From: shait at stephenhait.com (Stephen Hait) Date: Mon, 22 Sep 2008 08:44:20 -0400 Subject: [AccessD] (In)security - A2K7 or Vista? In-Reply-To: References: Message-ID: On Sun, Sep 21, 2008 at 10:42 AM, Gustav Brock wrote: > Hi Rocky > > Sounds more like an IE warning ... > I've run into similar problems when an MDB needs to access resources on another machine. What I've had to do in these situations is to change the security settings in IE. In IE, Tools, Internet Options, Security, Trusted Sites, Sites button Add IP address (no slashes) and uncheck "Require server verification (https:) for all sites in this zone. HTH, Stephen From rockysmolin at bchacc.com Mon Sep 22 08:19:24 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Mon, 22 Sep 2008 06:19:24 -0700 Subject: [AccessD] OT: Weekend, technology OT: Microsoft Surface Computing.... In-Reply-To: <000701c91c8c$fe709500$6401a8c0@nant> References: <007301c91c40$fd681030$0201a8c0@HAL9005> <000701c91c8c$fe709500$6401a8c0@nant> Message-ID: <00c401c91cb5$d51b1530$0201a8c0@HAL9005> Speaking from a background in manufacturing systems, Shamil, as with all of our IT technology, the price will drop as volumes increase. Look at what has happened to monitors. Here you can get a quality 19 inch for well under $200 without looking very hard, and where I get my displays they throw in a printer for free. So price wise I think we'll get there in a few years, if the applications are available to make it more than just a whiz bang toy. It will actually have to provide value in the classroom to be adopted. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Monday, September 22, 2008 1:27 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Weekend,technology OT: Microsoft Surface Computing.... Yes, one of the applications could be to use this "coffee table" instead of/together with a blackboard in the schools if to put it vertically - this is why it's important to have it as thin as possible. Of course one can make a special niche in the wall to put it there but still having it as thin as a usual blackboard and not that expensive as USD5,000-1,0000 as it's now(?) would be much more convenient - so for this application in the school the three main tasks to solve are: - make it at least as think as a usual blackboard; - make its total cost as a usual blackboard cost + average cost of a modern PC with large display; - make its screen bright enough to be seen clearly from at least 15 meters daytime... Could that happen that the above tasks will be solved soon enough? What are you bets on that? Thank you. -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Monday, September 22, 2008 3:23 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Weekend,technology OT: Microsoft Surface Computing.... I saw it on the news - during one of the conventions, I think. It was mounted vertically, and the news guy was moving stuff around on it with his fingers. Pretty cool. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Sunday, September 21, 2008 1:50 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Weekend,technology OT: Microsoft Surface Computing.... Hi Gustav and Max, Yes, this technology was first announced in 2007 - the question here is what is your feelings/expectations there how much it will take until it gets broadly used in the office work (if ever) - I mean it's getting developed there at MS: http://www.microsoft.com/presspass/press/2008/apr08/04-01SurfaceRetailPR.msp x http://www.microsoft.com/surface/index.html But still expensive... And they say it's available now in AT&T stores - used by merchants to talk with the customers/present them goods etc. ASAIU - did anybody see/touch it there live? - it looks so amazing. How it's done? Some-infrared transmitters/detectors located very close to the screen surface? Why this "smart coffer tables" are still so thick? Is there anywhere description how it's done? Thank you. -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Monday, September 22, 2008 12:26 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] OT: Weekend,technology OT: Microsoft Surface Computing.... Hi Shamil and Max Still interesting, but didn't an entertainment movie some years ago demonstrate exactly that technique for picture handling? Indeed the method for resizing? /gustav >>> max.wanadoo at gmail.com 21-09-2008 22:02 >>> Hi Shamil, This is not new. I saw this a year or maybe more ago. I passed details on to a guy who writes games. I think in time you will see lots of apps coming out for this. Imagine flicking through a database to find a record as you would a deck of cards etc. Max On Sun, Sep 21, 2008 at 7:58 PM, Shamil Salakhetdinov < shamil at smsconsulting.spb.ru> wrote: > Hi All, > > Have you seen/are you all talking there about this amazing "thick" > technology from MS: > > http://www.popularmechanics.com/technology/industry/4217348.html > > http://www.microsoft.com/presspass/press/2007/may07/05-29mssurfacepr.m > spx > > > I did write "thick" because this really amazing (I will not get tired > to repeat that - I think I was never that excited about new > technology) - this > "coffee-table computer" is still rather thick (or tall) - 50 cm(?) > tall and > expensive - 5,000-10,000USD? > > Are there any rumors there when it will become thin and inexpensive > enough to be broadly used in usual office work? - But the latter > promise to be so unusual if that piece of technologies ever reaches it > - but it (rather > soon) > will, will not it? > > It all looks like David Copperfield (Laser) Illusion - have anybody > seen that tables in reality and in action - they say they are now > distributed in > AT&T stores/shops there, are they? > > Thank you. > > -- > Shamil > > P.S. BYW, it looks like MS Vista (or similar) Windows OS version > drives these "smart coffee tables"... -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From rockysmolin at bchacc.com Mon Sep 22 08:20:55 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Mon, 22 Sep 2008 06:20:55 -0700 Subject: [AccessD] (In)security - A2K7 or Vista? In-Reply-To: References: Message-ID: <00c501c91cb6$0baa1010$0201a8c0@HAL9005> Stephen: That would be way too easy. Let me forward your post to my client and see if we can get a test at the Beta site. Will report back. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stephen Hait Sent: Monday, September 22, 2008 5:44 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] (In)security - A2K7 or Vista? On Sun, Sep 21, 2008 at 10:42 AM, Gustav Brock wrote: > Hi Rocky > > Sounds more like an IE warning ... > I've run into similar problems when an MDB needs to access resources on another machine. What I've had to do in these situations is to change the security settings in IE. In IE, Tools, Internet Options, Security, Trusted Sites, Sites button Add IP address (no slashes) and uncheck "Require server verification (https:) for all sites in this zone. HTH, Stephen -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at smsconsulting.spb.ru Mon Sep 22 13:02:00 2008 From: shamil at smsconsulting.spb.ru (Shamil Salakhetdinov) Date: Mon, 22 Sep 2008 22:02:00 +0400 Subject: [AccessD] OT: Weekend, technology OT: Microsoft Surface Computing.... In-Reply-To: <00c401c91cb5$d51b1530$0201a8c0@HAL9005> Message-ID: <002e01c91cdd$51cf2590$6401a8c0@nant> Thank you for all your answers - just to summarize and close this off-topic thread: 1) To Arthur: well with this "coffee table" you can use pencil (its not sharpened part) or just your finger as a pencil - this device does recognize written text rather well AFAIS.. As for using it in bathtub - well, I do use ordinary books in bathtub - I do not see why should I try to pull this table with me there in my bathtub :) do you? 2) To Darryl: Re: "Given that most of the world live like that" - AFAIK, IT technologies and telecommunication are now widespread all over the world - several years and all the world will be covered with 3G and wireless broadband affordable (or free supported by all the countries' for their citizen or financed globally?) Internet connections, wouldn't it? 3) To Rocky: Yes, let's hope this technology will soon result in affordable retail prices and will get thin enough to be used instead of or together with blackboards in the schools... Thank you. -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Monday, September 22, 2008 5:19 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Weekend,technology OT: Microsoft Surface Computing.... Speaking from a background in manufacturing systems, Shamil, as with all of our IT technology, the price will drop as volumes increase. Look at what has happened to monitors. Here you can get a quality 19 inch for well under $200 without looking very hard, and where I get my displays they throw in a printer for free. So price wise I think we'll get there in a few years, if the applications are available to make it more than just a whiz bang toy. It will actually have to provide value in the classroom to be adopted. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Monday, September 22, 2008 1:27 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Weekend,technology OT: Microsoft Surface Computing.... Yes, one of the applications could be to use this "coffee table" instead of/together with a blackboard in the schools if to put it vertically - this is why it's important to have it as thin as possible. Of course one can make a special niche in the wall to put it there but still having it as thin as a usual blackboard and not that expensive as USD5,000-1,0000 as it's now(?) would be much more convenient - so for this application in the school the three main tasks to solve are: - make it at least as think as a usual blackboard; - make its total cost as a usual blackboard cost + average cost of a modern PC with large display; - make its screen bright enough to be seen clearly from at least 15 meters daytime... Could that happen that the above tasks will be solved soon enough? What are you bets on that? Thank you. -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Monday, September 22, 2008 3:23 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Weekend,technology OT: Microsoft Surface Computing.... I saw it on the news - during one of the conventions, I think. It was mounted vertically, and the news guy was moving stuff around on it with his fingers. Pretty cool. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Sunday, September 21, 2008 1:50 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] OT: Weekend,technology OT: Microsoft Surface Computing.... Hi Gustav and Max, Yes, this technology was first announced in 2007 - the question here is what is your feelings/expectations there how much it will take until it gets broadly used in the office work (if ever) - I mean it's getting developed there at MS: http://www.microsoft.com/presspass/press/2008/apr08/04-01SurfaceRetailPR.msp x http://www.microsoft.com/surface/index.html But still expensive... And they say it's available now in AT&T stores - used by merchants to talk with the customers/present them goods etc. ASAIU - did anybody see/touch it there live? - it looks so amazing. How it's done? Some-infrared transmitters/detectors located very close to the screen surface? Why this "smart coffer tables" are still so thick? Is there anywhere description how it's done? Thank you. -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Monday, September 22, 2008 12:26 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] OT: Weekend,technology OT: Microsoft Surface Computing.... Hi Shamil and Max Still interesting, but didn't an entertainment movie some years ago demonstrate exactly that technique for picture handling? Indeed the method for resizing? /gustav >>> max.wanadoo at gmail.com 21-09-2008 22:02 >>> Hi Shamil, This is not new. I saw this a year or maybe more ago. I passed details on to a guy who writes games. I think in time you will see lots of apps coming out for this. Imagine flicking through a database to find a record as you would a deck of cards etc. Max On Sun, Sep 21, 2008 at 7:58 PM, Shamil Salakhetdinov < shamil at smsconsulting.spb.ru> wrote: > Hi All, > > Have you seen/are you all talking there about this amazing "thick" > technology from MS: > > http://www.popularmechanics.com/technology/industry/4217348.html > > http://www.microsoft.com/presspass/press/2007/may07/05-29mssurfacepr.m > spx > > > I did write "thick" because this really amazing (I will not get tired > to repeat that - I think I was never that excited about new > technology) - this > "coffee-table computer" is still rather thick (or tall) - 50 cm(?) > tall and > expensive - 5,000-10,000USD? > > Are there any rumors there when it will become thin and inexpensive > enough to be broadly used in usual office work? - But the latter > promise to be so unusual if that piece of technologies ever reaches it > - but it (rather > soon) > will, will not it? > > It all looks like David Copperfield (Laser) Illusion - have anybody > seen that tables in reality and in action - they say they are now > distributed in > AT&T stores/shops there, are they? > > Thank you. > > -- > Shamil > > P.S. BYW, it looks like MS Vista (or similar) Windows OS version > drives these "smart coffee tables"... From rockysmolin at bchacc.com Mon Sep 22 14:27:22 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Mon, 22 Sep 2008 12:27:22 -0700 Subject: [AccessD] Change Field Type Message-ID: <017a01c91ce9$3ce07330$0201a8c0@HAL9005> Dear List: I am trying to change the type of a field 'StartBase' in table 'MatterActions' from Number to Boolean. I've tried two approaches: 1) dbs.Execute "ALTER TABLE [MatterActions] ALTER Column StartBase Boolean" givers the error 3381 There is no field named 'Boolean' in table 'MatterActions' 2) Set tdf = dbs.TableDefs("MatterActions") tdf.Fields("StartBase").Type = dbBoolean gives the error invalid operation on the second line. Does anyone know the correct code to change this field's type? MTIA Rocky From shamil at smsconsulting.spb.ru Mon Sep 22 14:56:38 2008 From: shamil at smsconsulting.spb.ru (Shamil Salakhetdinov) Date: Mon, 22 Sep 2008 23:56:38 +0400 Subject: [AccessD] Change Field Type In-Reply-To: <017a01c91ce9$3ce07330$0201a8c0@HAL9005> Message-ID: <000c01c91ced$54cd5720$6401a8c0@nant> Hi Rocky, I'd think you have to: - 1) create a new column with required data type; - 2) set values of this new column using update SQL clause; - 3) delete old column; - 4) rename new column to the old column name; - 5) change ordinal position for the renamed column (can be done in step (4) - 6) set indexes for the new column if needed... - 7) (re-)define relationships; I can be wrong but I suppose that changing column type in code directly in one step isn't possible... As we all know it's possible to change column type in one direct step in design mode but I'd suppose that "under the hood" the above sequence of actions is performed... Thank you. -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Monday, September 22, 2008 11:27 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Change Field Type Dear List: I am trying to change the type of a field 'StartBase' in table 'MatterActions' from Number to Boolean. I've tried two approaches: 1) dbs.Execute "ALTER TABLE [MatterActions] ALTER Column StartBase Boolean" givers the error 3381 There is no field named 'Boolean' in table 'MatterActions' 2) Set tdf = dbs.TableDefs("MatterActions") tdf.Fields("StartBase").Type = dbBoolean gives the error invalid operation on the second line. Does anyone know the correct code to change this field's type? MTIA Rocky -- 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 Sep 22 14:57:54 2008 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Mon, 22 Sep 2008 15:57:54 -0400 Subject: [AccessD] Change Field Type Message-ID: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0EC6D@XLIVMBX35bkup.aig.com> If this is an Access DB then you cannot alter a column this way. According to the OLH these are the only data definitions statements supported: CREATE TABLE Creates a table ALTER TABLE Adds a new field or constraint to an existing table DROP Deletes a table from a database or removes an index from a field or group of fields CREATE INDEX Creates an index for a field or group of fields So to do what you want you would need to add the Boolean column. Run an update query to fill the new Boolean column with Cbool(MatterActions), and the drop the MatterActions column. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Monday, September 22, 2008 3:27 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Change Field Type Dear List: I am trying to change the type of a field 'StartBase' in table 'MatterActions' from Number to Boolean. I've tried two approaches: 1) dbs.Execute "ALTER TABLE [MatterActions] ALTER Column StartBase Boolean" givers the error 3381 There is no field named 'Boolean' in table 'MatterActions' 2) Set tdf = dbs.TableDefs("MatterActions") tdf.Fields("StartBase").Type = dbBoolean gives the error invalid operation on the second line. Does anyone know the correct code to change this field's type? MTIA Rocky -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From rockysmolin at bchacc.com Mon Sep 22 15:07:53 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Mon, 22 Sep 2008 13:07:53 -0700 Subject: [AccessD] Change Field Type In-Reply-To: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0EC6D@XLIVMBX35bkup.aig.com> References: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0EC6D@XLIVMBX35bkup.aig.com> Message-ID: <018401c91cee$e59f8240$0201a8c0@HAL9005> Poop. I guess I'll have to use Shamil's approach. Thanks. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert Sent: Monday, September 22, 2008 12:58 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Change Field Type If this is an Access DB then you cannot alter a column this way. According to the OLH these are the only data definitions statements supported: CREATE TABLE Creates a table ALTER TABLE Adds a new field or constraint to an existing table DROP Deletes a table from a database or removes an index from a field or group of fields CREATE INDEX Creates an index for a field or group of fields So to do what you want you would need to add the Boolean column. Run an update query to fill the new Boolean column with Cbool(MatterActions), and the drop the MatterActions column. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Monday, September 22, 2008 3:27 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Change Field Type Dear List: I am trying to change the type of a field 'StartBase' in table 'MatterActions' from Number to Boolean. I've tried two approaches: 1) dbs.Execute "ALTER TABLE [MatterActions] ALTER Column StartBase Boolean" givers the error 3381 There is no field named 'Boolean' in table 'MatterActions' 2) Set tdf = dbs.TableDefs("MatterActions") tdf.Fields("StartBase").Type = dbBoolean gives the error invalid operation on the second line. Does anyone know the correct code to change this field's type? MTIA 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 rockysmolin at bchacc.com Mon Sep 22 15:08:21 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Mon, 22 Sep 2008 13:08:21 -0700 Subject: [AccessD] Change Field Type In-Reply-To: <000c01c91ced$54cd5720$6401a8c0@nant> References: <017a01c91ce9$3ce07330$0201a8c0@HAL9005> <000c01c91ced$54cd5720$6401a8c0@nant> Message-ID: <018501c91cee$f6572430$0201a8c0@HAL9005> I was hoping that wasn't the case. Thanks. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Monday, September 22, 2008 12:57 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Change Field Type Hi Rocky, I'd think you have to: - 1) create a new column with required data type; - 2) set values of this new column using update SQL clause; - 3) delete old column; - 4) rename new column to the old column name; - 5) change ordinal position for the renamed column (can be done in step (4) - 6) set indexes for the new column if needed... - 7) (re-)define relationships; I can be wrong but I suppose that changing column type in code directly in one step isn't possible... As we all know it's possible to change column type in one direct step in design mode but I'd suppose that "under the hood" the above sequence of actions is performed... Thank you. -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Monday, September 22, 2008 11:27 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Change Field Type Dear List: I am trying to change the type of a field 'StartBase' in table 'MatterActions' from Number to Boolean. I've tried two approaches: 1) dbs.Execute "ALTER TABLE [MatterActions] ALTER Column StartBase Boolean" givers the error 3381 There is no field named 'Boolean' in table 'MatterActions' 2) Set tdf = dbs.TableDefs("MatterActions") tdf.Fields("StartBase").Type = dbBoolean gives the error invalid operation on the second line. Does anyone know the correct code to change this field's type? MTIA 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 rockysmolin at bchacc.com Mon Sep 22 15:17:15 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Mon, 22 Sep 2008 13:17:15 -0700 Subject: [AccessD] Email Problem Message-ID: <018601c91cf0$34907160$0201a8c0@HAL9005> Dear List: My day for questions. I'm sending emails automatically, unattended, from this app - scheduled to run at night. When the email contains an invalid address it generates an error "-21472220977 - the server rejected one or more recipient addresses. The server response was 550 5.1.1 User Unknown. Possible bad email address" then it lists all of the addresses in the To: CC: and BCC: fields, and the process stops until the user comes in, sees the message and clicks OK. At which point they don't really know what address was bad. I suppose I could use On Error Resume Next at the line which calls the email send routine. Of course, that way the user will never know that there was a bad address and that the report didn't go out. So I think that's not a good solution. However, is there a way to verify addresses before sending an email? Or is there a better approach to this problem? MTIA Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com From cfoust at infostatsystems.com Mon Sep 22 15:29:02 2008 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Mon, 22 Sep 2008 13:29:02 -0700 Subject: [AccessD] Email Problem In-Reply-To: <018601c91cf0$34907160$0201a8c0@HAL9005> References: <018601c91cf0$34907160$0201a8c0@HAL9005> Message-ID: We always used Redemption with our Access apps (and still use it with .Net) and trapped the errors on individual email addresses. It sounds like you're set up to send a single email to multiple addresses, correct? Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Monday, September 22, 2008 1:17 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Email Problem Dear List: My day for questions. I'm sending emails automatically, unattended, from this app - scheduled to run at night. When the email contains an invalid address it generates an error "-21472220977 - the server rejected one or more recipient addresses. The server response was 550 5.1.1 User Unknown. Possible bad email address" then it lists all of the addresses in the To: CC: and BCC: fields, and the process stops until the user comes in, sees the message and clicks OK. At which point they don't really know what address was bad. I suppose I could use On Error Resume Next at the line which calls the email send routine. Of course, that way the user will never know that there was a bad address and that the report didn't go out. So I think that's not a good solution. However, is there a way to verify addresses before sending an email? Or is there a better approach to this problem? MTIA Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From jwelz at hotmail.com Mon Sep 22 15:45:45 2008 From: jwelz at hotmail.com (Jurgen Welz) Date: Mon, 22 Sep 2008 14:45:45 -0600 Subject: [AccessD] OT: Weekend, technology OT: Microsoft Surface Computing.... In-Reply-To: <000001c91c2b$8f49a6f0$6401a8c0@nant> References: <000001c91c2b$8f49a6f0$6401a8c0@nant> Message-ID: Looks a lot like this stuff from Feb 2006: http://www.ted.com/index.php/talks/jeff_han_demos_his_breakthrough_touchscreen.html CiaoJ?rgen WelzEdmonton, Albertajwelz at hotmail.com> From: shamil at smsconsulting.spb.ru> To: accessd at databaseadvisors.com> Date: Mon, 22 Sep 2008 00:49:34 +0400> Subject: Re: [AccessD] OT: Weekend, technology OT: Microsoft Surface Computing....> > Hi Gustav and Max,> > Yes, this technology was first announced in 2007 - the question here is what> is your feelings/expectations there how much it will take until it gets> broadly used in the office work (if ever) - I mean it's getting developed> there at MS:> > http://www.microsoft.com/presspass/press/2008/apr08/04-01SurfaceRetailPR.msp> x > > http://www.microsoft.com/surface/index.html > > But still expensive...> > And they say it's available now in AT&T stores - used by merchants to talk> with the customers/present them goods etc. ASAIU - did anybody see/touch it> there live? - it looks so amazing. How it's done? Some-infrared> transmitters/detectors located very close to the screen surface? Why this> "smart coffer tables" are still so thick? Is there anywhere description how> it's done?> > Thank you. _________________________________________________________________ From rockysmolin at bchacc.com Mon Sep 22 16:47:45 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Mon, 22 Sep 2008 14:47:45 -0700 Subject: [AccessD] Email Problem In-Reply-To: References: <018601c91cf0$34907160$0201a8c0@HAL9005> Message-ID: <01a401c91cfc$d913f570$0201a8c0@HAL9005> Correct. What's Redemption? Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Monday, September 22, 2008 1:29 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Email Problem We always used Redemption with our Access apps (and still use it with .Net) and trapped the errors on individual email addresses. It sounds like you're set up to send a single email to multiple addresses, correct? Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Monday, September 22, 2008 1:17 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Email Problem Dear List: My day for questions. I'm sending emails automatically, unattended, from this app - scheduled to run at night. When the email contains an invalid address it generates an error "-21472220977 - the server rejected one or more recipient addresses. The server response was 550 5.1.1 User Unknown. Possible bad email address" then it lists all of the addresses in the To: CC: and BCC: fields, and the process stops until the user comes in, sees the message and clicks OK. At which point they don't really know what address was bad. I suppose I could use On Error Resume Next at the line which calls the email send routine. Of course, that way the user will never know that there was a bad address and that the report didn't go out. So I think that's not a good solution. However, is there a way to verify addresses before sending an email? Or is there a better approach to this problem? MTIA Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.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 krosenstiel at comcast.net Mon Sep 22 17:03:59 2008 From: krosenstiel at comcast.net (krosenstiel at comcast.net) Date: Mon, 22 Sep 2008 22:03:59 +0000 Subject: [AccessD] Email Problem Message-ID: <092220082203.10965.48D8164F0007FE5D00002AD52214756402040A079B9C020A9C019D05@comcast.net> Well, that's when Jesus died for your sins and redeemed you :-))) (I could NOT resist!) -- Karen Rosenstiel Seattle WA USA -------------- Original message ---------------------- From: "Rocky Smolin at Beach Access Software" > Correct. What's Redemption? > > > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > www.bchacc.com > > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust > Sent: Monday, September 22, 2008 1:29 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Email Problem > > We always used Redemption with our Access apps (and still use it with > .Net) and trapped the errors on individual email addresses. It sounds like > you're set up to send a single email to multiple addresses, correct? > > Charlotte Foust > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at > Beach Access Software > Sent: Monday, September 22, 2008 1:17 PM > To: 'Access Developers discussion and problem solving' > Subject: [AccessD] Email Problem > > Dear List: > > My day for questions. I'm sending emails automatically, unattended, from > this app - scheduled to run at night. When the email contains an invalid > address it generates an error "-21472220977 - the server rejected one or > more recipient addresses. The server response was 550 > 5.1.1 User Unknown. > Possible bad email address" > > then it lists all of the addresses in the To: CC: and BCC: fields, and the > process stops until the user comes in, sees the message and clicks OK. At > which point they don't really know what address was bad. > > I suppose I could use On Error Resume Next at the line which calls the email > send routine. Of course, that way the user will never know that there was a > bad address and that the report didn't go out. So I think that's not a good > solution. > > However, is there a way to verify addresses before sending an email? Or is > there a better approach to this problem? > > MTIA > > Rocky Smolin > > Beach Access Software > > 858-259-4334 > > www.e-z-mrp.com > > www.bchacc.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 Donald.A.McGillivray at sprint.com Mon Sep 22 17:10:36 2008 From: Donald.A.McGillivray at sprint.com (McGillivray, Don [IT]) Date: Mon, 22 Sep 2008 17:10:36 -0500 Subject: [AccessD] Excel object behavior Message-ID: <59F4C79E0A20B74990A3775EF2388A894223C68D19@PDAWM03C.ad.sprint.com> Hello, All I have a procedure that exports a bunch of data to Excel, and then uses the Excel object model to manipulate the resulting spreadsheets (creating pivot tables, applying formatting, and the like.) Usually it works as advertised, but some of my users are having a problem where the UI freezes (or maybe it just appears to freeze). In trying to isolate the problem, I watched the effects of my code carefully, and I notice that the Excel instance that I create in code doesn't terminate until the procedure itself is finished. This, despite the fact that I have closed, quit, and set to nothing all Excel related objects before the end of the procedure. I know through experience that failing to terminate Excel objects correctly leaves the instance alive even at the end of the procedure. So I assume that I'm killing them correctly since the instance does indeed die. Can anybody tell me if I should expect to see the instance survive until the end of the proc, or is there something else I ought to be doing when I'm finished with Excel? Thanks! Don McGillivray From stuart at lexacorp.com.pg Mon Sep 22 17:36:54 2008 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Tue, 23 Sep 2008 08:36:54 +1000 Subject: [AccessD] Email Problem In-Reply-To: <018601c91cf0$34907160$0201a8c0@HAL9005> References: <018601c91cf0$34907160$0201a8c0@HAL9005> Message-ID: <48D8AAA6.18454.E0AC4B9@stuart.lexacorp.com.pg> You can't check an address without sending a message to it. (Well there is the SMTP VERIFY command, but most servers don't honour it to avoid disclosing valid addresses to spammers) I use Blat.dll to do this sort of automated mailing. Every transmission is logged in a text file which you can programmatically check for errors afterwards. It also returns error codes which you can use to create your own logging routine. Having said that how about a standard error trap: Do On error goto trapit: Docmd.sendmail... or whatever On error goto 0 loop......... .......... exit function trapit: if error = -21472220977 then Log toAddress resume next end if ....... with your own custom Log() function On 22 Sep 2008 at 13:17, Rocky Smolin at Beach Access wrote: > Dear List: > > My day for questions. I'm sending emails automatically, unattended, from > this app - scheduled to run at night. When the email contains an invalid > address it generates an error "-21472220977 - the server rejected one or > more recipient addresses. The server response was 550 5.1.1 User Unknown. > Possible bad email address" > > then it lists all of the addresses in the To: CC: and BCC: fields, and the > process stops until the user comes in, sees the message and clicks OK. At > which point they don't really know what address was bad. > > I suppose I could use On Error Resume Next at the line which calls the email > send routine. Of course, that way the user will never know that there was a > bad address and that the report didn't go out. So I think that's not a good > solution. > > However, is there a way to verify addresses before sending an email? Or is > there a better approach to this problem? > > MTIA > > Rocky Smolin > > Beach Access Software > > 858-259-4334 > > www.e-z-mrp.com > > www.bchacc.com > > > > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From rockysmolin at bchacc.com Mon Sep 22 18:19:14 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Mon, 22 Sep 2008 16:19:14 -0700 Subject: [AccessD] Email Problem In-Reply-To: <092220082203.10965.48D8164F0007FE5D00002AD52214756402040A079B9C020A9C019D05@comcast.net> References: <092220082203.10965.48D8164F0007FE5D00002AD52214756402040A079B9C020A9C019D05@comcast.net> Message-ID: <01b801c91d09$a13e0fc0$0201a8c0@HAL9005> Well that leaves ME out. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of krosenstiel at comcast.net Sent: Monday, September 22, 2008 3:04 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Email Problem Well, that's when Jesus died for your sins and redeemed you :-))) (I could NOT resist!) -- Karen Rosenstiel Seattle WA USA -------------- Original message ---------------------- From: "Rocky Smolin at Beach Access Software" > Correct. What's Redemption? > > > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > www.bchacc.com > > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte > Foust > Sent: Monday, September 22, 2008 1:29 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Email Problem > > We always used Redemption with our Access apps (and still use it with > .Net) and trapped the errors on individual email addresses. It sounds > like you're set up to send a single email to multiple addresses, correct? > > Charlotte Foust > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky > Smolin at Beach Access Software > Sent: Monday, September 22, 2008 1:17 PM > To: 'Access Developers discussion and problem solving' > Subject: [AccessD] Email Problem > > Dear List: > > My day for questions. I'm sending emails automatically, unattended, > from this app - scheduled to run at night. When the email contains an > invalid address it generates an error "-21472220977 - the server > rejected one or more recipient addresses. The server response was 550 > 5.1.1 User Unknown. > Possible bad email address" > > then it lists all of the addresses in the To: CC: and BCC: fields, and > the process stops until the user comes in, sees the message and clicks > OK. At which point they don't really know what address was bad. > > I suppose I could use On Error Resume Next at the line which calls the > email send routine. Of course, that way the user will never know that > there was a bad address and that the report didn't go out. So I think > that's not a good solution. > > However, is there a way to verify addresses before sending an email? > Or is there a better approach to this problem? > > MTIA > > Rocky Smolin > > Beach Access Software > > 858-259-4334 > > www.e-z-mrp.com > > www.bchacc.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 rockysmolin at bchacc.com Mon Sep 22 18:20:01 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Mon, 22 Sep 2008 16:20:01 -0700 Subject: [AccessD] Email Problem In-Reply-To: <48D8AAA6.18454.E0AC4B9@stuart.lexacorp.com.pg> References: <018601c91cf0$34907160$0201a8c0@HAL9005> <48D8AAA6.18454.E0AC4B9@stuart.lexacorp.com.pg> Message-ID: <01b901c91d09$bcf0ab10$0201a8c0@HAL9005> Thanks Stuart. That may be the answer. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stuart McLachlan Sent: Monday, September 22, 2008 3:37 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Email Problem You can't check an address without sending a message to it. (Well there is the SMTP VERIFY command, but most servers don't honour it to avoid disclosing valid addresses to spammers) I use Blat.dll to do this sort of automated mailing. Every transmission is logged in a text file which you can programmatically check for errors afterwards. It also returns error codes which you can use to create your own logging routine. Having said that how about a standard error trap: Do On error goto trapit: Docmd.sendmail... or whatever On error goto 0 loop......... .......... exit function trapit: if error = -21472220977 then Log toAddress resume next end if ....... with your own custom Log() function On 22 Sep 2008 at 13:17, Rocky Smolin at Beach Access wrote: > Dear List: > > My day for questions. I'm sending emails automatically, unattended, > from this app - scheduled to run at night. When the email contains an > invalid address it generates an error "-21472220977 - the server > rejected one or more recipient addresses. The server response was 550 5.1.1 User Unknown. > Possible bad email address" > > then it lists all of the addresses in the To: CC: and BCC: fields, and > the process stops until the user comes in, sees the message and clicks > OK. At which point they don't really know what address was bad. > > I suppose I could use On Error Resume Next at the line which calls the > email send routine. Of course, that way the user will never know that > there was a bad address and that the report didn't go out. So I think > that's not a good solution. > > However, is there a way to verify addresses before sending an email? > Or is there a better approach to this problem? > > MTIA > > Rocky Smolin > > Beach Access Software > > 858-259-4334 > > www.e-z-mrp.com > > www.bchacc.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 Sep 22 18:49:50 2008 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Mon, 22 Sep 2008 16:49:50 -0700 Subject: [AccessD] Email Problem In-Reply-To: <01a401c91cfc$d913f570$0201a8c0@HAL9005> References: <018601c91cf0$34907160$0201a8c0@HAL9005> <01a401c91cfc$d913f570$0201a8c0@HAL9005> Message-ID: Redemption is a dll/code library you purchase and then program against to handle emails, including CDO-based, SMTP, etc. It handles the ugly details. As I recall it allows you to use .verify, but that may not be useful to you. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Monday, September 22, 2008 2:48 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Email Problem Correct. What's Redemption? Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Charlotte Foust Sent: Monday, September 22, 2008 1:29 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Email Problem We always used Redemption with our Access apps (and still use it with .Net) and trapped the errors on individual email addresses. It sounds like you're set up to send a single email to multiple addresses, correct? Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Monday, September 22, 2008 1:17 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Email Problem Dear List: My day for questions. I'm sending emails automatically, unattended, from this app - scheduled to run at night. When the email contains an invalid address it generates an error "-21472220977 - the server rejected one or more recipient addresses. The server response was 550 5.1.1 User Unknown. Possible bad email address" then it lists all of the addresses in the To: CC: and BCC: fields, and the process stops until the user comes in, sees the message and clicks OK. At which point they don't really know what address was bad. I suppose I could use On Error Resume Next at the line which calls the email send routine. Of course, that way the user will never know that there was a bad address and that the report didn't go out. So I think that's not a good solution. However, is there a way to verify addresses before sending an email? Or is there a better approach to this problem? MTIA Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.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 JHewson at nciinc.com Mon Sep 22 18:56:21 2008 From: JHewson at nciinc.com (Hewson, Jim ) Date: Mon, 22 Sep 2008 18:56:21 -0500 Subject: [AccessD] Excel object behavior In-Reply-To: <59F4C79E0A20B74990A3775EF2388A894223C68D19@PDAWM03C.ad.sprint.com> References: <59F4C79E0A20B74990A3775EF2388A894223C68D19@PDAWM03C.ad.sprint.com> Message-ID: I have done similar things, but in my experience it didn't matter what I did through code I couldn't get Excel to close. It was always open in the task manager. I finally found a reference somewhere (I don't remember where) that the only way to get it to close was to kill it. IOW I ended up shelling out of Access and using the Killapp command line to enforce its closure. I put that on the exit button on the mdb file. Sometimes I could export another set of data with the Excel instance still open and it would open another instance. With the kill command it closes all instances of Excel. So far it has worked for me. HTH Jim Jim Hewson From: McGillivray, Don [IT] Sent: Mon 9/22/2008 17:10 To: Access Developers discussion and problem solving Subject: [AccessD] Excel object behavior Hello, All I have a procedure that exports a bunch of data to Excel, and then uses the Excel object model to manipulate the resulting spreadsheets (creating pivot tables, applying formatting, and the like.) Usually it works as advertised, but some of my users are having a problem where the UI freezes (or maybe it just appears to freeze). In trying to isolate the problem, I watched the effects of my code carefully, and I notice that the Excel instance that I create in code doesn't terminate until the procedure itself is finished. This, despite the fact that I have closed, quit, and set to nothing all Excel related objects before the end of the procedure. I know through experience that failing to terminate Excel objects correctly leaves the instance alive even at the end of the procedure. So I assume that I'm killing them correctly since the instance does indeed die. Can anybody tell me if I should expect to see the instance survive until the end of the proc, or is there something else I ought to be doing when I'm finished with Excel? Thanks! Don McGillivray -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com ################################################################################ This email transmission contains information from NCI Information Systems, Inc. that may be considered privileged or confidential and is intended solely for the named recipient. If you have received this message in error, please contact the sender immediately and be aware that the use, copying or dissemination of this information is prohibited. ################################################################################ From stuart at lexacorp.com.pg Mon Sep 22 20:37:10 2008 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Tue, 23 Sep 2008 11:37:10 +1000 Subject: [AccessD] Excel object behavior In-Reply-To: References: <59F4C79E0A20B74990A3775EF2388A894223C68D19@PDAWM03C.ad.sprint.com>, Message-ID: <48D84846.652.1ED969EA@stuart.lexacorp.com.pg> Don't know about Excel, but I've had a similar problem occur in Word. The problem turned out to be using Unqualified References. It's explained at http://support.microsoft.com/kb/319832 Here's an example from that page which illustrates your problem: Qualifying the Code to Avoid Errors The best guideline is to avoid using any Office object that you do not explicitly call from a parent object that you set in a specific variable. In other words, look for code that uses Office objects without qualifying which Office instance or document that it is supposed to refer to. For example, this code uses an unqualified call to display the count of open workbooks in Microsoft Excel: Sub CreateThreeBooks() Dim oXL As Excel.Application Dim i As Long ' Create Excel instance (make it visible for test)... Set oXL = New Excel.Application oXL.Visible = True ' Open a few empty workbooks... For i = 1 To 3 oXL.Workbooks.Add Next i ' How many books did we open? MsgBox "Number of workbooks: " & Workbooks.Count, vbMsgBoxSetForeground ' Shutdown Excel (or do we?)... oXL.Quit Set oXL = Nothing ' Check the Processes list. Excel.exe is still running! End Sub When you run the code, it appears to run correctly the first time. However, Excel continues to run, even though you called the Quit method. If you call the code again, the message box now incorrectly displays 0 for the workbook count. Your code may now fail where you would expect it to succeed. To resolve both problems, you must fully qualify the Workbooks object that you reference for the count, as follows: MsgBox "Number of workbooks: " & oXL.Workbooks.Count, vbMsgBoxSetForeground > From: McGillivray, Don [IT] > Sent: Mon 9/22/2008 17:10 > To: Access Developers discussion and problem solving > Subject: [AccessD] Excel object behavior > > > Hello, All > > I have a procedure that exports a bunch of data to Excel, and then > uses the Excel object model to manipulate the resulting spreadsheets > (creating pivot tables, applying formatting, and the like.) Usually > it works as advertised, but some of my users are having a problem > where the UI freezes (or maybe it just appears to freeze). > > In trying to isolate the problem, I watched the effects of my code > carefully, and I notice that the Excel instance that I create in code > doesn't terminate until the procedure itself is finished. This, > despite the fact that I have closed, quit, and set to nothing all > Excel related objects before the end of the procedure. I know through > experience that failing to terminate Excel objects correctly leaves > the instance alive even at the end of the procedure. So I assume that > I'm killing them correctly since the instance does indeed die. > > Can anybody tell me if I should expect to see the instance survive > until the end of the proc, or is there something else I ought to be > doing when I'm finished with Excel? > > Thanks! > > Don McGillivray > -- Stuart Mclachlan From mmattys at rochester.rr.com Mon Sep 22 21:05:12 2008 From: mmattys at rochester.rr.com (Michael R Mattys) Date: Mon, 22 Sep 2008 22:05:12 -0400 Subject: [AccessD] Excel object behavior References: <59F4C79E0A20B74990A3775EF2388A894223C68D19@PDAWM03C.ad.sprint.com>, <48D84846.652.1ED969EA@stuart.lexacorp.com.pg> Message-ID: <015401c91d20$d14ec850$0402a8c0@Laptop> That is a spectacular find, Stuart ... the beating heart of VB/VBA Why have I never seen this 'feature' discussed before? When I look back now over the years ... lol! Michael R. Mattys MapPoint & Access Dev www.mattysconsulting.com ----- Original Message ----- From: "Stuart McLachlan" To: "Access Developers discussion and problem solving" Sent: Monday, September 22, 2008 9:37 PM Subject: Re: [AccessD] Excel object behavior > Don't know about Excel, but I've had a similar problem occur in Word. The > problem turned > out to be using Unqualified References. It's explained at > http://support.microsoft.com/kb/319832 > > Here's an example from that page which illustrates your problem: > > > Qualifying the Code to Avoid Errors > The best guideline is to avoid using any Office object that you do not > explicitly call from a > parent object that you set in a specific variable. In other words, look > for code that uses > Office objects without qualifying which Office instance or document that > it is supposed to > refer to. For example, this code uses an unqualified call to display the > count of open > workbooks in Microsoft Excel: > > Sub CreateThreeBooks() > Dim oXL As Excel.Application > Dim i As Long > > ' Create Excel instance (make it visible for test)... > Set oXL = New Excel.Application > oXL.Visible = True > > ' Open a few empty workbooks... > For i = 1 To 3 > oXL.Workbooks.Add > Next i > > ' How many books did we open? > MsgBox "Number of workbooks: " & Workbooks.Count, vbMsgBoxSetForeground > > ' Shutdown Excel (or do we?)... > oXL.Quit > Set oXL = Nothing > ' Check the Processes list. Excel.exe is still running! > End Sub > > When you run the code, it appears to run correctly the first time. > However, Excel continues > to run, even though you called the Quit method. If you call the code > again, the message > box now incorrectly displays 0 for the workbook count. Your code may now > fail where you > would expect it to succeed. > > To resolve both problems, you must fully qualify the Workbooks object that > you reference > for the count, as follows: > > MsgBox "Number of workbooks: " & oXL.Workbooks.Count, > vbMsgBoxSetForeground > > > > >> From: McGillivray, Don [IT] >> Sent: Mon 9/22/2008 17:10 >> To: Access Developers discussion and problem solving >> Subject: [AccessD] Excel object behavior >> >> >> Hello, All >> >> I have a procedure that exports a bunch of data to Excel, and then >> uses the Excel object model to manipulate the resulting spreadsheets >> (creating pivot tables, applying formatting, and the like.) Usually >> it works as advertised, but some of my users are having a problem >> where the UI freezes (or maybe it just appears to freeze). >> >> In trying to isolate the problem, I watched the effects of my code >> carefully, and I notice that the Excel instance that I create in code >> doesn't terminate until the procedure itself is finished. This, >> despite the fact that I have closed, quit, and set to nothing all >> Excel related objects before the end of the procedure. I know through >> experience that failing to terminate Excel objects correctly leaves >> the instance alive even at the end of the procedure. So I assume that >> I'm killing them correctly since the instance does indeed die. >> >> Can anybody tell me if I should expect to see the instance survive >> until the end of the proc, or is there something else I ought to be >> doing when I'm finished with Excel? >> >> Thanks! >> >> Don McGillivray >> > -- > Stuart Mclachlan > > > -- > 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 Sep 22 22:07:41 2008 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Tue, 23 Sep 2008 13:07:41 +1000 Subject: [AccessD] Excel object behavior In-Reply-To: <015401c91d20$d14ec850$0402a8c0@Laptop> References: <59F4C79E0A20B74990A3775EF2388A894223C68D19@PDAWM03C.ad.sprint.com>, <015401c91d20$d14ec850$0402a8c0@Laptop> Message-ID: <48D85D7D.16721.1F2C4816@stuart.lexacorp.com.pg> Yep, it took me a long time to track down. I had a function which created a Word document from a template and then stuffed data into it was. I cut and pasted code from the Word Macro recorder to do some formatting of the data once it was inserted. It was generally used only once every few days and it always worked fine. Then when a user tried to call it twice in a row it broke the second time around with a 462 error. I finally tracked it down by googling "Error 462: The remote server machine does not exist or is unavailable." On 22 Sep 2008 at 22:05, Michael R Mattys wrote: > That is a spectacular find, Stuart ... the beating heart of VB/VBA > Why have I never seen this 'feature' discussed before? > When I look back now over the years ... lol! > > Michael R. Mattys > MapPoint & Access Dev > www.mattysconsulting.com > > ----- Original Message ----- > From: "Stuart McLachlan" > To: "Access Developers discussion and problem solving" > > Sent: Monday, September 22, 2008 9:37 PM > Subject: Re: [AccessD] Excel object behavior > > > > Don't know about Excel, but I've had a similar problem occur in Word. The > > problem turned > > out to be using Unqualified References. It's explained at > > http://support.microsoft.com/kb/319832 > > > > Here's an example from that page which illustrates your problem: > > > > > > Qualifying the Code to Avoid Errors > > The best guideline is to avoid using any Office object that you do not > > explicitly call from a > > parent object that you set in a specific variable. In other words, look > > for code that uses > > Office objects without qualifying which Office instance or document that > > it is supposed to > > refer to. For example, this code uses an unqualified call to display the > > count of open > > workbooks in Microsoft Excel: > > > > Sub CreateThreeBooks() > > Dim oXL As Excel.Application > > Dim i As Long > > > > ' Create Excel instance (make it visible for test)... > > Set oXL = New Excel.Application > > oXL.Visible = True > > > > ' Open a few empty workbooks... > > For i = 1 To 3 > > oXL.Workbooks.Add > > Next i > > > > ' How many books did we open? > > MsgBox "Number of workbooks: " & Workbooks.Count, vbMsgBoxSetForeground > > > > ' Shutdown Excel (or do we?)... > > oXL.Quit > > Set oXL = Nothing > > ' Check the Processes list. Excel.exe is still running! > > End Sub > > > > When you run the code, it appears to run correctly the first time. > > However, Excel continues > > to run, even though you called the Quit method. If you call the code > > again, the message > > box now incorrectly displays 0 for the workbook count. Your code may now > > fail where you > > would expect it to succeed. > > > > To resolve both problems, you must fully qualify the Workbooks object that > > you reference > > for the count, as follows: > > > > MsgBox "Number of workbooks: " & oXL.Workbooks.Count, > > vbMsgBoxSetForeground > > > > > > > > > >> From: McGillivray, Don [IT] > >> Sent: Mon 9/22/2008 17:10 > >> To: Access Developers discussion and problem solving > >> Subject: [AccessD] Excel object behavior > >> > >> > >> Hello, All > >> > >> I have a procedure that exports a bunch of data to Excel, and then > >> uses the Excel object model to manipulate the resulting spreadsheets > >> (creating pivot tables, applying formatting, and the like.) Usually > >> it works as advertised, but some of my users are having a problem > >> where the UI freezes (or maybe it just appears to freeze). > >> > >> In trying to isolate the problem, I watched the effects of my code > >> carefully, and I notice that the Excel instance that I create in code > >> doesn't terminate until the procedure itself is finished. This, > >> despite the fact that I have closed, quit, and set to nothing all > >> Excel related objects before the end of the procedure. I know through > >> experience that failing to terminate Excel objects correctly leaves > >> the instance alive even at the end of the procedure. So I assume that > >> I'm killing them correctly since the instance does indeed die. > >> > >> Can anybody tell me if I should expect to see the instance survive > >> until the end of the proc, or is there something else I ought to be > >> doing when I'm finished with Excel? > >> > >> Thanks! > >> > >> Don McGillivray > >> > > -- > > Stuart Mclachlan > > > > > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- Stuart Mclachlan From Darryl.Collins at coles.com.au Mon Sep 22 22:54:23 2008 From: Darryl.Collins at coles.com.au (Darryl Collins) Date: Tue, 23 Sep 2008 13:54:23 +1000 Subject: [AccessD] Dlookups. your opinion please. In-Reply-To: <48D85D7D.16721.1F2C4816@stuart.lexacorp.com.pg> Message-ID: <57E6E6CA42105A48B977303A2CDC2720076DA26FB3@WPEXCH22.retail.ad.cmltd.net.au> Hi All, I have, ummm, inherited a database (SQL Server Back, Access Front) at work. Frankly this thing is a disaster waiting to happen and since the guy who built has left (he used to admin it, and I suspect there were regular band aid repairs and updates to keep it all steady) the actual users are having no end of bother and bugs with it. anyway, I digress... The code is full of DLookups, something which I have not felt the need to use ever. I think I read somewhere that using lots of dlookups is a bad idea. Anyway. What is your opinion on using them? If they are fine and no bother then I am happy to leave them in the code (at least for now). But if they are known to be bothersome then I am more than happy to get rid of them and use something better. this thing just gets more and more ugly. Nearly everything in the VBA code is dimmed as a string and they are wondering why the numeric fields are not populating correctly. messy messy messy. I can see someone in the past has figured out that was a bad idea and redimmed some stuff as double. But they have left the code like this "Dim strMyVariable as Double" which is a right PITA when debugging. And the whole show is being driven client side from Access, rather than server side from SQL Server... Sorry about the rant... cheers and get me another scotch! darryl. This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. From miscellany at mvps.org Mon Sep 22 23:19:22 2008 From: miscellany at mvps.org (Steve Schapel) Date: Tue, 23 Sep 2008 16:19:22 +1200 Subject: [AccessD] Dlookups. your opinion please. In-Reply-To: <57E6E6CA42105A48B977303A2CDC2720076DA26FB3@WPEXCH22.retail.ad.cmltd.net.au> References: <57E6E6CA42105A48B977303A2CDC2720076DA26FB3@WPEXCH22.retail.ad.cmltd.net.au> Message-ID: <48D86E4A.7010002@mvps.org> Darryl, As far as I know, the only real criticism that can be levelled at DLookup (and the other domain aggregate functions) is that it can be a bit slow. However, that would only be noticeable for example if it was being used in a calculated field in a query or some such, based on a table with a large number of records. If you're talking about one-off use within VBA code, it sounds like you may have more pressing things to "fix". Regards Steve Darryl Collins wrote: > Hi All, > > I have, ummm, inherited a database (SQL Server Back, Access Front) at work. Frankly this thing is a disaster waiting to happen and since the guy who built has left (he used to admin it, and I suspect there were regular band aid repairs and updates to keep it all steady) the actual users are having no end of bother and bugs with it. anyway, I digress... > > The code is full of DLookups, something which I have not felt the need to use ever. I think I read somewhere that using lots of dlookups is a bad idea. Anyway. What is your opinion on using them? If they are fine and no bother then I am happy to leave them in the code (at least for now). But if they are known to be bothersome then I am more than happy to get rid of them and use something better. > > this thing just gets more and more ugly. Nearly everything in the VBA code is dimmed as a string and they are wondering why the numeric fields are not populating correctly. messy messy messy. I can see someone in the past has figured out that was a bad idea and redimmed some stuff as double. But they have left the code like this > "Dim strMyVariable as Double" which is a right PITA when debugging. And the whole show is being driven client side from Access, rather than server side from SQL Server... Sorry about the rant... > From stuart at lexacorp.com.pg Mon Sep 22 23:31:11 2008 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Tue, 23 Sep 2008 14:31:11 +1000 Subject: [AccessD] Dlookups. your opinion please. In-Reply-To: <57E6E6CA42105A48B977303A2CDC2720076DA26FB3@WPEXCH22.retail.ad.cmltd.net.au> References: <48D85D7D.16721.1F2C4816@stuart.lexacorp.com.pg>, <57E6E6CA42105A48B977303A2CDC2720076DA26FB3@WPEXCH22.retail.ad.cmltd.net.au> Message-ID: <48D8710F.29375.1F78BA27@stuart.lexacorp.com.pg> I use Dlookup() a fair bit. It's fine for single lookups, but gets very slow if you use it in the wrong place where it gets called multiple times. If you have the same Dlookup in lots of different places and the value is not going to change over the session, call it once to initialise a static function and then use the function. If you call the same Dlookup() several times in a function, populate a variable with it the first time and use the variable from then on. On 23 Sep 2008 at 13:54, Darryl Collins wrote: > Hi All, > > I have, ummm, inherited a database (SQL Server Back, Access Front) at > work. Frankly this thing is a disaster waiting to happen and since > the guy who built has left (he used to admin it, and I suspect there > were regular band aid repairs and updates to keep it all steady) the > actual users are having no end of bother and bugs with it. anyway, I > digress... > > The code is full of DLookups, something which I have not felt the need > to use ever. I think I read somewhere that using lots of dlookups is > a bad idea. Anyway. What is your opinion on using them? If they are > fine and no bother then I am happy to leave them in the code (at least > for now). But if they are known to be bothersome then I am more than > happy to get rid of them and use something better. > > this thing just gets more and more ugly. Nearly everything in the VBA > code is dimmed as a string and they are wondering why the numeric > fields are not populating correctly. messy messy messy. I can see > someone in the past has figured out that was a bad idea and redimmed > some stuff as double. But they have left the code like this "Dim > strMyVariable as Double" which is a right PITA when debugging. And the > whole show is being driven client side from Access, rather than server > side from SQL Server... Sorry about the rant... > > cheers and get me another scotch! > darryl. > > > > This email and any attachments may contain privileged and confidential information > and are intended for the named addressee only. If you have received this e-mail in > error, please notify the sender and delete this e-mail immediately. Any > confidentiality, privilege or copyright is not waived or lost because this e-mail > has been sent to you in error. It is your responsibility to check this e-mail and > any attachments for viruses. No warranty is made that this material is free from > computer virus or any other defect or error. Any loss/damage incurred by using this > material is not the sender's responsibility. The sender's entire liability will be > limited to resupplying the material. > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- Stuart Mclachlan From darren at activebilling.com.au Mon Sep 22 23:53:38 2008 From: darren at activebilling.com.au (Darren D) Date: Tue, 23 Sep 2008 14:53:38 +1000 Subject: [AccessD] Dlookups. your opinion please. In-Reply-To: <57E6E6CA42105A48B977303A2CDC2720076DA26FB3@WPEXCH22.retail.ad.cmltd.net.au> References: <48D85D7D.16721.1F2C4816@stuart.lexacorp.com.pg> <57E6E6CA42105A48B977303A2CDC2720076DA26FB3@WPEXCH22.retail.ad.cmltd.net.au> Message-ID: <02cd01c91d38$594073a0$0d1b910a@denzilnote> Hi Dazza I agree with the other comments - DLookUps are OK - I use 'em quite a bit because I am too lazy to write proper "with rs" loops. And personally won't bother if I can get... strCompanyName = Dlookup("[CompanyName]", "tblOptions") to do what I require - Like Stuart said - Put something like that in a variable at some 'loading' or 'starting' place then refer to the variable rather than continually performing and re-performing the lookup But as mentioned - A whole swag of 'em can slow things a bit. Also avoid doing any DLookups in loops See ya Dazza2 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darryl Collins Sent: Tuesday, 23 September 2008 1:54 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Dlookups. your opinion please. Hi All, I have, ummm, inherited a database (SQL Server Back, Access Front) at work. Frankly this thing is a disaster waiting to happen and since the guy who built has left (he used to admin it, and I suspect there were regular band aid repairs and updates to keep it all steady) the actual users are having no end of bother and bugs with it. anyway, I digress... The code is full of DLookups, something which I have not felt the need to use ever. I think I read somewhere that using lots of dlookups is a bad idea. Anyway. What is your opinion on using them? If they are fine and no bother then I am happy to leave them in the code (at least for now). But if they are known to be bothersome then I am more than happy to get rid of them and use something better. this thing just gets more and more ugly. Nearly everything in the VBA code is dimmed as a string and they are wondering why the numeric fields are not populating correctly. messy messy messy. I can see someone in the past has figured out that was a bad idea and redimmed some stuff as double. But they have left the code like this "Dim strMyVariable as Double" which is a right PITA when debugging. And the whole show is being driven client side from Access, rather than server side from SQL Server... Sorry about the rant... cheers and get me another scotch! darryl. This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Darryl.Collins at coles.com.au Mon Sep 22 23:57:27 2008 From: Darryl.Collins at coles.com.au (Darryl Collins) Date: Tue, 23 Sep 2008 14:57:27 +1000 Subject: [AccessD] Dlookups. your opinion please. In-Reply-To: <02cd01c91d38$594073a0$0d1b910a@denzilnote> Message-ID: <57E6E6CA42105A48B977303A2CDC2720076DA26FBA@WPEXCH22.retail.ad.cmltd.net.au> Thanks Guys! :) Verdict is in and I will leave them as they are. Although they are used extensively, it seems to be in a way that is mostly harmless. Right now I have more pressing issues to deal with regarding this system. Cheers! Darryl -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Darren D Sent: Tuesday, 23 September 2008 2:54 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Dlookups. your opinion please. Hi Dazza I agree with the other comments - DLookUps are OK - I use 'em quite a bit because I am too lazy to write proper "with rs" loops. And personally won't bother if I can get... strCompanyName = Dlookup("[CompanyName]", "tblOptions") to do what I require - Like Stuart said - Put something like that in a variable at some 'loading' or 'starting' place then refer to the variable rather than continually performing and re-performing the lookup But as mentioned - A whole swag of 'em can slow things a bit. Also avoid doing any DLookups in loops See ya Dazza2 -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darryl Collins Sent: Tuesday, 23 September 2008 1:54 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Dlookups. your opinion please. Hi All, I have, ummm, inherited a database (SQL Server Back, Access Front) at work. Frankly this thing is a disaster waiting to happen and since the guy who built has left (he used to admin it, and I suspect there were regular band aid repairs and updates to keep it all steady) the actual users are having no end of bother and bugs with it. anyway, I digress... The code is full of DLookups, something which I have not felt the need to use ever. I think I read somewhere that using lots of dlookups is a bad idea. Anyway. What is your opinion on using them? If they are fine and no bother then I am happy to leave them in the code (at least for now). But if they are known to be bothersome then I am more than happy to get rid of them and use something better. this thing just gets more and more ugly. Nearly everything in the VBA code is dimmed as a string and they are wondering why the numeric fields are not populating correctly. messy messy messy. I can see someone in the past has figured out that was a bad idea and redimmed some stuff as double. But they have left the code like this "Dim strMyVariable as Double" which is a right PITA when debugging. And the whole show is being driven client side from Access, rather than server side from SQL Server... Sorry about the rant... cheers and get me another scotch! darryl. This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/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 email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. From rockysmolin at bchacc.com Tue Sep 23 00:51:56 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Mon, 22 Sep 2008 22:51:56 -0700 Subject: [AccessD] Dlookups. your opinion please. In-Reply-To: <57E6E6CA42105A48B977303A2CDC2720076DA26FB3@WPEXCH22.retail.ad.cmltd.net.au> References: <48D85D7D.16721.1F2C4816@stuart.lexacorp.com.pg> <57E6E6CA42105A48B977303A2CDC2720076DA26FB3@WPEXCH22.retail.ad.cmltd.net.au> Message-ID: <01fc01c91d40$7cf19790$0201a8c0@HAL9005> If the response time is OK and they're working, then I'd leave them be. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darryl Collins Sent: Monday, September 22, 2008 8:54 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Dlookups. your opinion please. Hi All, I have, ummm, inherited a database (SQL Server Back, Access Front) at work. Frankly this thing is a disaster waiting to happen and since the guy who built has left (he used to admin it, and I suspect there were regular band aid repairs and updates to keep it all steady) the actual users are having no end of bother and bugs with it. anyway, I digress... The code is full of DLookups, something which I have not felt the need to use ever. I think I read somewhere that using lots of dlookups is a bad idea. Anyway. What is your opinion on using them? If they are fine and no bother then I am happy to leave them in the code (at least for now). But if they are known to be bothersome then I am more than happy to get rid of them and use something better. this thing just gets more and more ugly. Nearly everything in the VBA code is dimmed as a string and they are wondering why the numeric fields are not populating correctly. messy messy messy. I can see someone in the past has figured out that was a bad idea and redimmed some stuff as double. But they have left the code like this "Dim strMyVariable as Double" which is a right PITA when debugging. And the whole show is being driven client side from Access, rather than server side from SQL Server... Sorry about the rant... cheers and get me another scotch! darryl. This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at smsconsulting.spb.ru Tue Sep 23 01:26:53 2008 From: shamil at smsconsulting.spb.ru (Shamil Salakhetdinov) Date: Tue, 23 Sep 2008 10:26:53 +0400 Subject: [AccessD] OT: Weekend, technology OT: Microsoft Surface Computing.... In-Reply-To: Message-ID: <001501c91d45$5fea9d90$6401a8c0@nant> Thank you, Jurgen, Hi all, Have a look at the following clips: 50USD "virtual whiteboard" + free software: Johnny Lee: Wii Remote hacks http://www.youtube.com/watch?v=QgKCrGvShZs&feature=related Low-Cost Multi-touch Whiteboard using the Wiimote http://www.youtube.com/watch?v=5s5EvhHy7eQ Head Tracking for Desktop VR Displays using the WiiRemote http://www.youtube.com/watch?v=Jd3-eiid-Uw Foldable Displays (tracked with the Wiimote) http://www.youtube.com/watch?v=nhSR_6-Y5Kg&feature=user Arthur, you can use virtual pencils with that thing, even in a buthtub :) Darryl, this thing is not expensive - should be to affordable to the schools worldwide... Amazing... -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jurgen Welz Sent: Tuesday, September 23, 2008 12:46 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT: Weekend,technology OT: Microsoft Surface Computing.... Looks a lot like this stuff from Feb 2006: http://www.ted.com/index.php/talks/jeff_han_demos_his_breakthrough_touchscre en.html CiaoJ?rgen WelzEdmonton, Albertajwelz at hotmail.com> From: shamil at smsconsulting.spb.ru> To: accessd at databaseadvisors.com> Date: Mon, 22 Sep 2008 00:49:34 +0400> Subject: Re: [AccessD] OT: Weekend, technology OT: Microsoft Surface Computing....> > Hi Gustav and Max,> > Yes, this technology was first announced in 2007 - the question here is what> is your feelings/expectations there how much it will take until it gets> broadly used in the office work (if ever) - I mean it's getting developed> there at MS:> > http://www.microsoft.com/presspass/press/2008/apr08/04-01SurfaceRetailPR.msp > x > > http://www.microsoft.com/surface/index.html > > But still expensive...> > And they say it's available now in AT&T stores - used by merchants to talk> with the customers/present them goods etc. ASAIU - did anybody see/touch it> there live? - it looks so amazing. How it's done? Some-infrared> transmitters/detectors located very close to the screen surface? Why this> "smart coffer tables" are still so thick? Is there anywhere description how> it's done?> > Thank you. _________________________________________________________________ -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From stephen at bondsoftware.co.nz Tue Sep 23 02:13:21 2008 From: stephen at bondsoftware.co.nz (Stephen) Date: Tue, 23 Sep 2008 19:13:21 +1200 Subject: [AccessD] Building a spreadsheet from Access ... slow segment ofcode Message-ID: <569E08FC48047F4F848850B118195FBE03831C@server.BondSoftware.local> NAILED IT !!!! It's the printer spool service (spoolsv.exe) that's the problem. The default printer on my PC is a network printer and the slow VB code is where I set up: page margins, orientation, 3 footers, 3 headers, PaperSize, CenterVertically, CenterHorizontally, etc etc (see below). I changed the default printer to a local printer (Win2PDF in this case), re-ran the routine, and the time elapsed went from 40+ minutes to 4 minutes. Thanks to the head techie from my local supplier, who was a fresh-faced IT student of mine 20 years ago at the local Community College. He was round for a quiet one after work tonight and recognised the situation as one he'd dealt with previously in a CAD environment. What goes around ... Thanks to all for your input. Stephen Bond -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stephen Sent: Sunday, 7 September 2008 2:15 p.m. To: Stephen Subject: Re: [AccessD] Building a spreadsheet from Access ... slow segment ofcode Darryl, A couple of things 1...yes, I always set ScreenUpdating to False 2...will check the defaults now, but they may be diferent on target machine(s). This is why I left them in there. Comments? 3...the code is embedded in an Access system. Will see if I can extract the relevant bits. Are you still interested if I can do this? Stephen Bond -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Darryl Collins Sent: Sunday, 7 September 2008 1:16 p.m. To: Stephen Subject: Re: [AccessD] Building a spreadsheet from Access ... slow segment ofcode Stephen, Excel has always had an issue that setting up print ranges in Code takes F O R E V E R!!! I am not sure it is a 'bug' as such, but it is well known and long standingn issue. I suggest you take out absolutely everything except what you need to change. Check what Excel's Defaults are and DO NOT set them again in code, only put in there the stuff that changes the default. Add in BEFORE the code starts Application.calculation = xlcalculationmanual Application.screenupdating = False If it is still super slow, email me the file offlist and I will clean up your Excel VBA code so it all runs faster. Cheers Darryl. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Stephen Sent: Saturday, 6 September 2008 5:45 PM To: Access Developers discussion and problem solving Subject: [AccessD] Building a spreadsheet from Access ... slow segment of code The code segment below takes around 10 seconds to run. The worksheet has been just created in code, an embedded chart has been built on the worksheet (again, code), and the code below is the 'prettying up' bit. Yep, to get it, I recorded a macro in Excel and then commented out the bits I didn't want/didn't work. I put some rudimentary time checks at random places in this segment. Embedded in the sample, I have put the elapsed time it took to get to the indicated line. Any ideas? The rest of it runs really fast on a 6-year-old PC (768MB, WinXP SP2, Processor x86 Family 6 Model 8 Stepping 0 AuthenticAMD ~1529 Mhz) but I can't see why this is happening. I am generating a couple of hundred sheets at a time, so the slowness is not trivial. TIA Stephen Bond ' finally build print specs xlWs.Range("A1").Select With xlWb.ActiveSheet.PageSetup .PrintArea = "" .PrintTitleRows = "" .PrintTitleColumns = "" .LeftHeader = "&6&Z&F!&A" ' 0 seconds .CenterHeader = "&""Arial,Bold""&16&A" .RightHeader = "&6Printed &D &T" .LeftFooter = "&6Prepared by Stephen Bond for " & conUser1 .CenterFooter = "&""Arial,Bold""&16&A" .RightFooter = "&6based on an idea by J McKinlay, Southland Boys' High School" ' 3 seconds ' .LeftMargin = Application.InchesToPoints(0.75) ' .RightMargin = Application.InchesToPoints(0.75) ' .TopMargin = Application.InchesToPoints(0.75) ' .BottomMargin = Application.InchesToPoints(0.75) ' .HeaderMargin = Application.InchesToPoints(0.5) ' .FooterMargin = Application.InchesToPoints(0.5) .PrintHeadings = False .PrintGridlines = True .PrintComments = xlPrintNoComments ' 5 seconds ''''' .PrintQuality = -4 .CenterHorizontally = True .CenterVertically = False .Orientation = xlLandscape .Draft = False ' 7 seconds .PaperSize = xlPaperA4 .FirstPageNumber = xlAutomatic .Order = xlDownThenOver .BlackAndWhite = False .Zoom = False ' 10 seconds .FitToPagesWide = 1 .FitToPagesTall = 1 .PrintErrors = xlPrintErrorsDisplayed ' 10 seconds End With -- From max.wanadoo at gmail.com Tue Sep 23 02:24:46 2008 From: max.wanadoo at gmail.com (Max Wanadoo) Date: Tue, 23 Sep 2008 08:24:46 +0100 Subject: [AccessD] Change Field Type In-Reply-To: <000c01c91ced$54cd5720$6401a8c0@nant> References: <017a01c91ce9$3ce07330$0201a8c0@HAL9005> <000c01c91ced$54cd5720$6401a8c0@nant> Message-ID: Hi Rocky, don't know if these links are any use:- http://www.blueclaw-db.com/alter_table_ddl.htm http://office.microsoft.com/en-us/access/HP010322071033.aspx Max On Mon, Sep 22, 2008 at 8:56 PM, Shamil Salakhetdinov < shamil at smsconsulting.spb.ru> wrote: > Hi Rocky, > > I'd think you have to: > > - 1) create a new column with required data type; > - 2) set values of this new column using update SQL clause; > - 3) delete old column; > - 4) rename new column to the old column name; > - 5) change ordinal position for the renamed column (can be done in step > (4) > - 6) set indexes for the new column if needed... > - 7) (re-)define relationships; > > I can be wrong but I suppose that changing column type in code directly in > one step isn't possible... > > As we all know it's possible to change column type in one direct step in > design mode but I'd suppose that "under the hood" the above sequence of > actions is performed... > > Thank you. > > -- > Shamil > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at > Beach Access Software > Sent: Monday, September 22, 2008 11:27 PM > To: 'Access Developers discussion and problem solving' > Subject: [AccessD] Change Field Type > > Dear List: > > I am trying to change the type of a field 'StartBase' in table > 'MatterActions' from Number to Boolean. I've tried two approaches: > > 1) dbs.Execute "ALTER TABLE [MatterActions] ALTER Column StartBase Boolean" > givers the error 3381 There is no field named 'Boolean' in table > 'MatterActions' > > 2) Set tdf = dbs.TableDefs("MatterActions") > tdf.Fields("StartBase").Type = dbBoolean > > gives the error invalid operation on the second line. > > Does anyone know the correct code to change this field's type? > > MTIA > > 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 shamil at smsconsulting.spb.ru Tue Sep 23 02:33:10 2008 From: shamil at smsconsulting.spb.ru (Shamil Salakhetdinov) Date: Tue, 23 Sep 2008 11:33:10 +0400 Subject: [AccessD] OT: Weekend, technology OT: Microsoft Surface Computing.... Message-ID: <000401c91d4e$a37e0750$6401a8c0@nant> Update: This 50USD wiiremote based "virtual whiteboard" will need a projector, which costs around USD500 here (low end but still not bad models) - so this alternative to MS Surface Computing "virtual whiteboard" solution isn't yet that cheap to be affordable broadly worldwide... Sorry for any inconvenience... Thank you. -- Shamil -----Original Message----- From: Shamil Salakhetdinov [mailto:shamil at smsconsulting.spb.ru] Sent: Tuesday, September 23, 2008 10:27 AM To: 'Access Developers discussion and problem solving' Subject: RE: [AccessD] OT: Weekend,technology OT: Microsoft Surface Computing.... Thank you, Jurgen, Hi all, Have a look at the following clips: 50USD "virtual whiteboard" + free software: Johnny Lee: Wii Remote hacks http://www.youtube.com/watch?v=QgKCrGvShZs&feature=related Low-Cost Multi-touch Whiteboard using the Wiimote http://www.youtube.com/watch?v=5s5EvhHy7eQ Head Tracking for Desktop VR Displays using the WiiRemote http://www.youtube.com/watch?v=Jd3-eiid-Uw Foldable Displays (tracked with the Wiimote) http://www.youtube.com/watch?v=nhSR_6-Y5Kg&feature=user Arthur, you can use virtual pencils with that thing, even in a buthtub :) Darryl, this thing is not expensive - should be to affordable to the schools worldwide... Amazing... -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jurgen Welz Sent: Tuesday, September 23, 2008 12:46 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] OT: Weekend,technology OT: Microsoft Surface Computing.... Looks a lot like this stuff from Feb 2006: http://www.ted.com/index.php/talks/jeff_han_demos_his_breakthrough_touchscre en.html CiaoJ?rgen WelzEdmonton, Albertajwelz at hotmail.com> From: shamil at smsconsulting.spb.ru> To: accessd at databaseadvisors.com> Date: Mon, 22 Sep 2008 00:49:34 +0400> Subject: Re: [AccessD] OT: Weekend, technology OT: Microsoft Surface Computing....> > Hi Gustav and Max,> > Yes, this technology was first announced in 2007 - the question here is what> is your feelings/expectations there how much it will take until it gets> broadly used in the office work (if ever) - I mean it's getting developed> there at MS:> > http://www.microsoft.com/presspass/press/2008/apr08/04-01SurfaceRetailPR.msp > x > > http://www.microsoft.com/surface/index.html > > But still expensive...> > And they say it's available now in AT&T stores - used by merchants to talk> with the customers/present them goods etc. ASAIU - did anybody see/touch it> there live? - it looks so amazing. How it's done? Some-infrared> transmitters/detectors located very close to the screen surface? Why this> "smart coffer tables" are still so thick? Is there anywhere description how> it's done?> > Thank you. _________________________________________________________________ -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From rockysmolin at bchacc.com Tue Sep 23 07:01:45 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Tue, 23 Sep 2008 05:01:45 -0700 Subject: [AccessD] Change Field Type In-Reply-To: References: <017a01c91ce9$3ce07330$0201a8c0@HAL9005><000c01c91ced$54cd5720$6401a8c0@nant> Message-ID: <000b01c91d74$26954b60$0201a8c0@HAL9005> Max: In the Microsoft Office article it says I can do what I'm trying to do but didn't seem to work. It says: **************************** Use ALTER COLUMN to change the data type of an existing field. You specify the field name, the new data type, and an optional size for Text and Binary fields. For example, the following statement changes the data type of a field in the Employees table called ZipCode (originally defined as Integer) to a 10-character Text field: ALTER TABLE Employees ALTER COLUMN ZipCode TEXT(10) **************************** I tried: dbs.Execute "ALTER TABLE [MatterActions] ALTER Column [StartBase] Boolean" And got the error 3381 There is no field named 'Boolean' in table 'MatterActions' Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Max Wanadoo Sent: Tuesday, September 23, 2008 12:25 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Change Field Type Hi Rocky, don't know if these links are any use:- http://www.blueclaw-db.com/alter_table_ddl.htm http://office.microsoft.com/en-us/access/HP010322071033.aspx Max On Mon, Sep 22, 2008 at 8:56 PM, Shamil Salakhetdinov < shamil at smsconsulting.spb.ru> wrote: > Hi Rocky, > > I'd think you have to: > > - 1) create a new column with required data type; > - 2) set values of this new column using update SQL clause; > - 3) delete old column; > - 4) rename new column to the old column name; > - 5) change ordinal position for the renamed column (can be done in > step > (4) > - 6) set indexes for the new column if needed... > - 7) (re-)define relationships; > > I can be wrong but I suppose that changing column type in code > directly in one step isn't possible... > > As we all know it's possible to change column type in one direct step > in design mode but I'd suppose that "under the hood" the above > sequence of actions is performed... > > Thank you. > > -- > Shamil > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky > Smolin at Beach Access Software > Sent: Monday, September 22, 2008 11:27 PM > To: 'Access Developers discussion and problem solving' > Subject: [AccessD] Change Field Type > > Dear List: > > I am trying to change the type of a field 'StartBase' in table > 'MatterActions' from Number to Boolean. I've tried two approaches: > > 1) dbs.Execute "ALTER TABLE [MatterActions] ALTER Column StartBase Boolean" > givers the error 3381 There is no field named 'Boolean' in table > 'MatterActions' > > 2) Set tdf = dbs.TableDefs("MatterActions") > tdf.Fields("StartBase").Type = dbBoolean > > gives the error invalid operation on the second line. > > Does anyone know the correct code to change this field's type? > > MTIA > > 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 Gustav at cactus.dk Tue Sep 23 07:15:33 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Tue, 23 Sep 2008 14:15:33 +0200 Subject: [AccessD] Change Field Type Message-ID: Hi Rocky Try with: dbs.Execute "ALTER TABLE [MatterActions] ALTER Column [StartBase] Bit" /gustav >>> rockysmolin at bchacc.com 23-09-2008 14:01 >>> Max: In the Microsoft Office article it says I can do what I'm trying to do but didn't seem to work. It says: **************************** Use ALTER COLUMN to change the data type of an existing field. You specify the field name, the new data type, and an optional size for Text and Binary fields. For example, the following statement changes the data type of a field in the Employees table called ZipCode (originally defined as Integer) to a 10-character Text field: ALTER TABLE Employees ALTER COLUMN ZipCode TEXT(10) **************************** I tried: dbs.Execute "ALTER TABLE [MatterActions] ALTER Column [StartBase] Boolean" And got the error 3381 There is no field named 'Boolean' in table 'MatterActions' Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Max Wanadoo Sent: Tuesday, September 23, 2008 12:25 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Change Field Type Hi Rocky, don't know if these links are any use:- http://www.blueclaw-db.com/alter_table_ddl.htm http://office.microsoft.com/en-us/access/HP010322071033.aspx Max On Mon, Sep 22, 2008 at 8:56 PM, Shamil Salakhetdinov < shamil at smsconsulting.spb.ru> wrote: > Hi Rocky, > > I'd think you have to: > > - 1) create a new column with required data type; > - 2) set values of this new column using update SQL clause; > - 3) delete old column; > - 4) rename new column to the old column name; > - 5) change ordinal position for the renamed column (can be done in step (4) > - 6) set indexes for the new column if needed... > - 7) (re-)define relationships; > > I can be wrong but I suppose that changing column type in code > directly in one step isn't possible... > > As we all know it's possible to change column type in one direct step > in design mode but I'd suppose that "under the hood" the above > sequence of actions is performed... > > Thank you. > > -- > Shamil > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky > Smolin at Beach Access Software > Sent: Monday, September 22, 2008 11:27 PM > To: 'Access Developers discussion and problem solving' > Subject: [AccessD] Change Field Type > > Dear List: > > I am trying to change the type of a field 'StartBase' in table > 'MatterActions' from Number to Boolean. I've tried two approaches: > > 1) dbs.Execute "ALTER TABLE [MatterActions] ALTER Column StartBase Boolean" > givers the error 3381 There is no field named 'Boolean' in table > 'MatterActions' > > 2) Set tdf = dbs.TableDefs("MatterActions") > tdf.Fields("StartBase").Type = dbBoolean > > gives the error invalid operation on the second line. > > Does anyone know the correct code to change this field's type? > > MTIA > > Rocky From stuart at lexacorp.com.pg Tue Sep 23 07:44:30 2008 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Tue, 23 Sep 2008 22:44:30 +1000 Subject: [AccessD] Change Field Type In-Reply-To: <000b01c91d74$26954b60$0201a8c0@HAL9005> References: <017a01c91ce9$3ce07330$0201a8c0@HAL9005>, , <000b01c91d74$26954b60$0201a8c0@HAL9005> Message-ID: <48D9714E.32712.1112C4B0@stuart.lexacorp.com.pg> They don't call it a Boolean field in Access. It's a "Yes/No" field. This works for me: dbs.Execute "ALTER TABLE [MatterActions] ALTER Column [StartBase] YesNo" On 23 Sep 2008 at 5:01, Rocky Smolin at Beach Access wrote: > Max: > > In the Microsoft Office article it says I can do what I'm trying to do but > didn't seem to work. It says: > > **************************** > Use ALTER COLUMN to change the data type of an existing field. You specify > the field name, the new data type, and an optional size for Text and Binary > fields. For example, the following statement changes the data type of a > field in the Employees table called ZipCode (originally defined as Integer) > to a 10-character Text field: > > ALTER TABLE Employees ALTER COLUMN ZipCode TEXT(10) > **************************** > > I tried: > > dbs.Execute "ALTER TABLE [MatterActions] ALTER Column [StartBase] Boolean" > > And got the error 3381 There is no field named 'Boolean' in table > 'MatterActions' > > > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > www.bchacc.com > > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Max Wanadoo > Sent: Tuesday, September 23, 2008 12:25 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Change Field Type > > Hi Rocky, > > don't know if these links are any use:- > > http://www.blueclaw-db.com/alter_table_ddl.htm > http://office.microsoft.com/en-us/access/HP010322071033.aspx > > Max > > > > On Mon, Sep 22, 2008 at 8:56 PM, Shamil Salakhetdinov < > shamil at smsconsulting.spb.ru> wrote: > > > Hi Rocky, > > > > I'd think you have to: > > > > - 1) create a new column with required data type; > > - 2) set values of this new column using update SQL clause; > > - 3) delete old column; > > - 4) rename new column to the old column name; > > - 5) change ordinal position for the renamed column (can be done in > > step > > (4) > > - 6) set indexes for the new column if needed... > > - 7) (re-)define relationships; > > > > I can be wrong but I suppose that changing column type in code > > directly in one step isn't possible... > > > > As we all know it's possible to change column type in one direct step > > in design mode but I'd suppose that "under the hood" the above > > sequence of actions is performed... > > > > Thank you. > > > > -- > > Shamil > > > > -----Original Message----- > > From: accessd-bounces at databaseadvisors.com > > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky > > Smolin at Beach Access Software > > Sent: Monday, September 22, 2008 11:27 PM > > To: 'Access Developers discussion and problem solving' > > Subject: [AccessD] Change Field Type > > > > Dear List: > > > > I am trying to change the type of a field 'StartBase' in table > > 'MatterActions' from Number to Boolean. I've tried two approaches: > > > > 1) dbs.Execute "ALTER TABLE [MatterActions] ALTER Column StartBase > Boolean" > > givers the error 3381 There is no field named 'Boolean' in table > > 'MatterActions' > > > > 2) Set tdf = dbs.TableDefs("MatterActions") > > tdf.Fields("StartBase").Type = dbBoolean > > > > gives the error invalid operation on the second line. > > > > Does anyone know the correct code to change this field's type? > > > > MTIA > > > > 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 > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From jimdettman at verizon.net Tue Sep 23 07:45:58 2008 From: jimdettman at verizon.net (Jim Dettman) Date: Tue, 23 Sep 2008 08:45:58 -0400 Subject: [AccessD] CDO/Priority flag. In-Reply-To: References: <97C89F39C3ED4FBBB59C10F661DA20E8@XPS> Message-ID: <01b201c91d7a$5427a630$7c00000a@LaptopII> Joe, I'll give that a shot. I know for sure already that there is no space in there. Everything past the first address is ignored for the To, CC, and BCC, so it's something I doing. I'll let you know if it works. Thanks, Jim. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Joe O'Connell Sent: Friday, September 19, 2008 11:20 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] CDO/Priority flag. Jim, Try putting a space after the semi-colon for multiple recipients. Joe O'Connell -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Dettman Sent: Friday, September 19, 2008 1:12 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] CDO/Priority flag. All, This seems like it should be simple, and yet an internet search turns up a variety of answers, none of which seems to work. I've never worked with CDO before, but have instead preferred to use vbSendMail, but I have a client that wants to go with CDO as that's what is being used with the rest of the apps they already have. This is a simple "send an e-mail" based on a table utility. Two things don't seem to be working right; multiple recipients and setting a priority flag. For the multiple recipients, I'm using a semi-colon delimited list. For the priority flag, I've tried it as part of the configuration setting and as a change to the message fields (I get an error with this method about being disconnect from the client and Access then hangs at exit). Can't believe I've spent the amount of time I have on something that should be so simple. Anyone got any insight on this? Code is below. Jim. Public Sub DoEmailTask(strTaskName As String) Dim db As DAO.Database Dim rst As DAO.Recordset Dim strSQL As String Dim strMsg As String Dim objMessage As Object On Error GoTo DoEmailTask_Error Set db = CurrentDb() strSQL = "SELECT * FROM tblEmailTasks WHERE [EmailTaskName] = '" & strTaskName & "'" Set rst = db.OpenRecordset(strSQL) If rst.RecordCount = 0 Then ' Task name not in table strMsg = "Mail task name '" & strTaskName & "' was not found in tblEmailTasks." MsgBox strMsg, vbCritical + vbOKOnly, "Invalid e-mail task name" Else With rst ' Send the e-mail Set objMessage = CreateObject("CDO.Message") ' Don't rely on configuration settting on client objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/sendusing") = !SendUsing objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/smtpserver") = !SMTPServer objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/smtpauthenticate") = !SMTPAuthenticate objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/sendusername") = !SendUserName objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/sendpassword") = !SendUserPassword objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/sendusing") = !SendUsing objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/smtpserverport") = !SMTPPort objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/smtpusessl") = !UseSSL objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/smtpconnectiontimeout") = !ConnectTimeout 'objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/ conf iguration/priority") = !priority objMessage.Configuration.Fields.Item("urn:schemas:mailheader:X-MSMail-Pr iori ty") = 0 objMessage.Configuration.Fields.Update Stop objMessage.From = !From objMessage.To = !To objMessage.CC = !CC objMessage.BCC = !BCC objMessage.Subject = !Subject objMessage.TextBody = !Message objMessage.Send End With End If DoEmailTask_Exit: Set objMessage = Nothing If Not rst Is Nothing Then rst.Close Set rst = Nothing End If Set db = Nothing Exit Sub DoEmailTask_Error: Resume DoEmailTask_Exit 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 jimdettman at verizon.net Tue Sep 23 07:45:58 2008 From: jimdettman at verizon.net (Jim Dettman) Date: Tue, 23 Sep 2008 08:45:58 -0400 Subject: [AccessD] CDO/Priority flag. In-Reply-To: References: Message-ID: <01b301c91d7a$54680a90$7c00000a@LaptopII> Gustav, Thanks. I had found that site earlier and tried the code, but still couldn't get it to work. I'll give it another swing and let you know. Thanks, Jim. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Friday, September 19, 2008 4:01 PM To: accessd at databaseadvisors.com Subject: Re: [AccessD] CDO/Priority flag. Hi Jim Which values are you passing to Priority? Some are for Outlook, some for normal mail clients: http://classicasp.aspfaq.com/email/how-do-i-alter-the-priority/importance-of -an-e-mail-message.html /gustav >>> jimdettman at verizon.net 19-09-2008 19:12 >>> All, This seems like it should be simple, and yet an internet search turns up a variety of answers, none of which seems to work. I've never worked with CDO before, but have instead preferred to use vbSendMail, but I have a client that wants to go with CDO as that's what is being used with the rest of the apps they already have. This is a simple "send an e-mail" based on a table utility. Two things don't seem to be working right; multiple recipients and setting a priority flag. For the multiple recipients, I'm using a semi-colon delimited list. For the priority flag, I've tried it as part of the configuration setting and as a change to the message fields (I get an error with this method about being disconnect from the client and Access then hangs at exit). Can't believe I've spent the amount of time I have on something that should be so simple. Anyone got any insight on this? Code is below. Jim. Public Sub DoEmailTask(strTaskName As String) Dim db As DAO.Database Dim rst As DAO.Recordset Dim strSQL As String Dim strMsg As String Dim objMessage As Object On Error GoTo DoEmailTask_Error Set db = CurrentDb() strSQL = "SELECT * FROM tblEmailTasks WHERE [EmailTaskName] = '" & strTaskName & "'" Set rst = db.OpenRecordset(strSQL) If rst.RecordCount = 0 Then ' Task name not in table strMsg = "Mail task name '" & strTaskName & "' was not found in tblEmailTasks." MsgBox strMsg, vbCritical + vbOKOnly, "Invalid e-mail task name" Else With rst ' Send the e-mail Set objMessage = CreateObject("CDO.Message") ' Don't rely on configuration settting on client objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/sendusing") = !SendUsing objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/smtpserver") = !SMTPServer objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/smtpauthenticate") = !SMTPAuthenticate objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/sendusername") = !SendUserName objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/sendpassword") = !SendUserPassword objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/sendusing") = !SendUsing objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/smtpserverport") = !SMTPPort objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/smtpusessl") = !UseSSL objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/confi guration/smtpconnectiontimeout") = !ConnectTimeout 'objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/conf iguration/priority") = !priority objMessage.Configuration.Fields.Item("urn:schemas:mailheader:X-MSMail-Priori ty") = 0 objMessage.Configuration.Fields.Update Stop objMessage.From = !From objMessage.To = !To objMessage.CC = !CC objMessage.BCC = !BCC objMessage.Subject = !Subject objMessage.TextBody = !Message objMessage.Send End With End If DoEmailTask_Exit: Set objMessage = Nothing If Not rst Is Nothing Then rst.Close Set rst = Nothing End If Set db = Nothing Exit Sub DoEmailTask_Error: Resume DoEmailTask_Exit End Sub -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From doug at starntech.com Tue Sep 23 08:13:44 2008 From: doug at starntech.com (Doug Barnes) Date: Tue, 23 Sep 2008 09:13:44 -0400 Subject: [AccessD] CDO/Priority flag. In-Reply-To: <01b201c91d7a$5427a630$7c00000a@LaptopII> Message-ID: Here's a snippet of code we use in a vbs script file to send emails with an importance and priority set: strRecords = "Record Count: " & lngCount & "
" & strRecords strSubject = "Status" strVendorEmail = "doug at starntech.com" 'Create body of email htmlEmail = "" & strSubject & "" htmlEmail = htmlEmail & "" htmlEmail = htmlEmail & "" htmlEmail = htmlEmail & "

" & strRecords & "

" htmlEmail = htmlEmail & "" 'Use CDOSYS to send email 'Create CDO.Message Object Set myMail = WScript.CreateObject("CDO.Message") 'Set up the email header myMail.Subject = strSubject myMail.From = strFromEmail myMail.To = strVendorEmail myMail.HTMLBody = htmlEmail 'Set the configuration settings myMail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/con figuration/smtpauthenticate") = cdoBasic myMail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/con figuration/sendusername")="cdomail" myMail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/con figuration/sendpassword")="Cd0Ma1l" myMail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/con figuration/sendusing")=gintSendUsing myMail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/con figuration/smtpserver")=gstrSMTPServer myMail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/con figuration/smtpserverport")=gintSMTPPort myMail.Configuration.Fields.Update myMail.Fields("urn:schemas:httpmail:importance") = 2 ' drb 08/16/07 set importance myMail.Fields("urn:schemas:mailheader:X-Priority") = 2 ' drb 08/16/07 myMail.Fields.Update ' drb 08/16/07 need to save the values 'Send the email myMail.Send 'Clear the CDO.Message object set myMail = nothing -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Jim Dettman Sent: Tuesday, September 23, 2008 8:46 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] CDO/Priority flag. Joe, I'll give that a shot. I know for sure already that there is no space in there. Everything past the first address is ignored for the To, CC, and BCC, so it's something I doing. I'll let you know if it works. Thanks, Jim. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Joe O'Connell Sent: Friday, September 19, 2008 11:20 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] CDO/Priority flag. Jim, Try putting a space after the semi-colon for multiple recipients. Joe O'Connell -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Jim Dettman Sent: Friday, September 19, 2008 1:12 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] CDO/Priority flag. All, This seems like it should be simple, and yet an internet search turns up a variety of answers, none of which seems to work. I've never worked with CDO before, but have instead preferred to use vbSendMail, but I have a client that wants to go with CDO as that's what is being used with the rest of the apps they already have. This is a simple "send an e-mail" based on a table utility. Two things don't seem to be working right; multiple recipients and setting a priority flag. For the multiple recipients, I'm using a semi-colon delimited list. For the priority flag, I've tried it as part of the configuration setting and as a change to the message fields (I get an error with this method about being disconnect from the client and Access then hangs at exit). Can't believe I've spent the amount of time I have on something that should be so simple. Anyone got any insight on this? Code is below. Jim. Public Sub DoEmailTask(strTaskName As String) Dim db As DAO.Database Dim rst As DAO.Recordset Dim strSQL As String Dim strMsg As String Dim objMessage As Object On Error GoTo DoEmailTask_Error Set db = CurrentDb() strSQL = "SELECT * FROM tblEmailTasks WHERE [EmailTaskName] = '" & strTaskName & "'" Set rst = db.OpenRecordset(strSQL) If rst.RecordCount = 0 Then ' Task name not in table strMsg = "Mail task name '" & strTaskName & "' was not found in tblEmailTasks." MsgBox strMsg, vbCritical + vbOKOnly, "Invalid e-mail task name" Else With rst ' Send the e-mail Set objMessage = CreateObject("CDO.Message") ' Don't rely on configuration settting on client objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/sendusing") = !SendUsing objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/smtpserver") = !SMTPServer objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/smtpauthenticate") = !SMTPAuthenticate objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/sendusername") = !SendUserName objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/sendpassword") = !SendUserPassword objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/sendusing") = !SendUsing objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/smtpserverport") = !SMTPPort objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/smtpusessl") = !UseSSL objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/c onfi guration/smtpconnectiontimeout") = !ConnectTimeout 'objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/ conf iguration/priority") = !priority objMessage.Configuration.Fields.Item("urn:schemas:mailheader:X-MSMail-Pr iori ty") = 0 objMessage.Configuration.Fields.Update Stop objMessage.From = !From objMessage.To = !To objMessage.CC = !CC objMessage.BCC = !BCC objMessage.Subject = !Subject objMessage.TextBody = !Message objMessage.Send End With End If DoEmailTask_Exit: Set objMessage = Nothing If Not rst Is Nothing Then rst.Close Set rst = Nothing End If Set db = Nothing Exit Sub DoEmailTask_Error: Resume DoEmailTask_Exit 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 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From rockysmolin at bchacc.com Tue Sep 23 08:15:32 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Tue, 23 Sep 2008 06:15:32 -0700 Subject: [AccessD] Change Field Type In-Reply-To: References: <017a01c91ce9$3ce07330$0201a8c0@HAL9005><000c01c91ced$54cd5720$6401a8c0@nant> Message-ID: <000601c91d7e$7591bd20$0201a8c0@HAL9005> Actually Stuart gets the cigar - YesNo. (Who knew?) Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Max Wanadoo Sent: Tuesday, September 23, 2008 12:25 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Change Field Type Hi Rocky, don't know if these links are any use:- http://www.blueclaw-db.com/alter_table_ddl.htm http://office.microsoft.com/en-us/access/HP010322071033.aspx Max On Mon, Sep 22, 2008 at 8:56 PM, Shamil Salakhetdinov < shamil at smsconsulting.spb.ru> wrote: > Hi Rocky, > > I'd think you have to: > > - 1) create a new column with required data type; > - 2) set values of this new column using update SQL clause; > - 3) delete old column; > - 4) rename new column to the old column name; > - 5) change ordinal position for the renamed column (can be done in > step > (4) > - 6) set indexes for the new column if needed... > - 7) (re-)define relationships; > > I can be wrong but I suppose that changing column type in code > directly in one step isn't possible... > > As we all know it's possible to change column type in one direct step > in design mode but I'd suppose that "under the hood" the above > sequence of actions is performed... > > Thank you. > > -- > Shamil > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky > Smolin at Beach Access Software > Sent: Monday, September 22, 2008 11:27 PM > To: 'Access Developers discussion and problem solving' > Subject: [AccessD] Change Field Type > > Dear List: > > I am trying to change the type of a field 'StartBase' in table > 'MatterActions' from Number to Boolean. I've tried two approaches: > > 1) dbs.Execute "ALTER TABLE [MatterActions] ALTER Column StartBase Boolean" > givers the error 3381 There is no field named 'Boolean' in table > 'MatterActions' > > 2) Set tdf = dbs.TableDefs("MatterActions") > tdf.Fields("StartBase").Type = dbBoolean > > gives the error invalid operation on the second line. > > Does anyone know the correct code to change this field's type? > > MTIA > > 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 Lambert.Heenan at AIG.com Tue Sep 23 08:26:03 2008 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Tue, 23 Sep 2008 09:26:03 -0400 Subject: [AccessD] Change Field Type Message-ID: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0ED89@XLIVMBX35bkup.aig.com> Well what a surprise the Online help was wrong (for A2K) or I read it wrong, but you really can change a column definition in one step with the DDL. For example this works fine... CurrentDb.Execute "alter table Projections_tbl alter column nYearNumber currency" So the question is why does Rocky's SQL fail? Substituting "currency" with "Boolean" in the above gives the same error that Rocky sees, so there must be some other keyword that the DDL uses to mean Boolean. Google, google.... and that keyword is YESNO Thus Rocky needs to use dbs.Execute "ALTER TABLE [MatterActions] ALTER Column StartBase YESNO" Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Max Wanadoo Sent: Tuesday, September 23, 2008 3:25 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Change Field Type Hi Rocky, don't know if these links are any use:- http://www.blueclaw-db.com/alter_table_ddl.htm http://office.microsoft.com/en-us/access/HP010322071033.aspx Max On Mon, Sep 22, 2008 at 8:56 PM, Shamil Salakhetdinov < shamil at smsconsulting.spb.ru> wrote: > Hi Rocky, > > I'd think you have to: > > - 1) create a new column with required data type; > - 2) set values of this new column using update SQL clause; > - 3) delete old column; > - 4) rename new column to the old column name; > - 5) change ordinal position for the renamed column (can be done in > step > (4) > - 6) set indexes for the new column if needed... > - 7) (re-)define relationships; > > I can be wrong but I suppose that changing column type in code > directly in one step isn't possible... > > As we all know it's possible to change column type in one direct step > in design mode but I'd suppose that "under the hood" the above > sequence of actions is performed... > > Thank you. > > -- > Shamil > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky > Smolin at Beach Access Software > Sent: Monday, September 22, 2008 11:27 PM > To: 'Access Developers discussion and problem solving' > Subject: [AccessD] Change Field Type > > Dear List: > > I am trying to change the type of a field 'StartBase' in table > 'MatterActions' from Number to Boolean. I've tried two approaches: > > 1) dbs.Execute "ALTER TABLE [MatterActions] ALTER Column StartBase Boolean" > givers the error 3381 There is no field named 'Boolean' in table > 'MatterActions' > > 2) Set tdf = dbs.TableDefs("MatterActions") > tdf.Fields("StartBase").Type = dbBoolean > > gives the error invalid operation on the second line. > > Does anyone know the correct code to change this field's type? > > MTIA > > 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 jimdettman at verizon.net Tue Sep 23 08:33:46 2008 From: jimdettman at verizon.net (Jim Dettman) Date: Tue, 23 Sep 2008 09:33:46 -0400 Subject: [AccessD] CDO/Priority flag. In-Reply-To: References: <01b201c91d7a$5427a630$7c00000a@LaptopII> Message-ID: <01ce01c91d81$01a4e420$7c00000a@LaptopII> Doug, Thanks for that. Pretty much already there. Below is what I ended up with. Works with low, normal, and high priority. Jim. Public Sub DoEmailTask(strTaskName As String) Dim db As DAO.Database Dim rst As DAO.Recordset Dim strSQL As String Dim strMsg As String Dim strPriority As String Dim objcdoConfig As Object Dim objcdoMessage As Object On Error GoTo DoEmailTask_Error Set db = CurrentDb() strSQL = "SELECT * FROM tblEmailTasks WHERE [EmailTaskName] = '" & strTaskName & "'" Set rst = db.OpenRecordset(strSQL) If rst.RecordCount = 0 Then ' Task name not in table strMsg = "Mail task name '" & strTaskName & "' was not found in tblEmailTasks." & vbCrLf & vbCrLf MsgBox strMsg, vbCritical + vbOKOnly, "Invalid e-mail task name" Else ' Send the e-mail Set objcdoConfig = CreateObject("CDO.Configuration") Set objcdoMessage = CreateObject("CDO.Message") ' Don't rely on configuration settting on client objcdoConfig.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sen dusing") = rst!SendUsing objcdoConfig.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smt pserver") = rst!SMTPServer objcdoConfig.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smt pauthenticate") = rst!SMTPAuthenticate objcdoConfig.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sen dusername") = rst!SendUserName objcdoConfig.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sen dpassword") = rst!SendUserPassword objcdoConfig.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sen dusing") = rst!SendUsing objcdoConfig.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smt pserverport") = rst!SMTPPort objcdoConfig.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smt pusessl") = rst!UseSSL objcdoConfig.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smt pconnectiontimeout") = rst!ConnectTimeout objcdoConfig.Fields.Update With objcdoMessage.Fields strPriority = Switch(rst![Priority] = -1, "Low", rst![Priority] = 0, "Normal", rst![Priority] = 1, "High") .Item("urn:schemas:mailheader:X-MSMail-Priority") = strPriority ' For Outlook 2003 .Item("urn:schemas:mailheader:X-Priority") = rst![Priority] ' For Outlook 2003 also .Item("urn:schemas:httpmail:importance") = rst![Priority] + 1 ' For Outlook Express .Update End With With objcdoMessage Set .Configuration = objcdoConfig .From = rst!From .To = rst!To .CC = rst!CC .BCC = rst!BCC .Subject = rst!Subject .TextBody = rst!Message .Send End With End If DoEmailTask_Exit: On Error resume next Set objcdoConfig = Nothing Set objcdoMessage = Nothing If Not rst Is Nothing Then rst.Close Set rst = Nothing End If Set db = Nothing Exit Sub DoEmailTask_Error: Resume DoEmailTask_Exit End Sub -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Doug Barnes Sent: Tuesday, September 23, 2008 9:14 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] CDO/Priority flag. Here's a snippet of code we use in a vbs script file to send emails with an importance and priority set: <> From ssharkins at gmail.com Tue Sep 23 08:54:56 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Tue, 23 Sep 2008 09:54:56 -0400 Subject: [AccessD] Dlookups. your opinion please. References: <57E6E6CA42105A48B977303A2CDC2720076DA26FB3@WPEXCH22.retail.ad.cmltd.net.au> Message-ID: <072901c91d83$f7883570$2f8601c7@SusanOne> Darryl, the first thing I would do is convince the owners that the db needs to be rewritten from scratch, if at all possible. Unless you're auditing this thing regularly, there is no way to know when it's generating errors. If they're iffy on that, I'd work hard to find an error and draw it to their attention. Say, it reports that you have 100 widgets in stock when you really have 150, so you missed that big sale to an important client yesterday because she really needed 130, but because you couldn't supply the full amount, she went someplace else. Find an error. Second, domain aggregates aren't bad. Some say they're slow and that would include me, but um... others thing I'm daft on that one. Gustav (I think it was) said a simple index on the column takes care of the performance problem, and if that's the case, that would be fine in most cases -- but in yours, it might not. Adding an index might blow something up! ;) But domain aggregates, in an of themselves, are just fine. With so much to fix, I don't think I'd give them priority if it were me. Susan H. > Hi All, > > I have, ummm, inherited a database (SQL Server Back, Access Front) at > work. Frankly this thing is a disaster waiting to happen and since the > guy who built has left (he used to admin it, and I suspect there were > regular band aid repairs and updates to keep it all steady) the actual > users are having no end of bother and bugs with it. anyway, I digress... From max.wanadoo at gmail.com Tue Sep 23 09:46:50 2008 From: max.wanadoo at gmail.com (Max Wanadoo) Date: Tue, 23 Sep 2008 15:46:50 +0100 Subject: [AccessD] Change Field Type In-Reply-To: <000b01c91d74$26954b60$0201a8c0@HAL9005> References: <017a01c91ce9$3ce07330$0201a8c0@HAL9005> <000c01c91ced$54cd5720$6401a8c0@nant> <000b01c91d74$26954b60$0201a8c0@HAL9005> Message-ID: Rocky, I am replying from a machine without Access (can you believe that?). However, I think the clause "Boolean" is incorrect. I think it is something liked "Logical" or similar but I cannot quite remember and I cannot test for it. Try changing it to Logical and see if that works, if not Google for this clause. (It might even be YESNO or YES/NO or BIT) Good luck Max On Tue, Sep 23, 2008 at 1:01 PM, Rocky Smolin at Beach Access Software < rockysmolin at bchacc.com> wrote: > Max: > > In the Microsoft Office article it says I can do what I'm trying to do but > didn't seem to work. It says: > > **************************** > Use ALTER COLUMN to change the data type of an existing field. You specify > the field name, the new data type, and an optional size for Text and Binary > fields. For example, the following statement changes the data type of a > field in the Employees table called ZipCode (originally defined as Integer) > to a 10-character Text field: > > ALTER TABLE Employees ALTER COLUMN ZipCode TEXT(10) > **************************** > > I tried: > > dbs.Execute "ALTER TABLE [MatterActions] ALTER Column [StartBase] Boolean" > > And got the error 3381 There is no field named 'Boolean' in table > 'MatterActions' > > > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > www.bchacc.com > > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Max Wanadoo > Sent: Tuesday, September 23, 2008 12:25 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Change Field Type > > Hi Rocky, > > don't know if these links are any use:- > > http://www.blueclaw-db.com/alter_table_ddl.htm > http://office.microsoft.com/en-us/access/HP010322071033.aspx > > Max > > > > On Mon, Sep 22, 2008 at 8:56 PM, Shamil Salakhetdinov < > shamil at smsconsulting.spb.ru> wrote: > > > Hi Rocky, > > > > I'd think you have to: > > > > - 1) create a new column with required data type; > > - 2) set values of this new column using update SQL clause; > > - 3) delete old column; > > - 4) rename new column to the old column name; > > - 5) change ordinal position for the renamed column (can be done in > > step > > (4) > > - 6) set indexes for the new column if needed... > > - 7) (re-)define relationships; > > > > I can be wrong but I suppose that changing column type in code > > directly in one step isn't possible... > > > > As we all know it's possible to change column type in one direct step > > in design mode but I'd suppose that "under the hood" the above > > sequence of actions is performed... > > > > Thank you. > > > > -- > > Shamil > > > > -----Original Message----- > > From: accessd-bounces at databaseadvisors.com > > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky > > Smolin at Beach Access Software > > Sent: Monday, September 22, 2008 11:27 PM > > To: 'Access Developers discussion and problem solving' > > Subject: [AccessD] Change Field Type > > > > Dear List: > > > > I am trying to change the type of a field 'StartBase' in table > > 'MatterActions' from Number to Boolean. I've tried two approaches: > > > > 1) dbs.Execute "ALTER TABLE [MatterActions] ALTER Column StartBase > Boolean" > > givers the error 3381 There is no field named 'Boolean' in table > > 'MatterActions' > > > > 2) Set tdf = dbs.TableDefs("MatterActions") > > tdf.Fields("StartBase").Type = dbBoolean > > > > gives the error invalid operation on the second line. > > > > Does anyone know the correct code to change this field's type? > > > > MTIA > > > > 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 > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > From paul.hartland at googlemail.com Tue Sep 23 09:51:52 2008 From: paul.hartland at googlemail.com (Paul Hartland) Date: Tue, 23 Sep 2008 15:51:52 +0100 Subject: [AccessD] Change Field Type In-Reply-To: References: <017a01c91ce9$3ce07330$0201a8c0@HAL9005> <000c01c91ced$54cd5720$6401a8c0@nant> <000b01c91d74$26954b60$0201a8c0@HAL9005> Message-ID: <38c884770809230751rd69cd26o82838b7ccb1e9f96@mail.gmail.com> The Access field name is Yes/No, if you select it when creating the table. Not sure if it will be the same when changing a field. Paul 2008/9/23 Max Wanadoo > Rocky, > I am replying from a machine without Access (can you believe that?). > However, I think the clause "Boolean" is incorrect. I think it is > something > liked "Logical" or similar but I cannot quite remember and I cannot test > for > it. Try changing it to Logical and see if that works, if not Google for > this clause. (It might even be YESNO or YES/NO or BIT) > Good luck > Max > > On Tue, Sep 23, 2008 at 1:01 PM, Rocky Smolin at Beach Access Software < > rockysmolin at bchacc.com> wrote: > > > Max: > > > > In the Microsoft Office article it says I can do what I'm trying to do > but > > didn't seem to work. It says: > > > > **************************** > > Use ALTER COLUMN to change the data type of an existing field. You > specify > > the field name, the new data type, and an optional size for Text and > Binary > > fields. For example, the following statement changes the data type of a > > field in the Employees table called ZipCode (originally defined as > Integer) > > to a 10-character Text field: > > > > ALTER TABLE Employees ALTER COLUMN ZipCode TEXT(10) > > **************************** > > > > I tried: > > > > dbs.Execute "ALTER TABLE [MatterActions] ALTER Column [StartBase] > Boolean" > > > > And got the error 3381 There is no field named 'Boolean' in table > > 'MatterActions' > > > > > > Rocky Smolin > > Beach Access Software > > 858-259-4334 > > www.e-z-mrp.com > > www.bchacc.com > > > > > > > > -----Original Message----- > > From: accessd-bounces at databaseadvisors.com > > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Max Wanadoo > > Sent: Tuesday, September 23, 2008 12:25 AM > > To: Access Developers discussion and problem solving > > Subject: Re: [AccessD] Change Field Type > > > > Hi Rocky, > > > > don't know if these links are any use:- > > > > http://www.blueclaw-db.com/alter_table_ddl.htm > > http://office.microsoft.com/en-us/access/HP010322071033.aspx > > > > Max > > > > > > > > On Mon, Sep 22, 2008 at 8:56 PM, Shamil Salakhetdinov < > > shamil at smsconsulting.spb.ru> wrote: > > > > > Hi Rocky, > > > > > > I'd think you have to: > > > > > > - 1) create a new column with required data type; > > > - 2) set values of this new column using update SQL clause; > > > - 3) delete old column; > > > - 4) rename new column to the old column name; > > > - 5) change ordinal position for the renamed column (can be done in > > > step > > > (4) > > > - 6) set indexes for the new column if needed... > > > - 7) (re-)define relationships; > > > > > > I can be wrong but I suppose that changing column type in code > > > directly in one step isn't possible... > > > > > > As we all know it's possible to change column type in one direct step > > > in design mode but I'd suppose that "under the hood" the above > > > sequence of actions is performed... > > > > > > Thank you. > > > > > > -- > > > Shamil > > > > > > -----Original Message----- > > > From: accessd-bounces at databaseadvisors.com > > > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky > > > Smolin at Beach Access Software > > > Sent: Monday, September 22, 2008 11:27 PM > > > To: 'Access Developers discussion and problem solving' > > > Subject: [AccessD] Change Field Type > > > > > > Dear List: > > > > > > I am trying to change the type of a field 'StartBase' in table > > > 'MatterActions' from Number to Boolean. I've tried two approaches: > > > > > > 1) dbs.Execute "ALTER TABLE [MatterActions] ALTER Column StartBase > > Boolean" > > > givers the error 3381 There is no field named 'Boolean' in table > > > 'MatterActions' > > > > > > 2) Set tdf = dbs.TableDefs("MatterActions") > > > tdf.Fields("StartBase").Type = dbBoolean > > > > > > gives the error invalid operation on the second line. > > > > > > Does anyone know the correct code to change this field's type? > > > > > > MTIA > > > > > > 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 > > > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > -- Paul Hartland paul.hartland at googlemail.com From rockysmolin at bchacc.com Tue Sep 23 11:05:25 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Tue, 23 Sep 2008 09:05:25 -0700 Subject: [AccessD] Change Field Type In-Reply-To: References: <017a01c91ce9$3ce07330$0201a8c0@HAL9005><000c01c91ced$54cd5720$6401a8c0@nant><000b01c91d74$26954b60$0201a8c0@HAL9005> Message-ID: <004201c91d96$30b2bd90$0201a8c0@HAL9005> YesNo is what it needs to be. "I am replying from a machine without Access (can you believe that?)." No, it defies credibility. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Max Wanadoo Sent: Tuesday, September 23, 2008 7:47 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Change Field Type Rocky, I am replying from a machine without Access (can you believe that?). However, I think the clause "Boolean" is incorrect. I think it is something liked "Logical" or similar but I cannot quite remember and I cannot test for it. Try changing it to Logical and see if that works, if not Google for this clause. (It might even be YESNO or YES/NO or BIT) Good luck Max On Tue, Sep 23, 2008 at 1:01 PM, Rocky Smolin at Beach Access Software < rockysmolin at bchacc.com> wrote: > Max: > > In the Microsoft Office article it says I can do what I'm trying to do > but didn't seem to work. It says: > > **************************** > Use ALTER COLUMN to change the data type of an existing field. You > specify the field name, the new data type, and an optional size for > Text and Binary fields. For example, the following statement changes > the data type of a field in the Employees table called ZipCode > (originally defined as Integer) to a 10-character Text field: > > ALTER TABLE Employees ALTER COLUMN ZipCode TEXT(10) > **************************** > > I tried: > > dbs.Execute "ALTER TABLE [MatterActions] ALTER Column [StartBase] Boolean" > > And got the error 3381 There is no field named 'Boolean' in table > 'MatterActions' > > > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > www.bchacc.com > > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Max Wanadoo > Sent: Tuesday, September 23, 2008 12:25 AM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Change Field Type > > Hi Rocky, > > don't know if these links are any use:- > > http://www.blueclaw-db.com/alter_table_ddl.htm > http://office.microsoft.com/en-us/access/HP010322071033.aspx > > Max > > > > On Mon, Sep 22, 2008 at 8:56 PM, Shamil Salakhetdinov < > shamil at smsconsulting.spb.ru> wrote: > > > Hi Rocky, > > > > I'd think you have to: > > > > - 1) create a new column with required data type; > > - 2) set values of this new column using update SQL clause; > > - 3) delete old column; > > - 4) rename new column to the old column name; > > - 5) change ordinal position for the renamed column (can be done in > > step > > (4) > > - 6) set indexes for the new column if needed... > > - 7) (re-)define relationships; > > > > I can be wrong but I suppose that changing column type in code > > directly in one step isn't possible... > > > > As we all know it's possible to change column type in one direct > > step in design mode but I'd suppose that "under the hood" the above > > sequence of actions is performed... > > > > Thank you. > > > > -- > > Shamil > > > > -----Original Message----- > > From: accessd-bounces at databaseadvisors.com > > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky > > Smolin at Beach Access Software > > Sent: Monday, September 22, 2008 11:27 PM > > To: 'Access Developers discussion and problem solving' > > Subject: [AccessD] Change Field Type > > > > Dear List: > > > > I am trying to change the type of a field 'StartBase' in table > > 'MatterActions' from Number to Boolean. I've tried two approaches: > > > > 1) dbs.Execute "ALTER TABLE [MatterActions] ALTER Column StartBase > Boolean" > > givers the error 3381 There is no field named 'Boolean' in table > > 'MatterActions' > > > > 2) Set tdf = dbs.TableDefs("MatterActions") > > tdf.Fields("StartBase").Type = dbBoolean > > > > gives the error invalid operation on the second line. > > > > Does anyone know the correct code to change this field's type? > > > > MTIA > > > > 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 > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/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 Tue Sep 23 11:26:45 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Tue, 23 Sep 2008 18:26:45 +0200 Subject: [AccessD] Change Field Type Message-ID: Hi Rocky "needs" is too strong. As I wrote, Bit will do as well, and that is compatible with SQL Server so it might be a bit(!) easier to remember. /gustav >>> rockysmolin at bchacc.com 23-09-2008 18:05 >>> YesNo is what it needs to be. "I am replying from a machine without Access (can you believe that?)." No, it defies credibility. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Max Wanadoo Sent: Tuesday, September 23, 2008 7:47 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Change Field Type Rocky, I am replying from a machine without Access (can you believe that?). However, I think the clause "Boolean" is incorrect. I think it is something liked "Logical" or similar but I cannot quite remember and I cannot test for it. Try changing it to Logical and see if that works, if not Google for this clause. (It might even be YESNO or YES/NO or BIT) Good luck Max From Donald.A.McGillivray at sprint.com Tue Sep 23 11:27:29 2008 From: Donald.A.McGillivray at sprint.com (McGillivray, Don [IT]) Date: Tue, 23 Sep 2008 11:27:29 -0500 Subject: [AccessD] Excel object behavior In-Reply-To: <48D85D7D.16721.1F2C4816@stuart.lexacorp.com.pg> References: <59F4C79E0A20B74990A3775EF2388A894223C68D19@PDAWM03C.ad.sprint.com>, <015401c91d20$d14ec850$0402a8c0@Laptop> <48D85D7D.16721.1F2C4816@stuart.lexacorp.com.pg> Message-ID: <59F4C79E0A20B74990A3775EF2388A894223C6940E@PDAWM03C.ad.sprint.com> Thanks to all for the feedback, however, my question is not so much how to kill the instance (I seem to be doing that OK), but whether the instance should be surviving to the bitter end of the proc - despite having quit/closed/set to nothing all related Excel objects well before the end of the proc. Maybe that's normal behavior, maybe not. Anybody know for sure? -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stuart McLachlan Sent: Monday, September 22, 2008 8:08 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Yep, it took me a long time to track down. I had a function which created a Word document from a template and then stuffed data into it was. I cut and pasted code from the Word Macro recorder to do some formatting of the data once it was inserted. It was generally used only once every few days and it always worked fine. Then when a user tried to call it twice in a row it broke the second time around with a 462 error. I finally tracked it down by googling "Error 462: The remote server machine does not exist or is unavailable." On 22 Sep 2008 at 22:05, Michael R Mattys wrote: > That is a spectacular find, Stuart ... the beating heart of VB/VBA > Why have I never seen this 'feature' discussed before? > When I look back now over the years ... lol! > > Michael R. Mattys > MapPoint & Access Dev > www.mattysconsulting.com > > ----- Original Message ----- > From: "Stuart McLachlan" > To: "Access Developers discussion and problem solving" > > Sent: Monday, September 22, 2008 9:37 PM > Subject: Re: [AccessD] Excel object behavior > > > > Don't know about Excel, but I've had a similar problem occur in Word. The > > problem turned > > out to be using Unqualified References. It's explained at > > http://support.microsoft.com/kb/319832 > > > > Here's an example from that page which illustrates your problem: > > > > > > Qualifying the Code to Avoid Errors > > The best guideline is to avoid using any Office object that you do not > > explicitly call from a > > parent object that you set in a specific variable. In other words, look > > for code that uses > > Office objects without qualifying which Office instance or document that > > it is supposed to > > refer to. For example, this code uses an unqualified call to display the > > count of open > > workbooks in Microsoft Excel: > > > > Sub CreateThreeBooks() > > Dim oXL As Excel.Application > > Dim i As Long > > > > ' Create Excel instance (make it visible for test)... > > Set oXL = New Excel.Application > > oXL.Visible = True > > > > ' Open a few empty workbooks... > > For i = 1 To 3 > > oXL.Workbooks.Add > > Next i > > > > ' How many books did we open? > > MsgBox "Number of workbooks: " & Workbooks.Count, vbMsgBoxSetForeground > > > > ' Shutdown Excel (or do we?)... > > oXL.Quit > > Set oXL = Nothing > > ' Check the Processes list. Excel.exe is still running! > > End Sub > > > > When you run the code, it appears to run correctly the first time. > > However, Excel continues > > to run, even though you called the Quit method. If you call the code > > again, the message > > box now incorrectly displays 0 for the workbook count. Your code may now > > fail where you > > would expect it to succeed. > > > > To resolve both problems, you must fully qualify the Workbooks object that > > you reference > > for the count, as follows: > > > > MsgBox "Number of workbooks: " & oXL.Workbooks.Count, > > vbMsgBoxSetForeground > > > > > > > > > >> From: McGillivray, Don [IT] > >> Sent: Mon 9/22/2008 17:10 > >> To: Access Developers discussion and problem solving > >> Subject: [AccessD] Excel object behavior > >> > >> > >> Hello, All > >> > >> I have a procedure that exports a bunch of data to Excel, and then > >> uses the Excel object model to manipulate the resulting spreadsheets > >> (creating pivot tables, applying formatting, and the like.) Usually > >> it works as advertised, but some of my users are having a problem > >> where the UI freezes (or maybe it just appears to freeze). > >> > >> In trying to isolate the problem, I watched the effects of my code > >> carefully, and I notice that the Excel instance that I create in code > >> doesn't terminate until the procedure itself is finished. This, > >> despite the fact that I have closed, quit, and set to nothing all > >> Excel related objects before the end of the procedure. I know through > >> experience that failing to terminate Excel objects correctly leaves > >> the instance alive even at the end of the procedure. So I assume that > >> I'm killing them correctly since the instance does indeed die. > >> > >> Can anybody tell me if I should expect to see the instance survive > >> until the end of the proc, or is there something else I ought to be > >> doing when I'm finished with Excel? > >> > >> Thanks! > >> > >> Don McGillivray > >> > > -- > > Stuart Mclachlan > > > > > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- Stuart Mclachlan -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Lambert.Heenan at AIG.com Tue Sep 23 11:52:21 2008 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Tue, 23 Sep 2008 12:52:21 -0400 Subject: [AccessD] Excel object behavior Message-ID: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0EEE3@XLIVMBX35bkup.aig.com> I guess it boils down to how you are opening and closing the Excel files, and also being sure to fully qualify your references to the objects in your code (or wrap code blocks inside With SomeObject / End With statements). I have been using the functions below for years with no problems. Some helper functions are used which I'll assume you already have the functional equivalents of (i.e. ReportError, IsDirectory, FileExists etc.) Opening a workbook... First opening it invisibly... Function Excel_OpenWorkBookHidden(Path As String, Optional UpdateLinks As Boolean = False, Optional Password As String = "") As Excel.Application Dim xlObj As Excel.Application On Error GoTo Excel_OpenWorkBookHidden_err 'Check to see if the file name passed in to the procedure is valid If IsNull(Path) Or isDirectory(Path) Or Not FileExists(Path) Then MsgBox Path & " isn't a valid path!", vbCritical, "Open Excel Workbook" Set Excel_OpenWorkBookHidden = Nothing Exit Function Else Set xlObj = CreateObject("Excel.Application") xlObj.Workbooks.Open Path, UpdateLinks, , , Password Set Excel_OpenWorkBookHidden = xlObj End If Excel_OpenWorkBookHidden_exit: Exit Function Excel_OpenWorkBookHidden_err: ReportError Err.Number, Err.Description, "Excel_OpenWorkBookHidden", "Excel_mod", "File Name=" & Path Set Excel_OpenWorkBookHidden = Nothing Resume Excel_OpenWorkBookHidden_exit End Function And if you want the user to see the open workbook... Function Excel_OpenWorkBook(Path As String, Optional UpdateLinks As Boolean = False, Optional Password As String = "") As Excel.Application Dim xlObj As Excel.Application On Error GoTo Excel_OpenWorkBook_err Set xlObj = Excel_OpenWorkBookHidden(Path, UpdateLinks, Password) If xlObj.Name > "" Then xlObj.Visible = True Set Excel_OpenWorkBook = xlObj Excel_OpenWorkBook_exit: Exit Function Excel_OpenWorkBook_err: ReportError Err.Number, Err.Description, "Excel_OpenWorkBook", "Excel_mod", "File Name=" & Path Set Excel_OpenWorkBook = Nothing Resume Excel_OpenWorkBook_exit End Function So both these functions return a reference to an Excel.Application object. The calling code will they typically reference a worksheet object within the workbook... Dim xlObj as Excel.Application Dim XlSheet as xlApp.Worksheet Set xlObj = Excel_OpenWorkBookHidden(strSomePath) Set XlSheet = xlObj.Worksheets(1) ' do stuff with the worksheet object ' then to close things down ' first get rid of the worksheet object... Set XlSheet = Nothing ' and then close the Excel file Excel_CloseWorkBook xlObj ... And here is the code for Excel_CloseWorkBook Sub Excel_CloseWorkBook(xlApp As Excel.Application, Optional bSaveChanges As Boolean = False) Dim wb As Excel.Workbook On Error Resume Next If xlApp.Name > "" Then ' causes an error if the object has not been set End If If Err.Number <> 0 Then Exit Sub On Error GoTo 0 For Each wb In xlApp.Workbooks 'Close all open workbooks wb.Close bSaveChanges Next wb xlApp.UserControl = False Set xlApp = Nothing End Sub Again, I've never had problems with this. Excel closes down as desired. No need to kill a task, which is only a measure of last resort. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of McGillivray, Don [IT] Sent: Tuesday, September 23, 2008 12:27 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Thanks to all for the feedback, however, my question is not so much how to kill the instance (I seem to be doing that OK), but whether the instance should be surviving to the bitter end of the proc - despite having quit/closed/set to nothing all related Excel objects well before the end of the proc. Maybe that's normal behavior, maybe not. Anybody know for sure? -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stuart McLachlan Sent: Monday, September 22, 2008 8:08 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Yep, it took me a long time to track down. I had a function which created a Word document from a template and then stuffed data into it was. I cut and pasted code from the Word Macro recorder to do some formatting of the data once it was inserted. It was generally used only once every few days and it always worked fine. Then when a user tried to call it twice in a row it broke the second time around with a 462 error. I finally tracked it down by googling "Error 462: The remote server machine does not exist or is unavailable." On 22 Sep 2008 at 22:05, Michael R Mattys wrote: > That is a spectacular find, Stuart ... the beating heart of VB/VBA Why > have I never seen this 'feature' discussed before? > When I look back now over the years ... lol! > > Michael R. Mattys > MapPoint & Access Dev > www.mattysconsulting.com > > ----- Original Message ----- > From: "Stuart McLachlan" > To: "Access Developers discussion and problem solving" > > Sent: Monday, September 22, 2008 9:37 PM > Subject: Re: [AccessD] Excel object behavior > > > > Don't know about Excel, but I've had a similar problem occur in > > Word. The problem turned out to be using Unqualified References. > > It's explained at > > http://support.microsoft.com/kb/319832 > > > > Here's an example from that page which illustrates your problem: > > > > > > Qualifying the Code to Avoid Errors > > The best guideline is to avoid using any Office object that you do > > not explicitly call from a parent object that you set in a specific > > variable. In other words, look for code that uses Office objects > > without qualifying which Office instance or document that it is > > supposed to refer to. For example, this code uses an unqualified > > call to display the count of open workbooks in Microsoft Excel: > > > > Sub CreateThreeBooks() > > Dim oXL As Excel.Application > > Dim i As Long > > > > ' Create Excel instance (make it visible for test)... > > Set oXL = New Excel.Application > > oXL.Visible = True > > > > ' Open a few empty workbooks... > > For i = 1 To 3 > > oXL.Workbooks.Add > > Next i > > > > ' How many books did we open? > > MsgBox "Number of workbooks: " & Workbooks.Count, > > vbMsgBoxSetForeground > > > > ' Shutdown Excel (or do we?)... > > oXL.Quit > > Set oXL = Nothing > > ' Check the Processes list. Excel.exe is still running! > > End Sub > > > > When you run the code, it appears to run correctly the first time. > > However, Excel continues > > to run, even though you called the Quit method. If you call the code > > again, the message box now incorrectly displays 0 for the workbook > > count. Your code may now fail where you would expect it to succeed. > > > > To resolve both problems, you must fully qualify the Workbooks > > object that you reference for the count, as follows: > > > > MsgBox "Number of workbooks: " & oXL.Workbooks.Count, > > vbMsgBoxSetForeground > > > > > > > > > >> From: McGillivray, Don [IT] > >> Sent: Mon 9/22/2008 17:10 > >> To: Access Developers discussion and problem solving > >> Subject: [AccessD] Excel object behavior > >> > >> > >> Hello, All > >> > >> I have a procedure that exports a bunch of data to Excel, and then > >> uses the Excel object model to manipulate the resulting > >> spreadsheets (creating pivot tables, applying formatting, and the > >> like.) Usually it works as advertised, but some of my users are > >> having a problem where the UI freezes (or maybe it just appears to freeze). > >> > >> In trying to isolate the problem, I watched the effects of my code > >> carefully, and I notice that the Excel instance that I create in > >> code doesn't terminate until the procedure itself is finished. > >> This, despite the fact that I have closed, quit, and set to nothing > >> all Excel related objects before the end of the procedure. I know > >> through experience that failing to terminate Excel objects > >> correctly leaves the instance alive even at the end of the > >> procedure. So I assume that I'm killing them correctly since the instance does indeed die. > >> > >> Can anybody tell me if I should expect to see the instance survive > >> until the end of the proc, or is there something else I ought to be > >> doing when I'm finished with Excel? > >> > >> Thanks! > >> > >> Don McGillivray > >> > > -- > > Stuart Mclachlan > > > > > > -- > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com -- Stuart Mclachlan -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/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 Tue Sep 23 12:02:01 2008 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Tue, 23 Sep 2008 12:02:01 -0500 Subject: [AccessD] Access 2002 - Another way to lose your work Message-ID: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0EEF1@XLIVMBX35bkup.aig.com> Cross posted to Access-L and Access-D Ever seen this happen? I just lost 90 minutes of work this morning... The scenario was I had a couple of modules open, and a form module, and another from. Had a few bookmarks set to a could jump between modules/functions. After working on one of the forms I hit the Save button and I got the usual listbox showing the altered objects in my project. I deselected all the objects other than the form I wanted to save at that point and then when I returned to an open module the first thing I noticed was that I had no bookmarks set anymore. The next thing I noticed was that all the code I had just written had vaporized. Aaargghh!!! The only think I can think of that might cause this is that SetWarnings may have been set to False, but why, when I did not close any of the altered objects, did my changes get blown away? Any way to tell in code if SetWarnings = False? Lambert From shamil at smsconsulting.spb.ru Tue Sep 23 12:50:35 2008 From: shamil at smsconsulting.spb.ru (Shamil Salakhetdinov) Date: Tue, 23 Sep 2008 21:50:35 +0400 Subject: [AccessD] Excel object behavior In-Reply-To: <59F4C79E0A20B74990A3775EF2388A894223C6940E@PDAWM03C.ad.sprint.com> Message-ID: <000901c91da4$e35a5580$6401a8c0@nant> <<< Maybe that's normal behavior, maybe not. Anybody know for sure? >>> Don, For sure it's not normal behavior - you should have somewhere "hanging" MS Excel object(s), which were not forcibly set to nothing before you quit MS Excel Application instance, or you might have created a "ghost" instance of MS Excel if you didn't qualify fully MS Excel objects while using them in your VBA code - something like Stuart's sample shows... -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of McGillivray, Don [IT] Sent: Tuesday, September 23, 2008 8:27 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Thanks to all for the feedback, however, my question is not so much how to kill the instance (I seem to be doing that OK), but whether the instance should be surviving to the bitter end of the proc - despite having quit/closed/set to nothing all related Excel objects well before the end of the proc. Maybe that's normal behavior, maybe not. Anybody know for sure? -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stuart McLachlan Sent: Monday, September 22, 2008 8:08 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Yep, it took me a long time to track down. I had a function which created a Word document from a template and then stuffed data into it was. I cut and pasted code from the Word Macro recorder to do some formatting of the data once it was inserted. It was generally used only once every few days and it always worked fine. Then when a user tried to call it twice in a row it broke the second time around with a 462 error. I finally tracked it down by googling "Error 462: The remote server machine does not exist or is unavailable." On 22 Sep 2008 at 22:05, Michael R Mattys wrote: > That is a spectacular find, Stuart ... the beating heart of VB/VBA > Why have I never seen this 'feature' discussed before? > When I look back now over the years ... lol! > > Michael R. Mattys > MapPoint & Access Dev > www.mattysconsulting.com > > ----- Original Message ----- > From: "Stuart McLachlan" > To: "Access Developers discussion and problem solving" > > Sent: Monday, September 22, 2008 9:37 PM > Subject: Re: [AccessD] Excel object behavior > > > > Don't know about Excel, but I've had a similar problem occur in Word. The > > problem turned > > out to be using Unqualified References. It's explained at > > http://support.microsoft.com/kb/319832 > > > > Here's an example from that page which illustrates your problem: > > > > > > Qualifying the Code to Avoid Errors > > The best guideline is to avoid using any Office object that you do not > > explicitly call from a > > parent object that you set in a specific variable. In other words, look > > for code that uses > > Office objects without qualifying which Office instance or document that > > it is supposed to > > refer to. For example, this code uses an unqualified call to display the > > count of open > > workbooks in Microsoft Excel: > > > > Sub CreateThreeBooks() > > Dim oXL As Excel.Application > > Dim i As Long > > > > ' Create Excel instance (make it visible for test)... > > Set oXL = New Excel.Application > > oXL.Visible = True > > > > ' Open a few empty workbooks... > > For i = 1 To 3 > > oXL.Workbooks.Add > > Next i > > > > ' How many books did we open? > > MsgBox "Number of workbooks: " & Workbooks.Count, vbMsgBoxSetForeground > > > > ' Shutdown Excel (or do we?)... > > oXL.Quit > > Set oXL = Nothing > > ' Check the Processes list. Excel.exe is still running! > > End Sub > > > > When you run the code, it appears to run correctly the first time. > > However, Excel continues > > to run, even though you called the Quit method. If you call the code > > again, the message > > box now incorrectly displays 0 for the workbook count. Your code may now > > fail where you > > would expect it to succeed. > > > > To resolve both problems, you must fully qualify the Workbooks object that > > you reference > > for the count, as follows: > > > > MsgBox "Number of workbooks: " & oXL.Workbooks.Count, > > vbMsgBoxSetForeground > > > > > > > > > >> From: McGillivray, Don [IT] > >> Sent: Mon 9/22/2008 17:10 > >> To: Access Developers discussion and problem solving > >> Subject: [AccessD] Excel object behavior > >> > >> > >> Hello, All > >> > >> I have a procedure that exports a bunch of data to Excel, and then > >> uses the Excel object model to manipulate the resulting spreadsheets > >> (creating pivot tables, applying formatting, and the like.) Usually > >> it works as advertised, but some of my users are having a problem > >> where the UI freezes (or maybe it just appears to freeze). > >> > >> In trying to isolate the problem, I watched the effects of my code > >> carefully, and I notice that the Excel instance that I create in code > >> doesn't terminate until the procedure itself is finished. This, > >> despite the fact that I have closed, quit, and set to nothing all > >> Excel related objects before the end of the procedure. I know through > >> experience that failing to terminate Excel objects correctly leaves > >> the instance alive even at the end of the procedure. So I assume that > >> I'm killing them correctly since the instance does indeed die. > >> > >> Can anybody tell me if I should expect to see the instance survive > >> until the end of the proc, or is there something else I ought to be > >> doing when I'm finished with Excel? > >> > >> Thanks! > >> > >> Don McGillivray > >> > > -- > > Stuart Mclachlan > > From davidmcafee at gmail.com Tue Sep 23 13:15:05 2008 From: davidmcafee at gmail.com (David McAfee) Date: Tue, 23 Sep 2008 11:15:05 -0700 Subject: [AccessD] Access 2002 - Another way to lose your work In-Reply-To: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0EEF1@XLIVMBX35bkup.aig.com> References: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0EEF1@XLIVMBX35bkup.aig.com> Message-ID: <8786a4c00809231115o293694aalb550ac4b450811eb@mail.gmail.com> You can go into the immediate window and type ? SetWarnings should return blank/nothing or False On Tue, Sep 23, 2008 at 10:02 AM, Heenan, Lambert wrote: > Cross posted to Access-L and Access-D > > Ever seen this happen? I just lost 90 minutes of work this morning... > > The scenario was I had a couple of modules open, and a form module, and > another from. Had a few bookmarks set to a could jump between > modules/functions. > > After working on one of the forms I hit the Save button and I got the usual > listbox showing the altered objects in my project. I deselected all the > objects other than the form I wanted to save at that point and then when I > returned to an open module the first thing I noticed was that I had no > bookmarks set anymore. The next thing I noticed was that all the code I had > just written had vaporized. Aaargghh!!! > > The only think I can think of that might cause this is that SetWarnings may > have been set to False, but why, when I did not close any of the altered > objects, did my changes get blown away? > > Any way to tell in code if SetWarnings = False? > > Lambert > -- > 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 Tue Sep 23 13:18:59 2008 From: Donald.A.McGillivray at sprint.com (McGillivray, Don [IT]) Date: Tue, 23 Sep 2008 13:18:59 -0500 Subject: [AccessD] Excel object behavior In-Reply-To: <000901c91da4$e35a5580$6401a8c0@nant> References: <59F4C79E0A20B74990A3775EF2388A894223C6940E@PDAWM03C.ad.sprint.com> <000901c91da4$e35a5580$6401a8c0@nant> Message-ID: <59F4C79E0A20B74990A3775EF2388A894223C6966A@PDAWM03C.ad.sprint.com> Thanks, Shamil As a test I wrote a brief proc that simply opens and then kills an Excel instance. Indeed, the instance does die as soon as its object variable is set to nothing. That is NOT happening in my proc, so it looks like I'm overlooking something there - probably in the way my references are qualified. Still, if I haven't correctly terminated that Excel instance, I'm surprised that it doesn't hang around after the proc finishes. Seems like I'm doing SOMEthing right - just not EVERYthing. Thanks again to all who responded. Don -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Tuesday, September 23, 2008 10:51 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Excel object behavior <<< Maybe that's normal behavior, maybe not. Anybody know for sure? >>> Don, For sure it's not normal behavior - you should have somewhere "hanging" MS Excel object(s), which were not forcibly set to nothing before you quit MS Excel Application instance, or you might have created a "ghost" instance of MS Excel if you didn't qualify fully MS Excel objects while using them in your VBA code - something like Stuart's sample shows... -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of McGillivray, Don [IT] Sent: Tuesday, September 23, 2008 8:27 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Thanks to all for the feedback, however, my question is not so much how to kill the instance (I seem to be doing that OK), but whether the instance should be surviving to the bitter end of the proc - despite having quit/closed/set to nothing all related Excel objects well before the end of the proc. Maybe that's normal behavior, maybe not. Anybody know for sure? -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stuart McLachlan Sent: Monday, September 22, 2008 8:08 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Yep, it took me a long time to track down. I had a function which created a Word document from a template and then stuffed data into it was. I cut and pasted code from the Word Macro recorder to do some formatting of the data once it was inserted. It was generally used only once every few days and it always worked fine. Then when a user tried to call it twice in a row it broke the second time around with a 462 error. I finally tracked it down by googling "Error 462: The remote server machine does not exist or is unavailable." On 22 Sep 2008 at 22:05, Michael R Mattys wrote: > That is a spectacular find, Stuart ... the beating heart of VB/VBA > Why have I never seen this 'feature' discussed before? > When I look back now over the years ... lol! > > Michael R. Mattys > MapPoint & Access Dev > www.mattysconsulting.com > > ----- Original Message ----- > From: "Stuart McLachlan" > To: "Access Developers discussion and problem solving" > > Sent: Monday, September 22, 2008 9:37 PM > Subject: Re: [AccessD] Excel object behavior > > > > Don't know about Excel, but I've had a similar problem occur in Word. The > > problem turned > > out to be using Unqualified References. It's explained at > > http://support.microsoft.com/kb/319832 > > > > Here's an example from that page which illustrates your problem: > > > > > > Qualifying the Code to Avoid Errors > > The best guideline is to avoid using any Office object that you do not > > explicitly call from a > > parent object that you set in a specific variable. In other words, look > > for code that uses > > Office objects without qualifying which Office instance or document that > > it is supposed to > > refer to. For example, this code uses an unqualified call to display the > > count of open > > workbooks in Microsoft Excel: > > > > Sub CreateThreeBooks() > > Dim oXL As Excel.Application > > Dim i As Long > > > > ' Create Excel instance (make it visible for test)... > > Set oXL = New Excel.Application > > oXL.Visible = True > > > > ' Open a few empty workbooks... > > For i = 1 To 3 > > oXL.Workbooks.Add > > Next i > > > > ' How many books did we open? > > MsgBox "Number of workbooks: " & Workbooks.Count, vbMsgBoxSetForeground > > > > ' Shutdown Excel (or do we?)... > > oXL.Quit > > Set oXL = Nothing > > ' Check the Processes list. Excel.exe is still running! > > End Sub > > > > When you run the code, it appears to run correctly the first time. > > However, Excel continues > > to run, even though you called the Quit method. If you call the code > > again, the message > > box now incorrectly displays 0 for the workbook count. Your code may now > > fail where you > > would expect it to succeed. > > > > To resolve both problems, you must fully qualify the Workbooks object that > > you reference > > for the count, as follows: > > > > MsgBox "Number of workbooks: " & oXL.Workbooks.Count, > > vbMsgBoxSetForeground > > > > > > > > > >> From: McGillivray, Don [IT] > >> Sent: Mon 9/22/2008 17:10 > >> To: Access Developers discussion and problem solving > >> Subject: [AccessD] Excel object behavior > >> > >> > >> Hello, All > >> > >> I have a procedure that exports a bunch of data to Excel, and then > >> uses the Excel object model to manipulate the resulting spreadsheets > >> (creating pivot tables, applying formatting, and the like.) Usually > >> it works as advertised, but some of my users are having a problem > >> where the UI freezes (or maybe it just appears to freeze). > >> > >> In trying to isolate the problem, I watched the effects of my code > >> carefully, and I notice that the Excel instance that I create in code > >> doesn't terminate until the procedure itself is finished. This, > >> despite the fact that I have closed, quit, and set to nothing all > >> Excel related objects before the end of the procedure. I know through > >> experience that failing to terminate Excel objects correctly leaves > >> the instance alive even at the end of the procedure. So I assume that > >> I'm killing them correctly since the instance does indeed die. > >> > >> Can anybody tell me if I should expect to see the instance survive > >> until the end of the proc, or is there something else I ought to be > >> doing when I'm finished with Excel? > >> > >> Thanks! > >> > >> Don McGillivray > >> > > -- > > Stuart Mclachlan > > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Lambert.Heenan at AIG.com Tue Sep 23 13:56:46 2008 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Tue, 23 Sep 2008 14:56:46 -0400 Subject: [AccessD] Access 2002 - Another way to lose your work Message-ID: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0EFB0@XLIVMBX35bkup.aig.com> No good I'm afraid. Directly after opening an MDB file ? SetWarnings returned a blank line. If I then type DoCmd.SetWarnings False, then ? SetWarnings still returns a blank line. If I type DoCmd.SetWarnings True, then ? SetWarnings still returns a blank line. As for my lost work, the fact that the list of changed objects opened up when I hit the save button tells me that SetWarnings was True, but I still cannot figure out why the one object (a form) got saved, and all the other changes (to code modules) got blown away. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David McAfee Sent: Tuesday, September 23, 2008 2:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access 2002 - Another way to lose your work You can go into the immediate window and type ? SetWarnings should return blank/nothing or False On Tue, Sep 23, 2008 at 10:02 AM, Heenan, Lambert wrote: > Cross posted to Access-L and Access-D > > Ever seen this happen? I just lost 90 minutes of work this morning... > > The scenario was I had a couple of modules open, and a form module, > and another from. Had a few bookmarks set to a could jump between > modules/functions. > > After working on one of the forms I hit the Save button and I got the > usual listbox showing the altered objects in my project. I deselected > all the objects other than the form I wanted to save at that point and > then when I returned to an open module the first thing I noticed was > that I had no bookmarks set anymore. The next thing I noticed was that > all the code I had just written had vaporized. Aaargghh!!! > > The only think I can think of that might cause this is that > SetWarnings may have been set to False, but why, when I did not close > any of the altered objects, did my changes get blown away? > > Any way to tell in code if SetWarnings = False? > > 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 steve at goodhall.info Tue Sep 23 14:35:35 2008 From: steve at goodhall.info (Steve Goodhall) Date: Tue, 23 Sep 2008 15:35:35 -0400 Subject: [AccessD] Excel object behavior In-Reply-To: <59F4C79E0A20B74990A3775EF2388A894223C6966A@PDAWM03C.ad.sprint.com> Message-ID: <405E7E5B943C43F39BB9D80A4ECD113A@StevenAcer> I did this kind of thing a few years ago I was working on my Thesis. It's a bit vague, but I think you will need to set every pointer to anything e.g. Workbooks, Worksheets, Ranges, etc.) in the Excel instance to Nothing. Regards, Steve Goodhall, PMP 248-505-5204 mobile -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of McGillivray, Don [IT] Sent: Tuesday, September 23, 2008 2:19 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Thanks, Shamil As a test I wrote a brief proc that simply opens and then kills an Excel instance. Indeed, the instance does die as soon as its object variable is set to nothing. That is NOT happening in my proc, so it looks like I'm overlooking something there - probably in the way my references are qualified. Still, if I haven't correctly terminated that Excel instance, I'm surprised that it doesn't hang around after the proc finishes. Seems like I'm doing SOMEthing right - just not EVERYthing. Thanks again to all who responded. Don -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Tuesday, September 23, 2008 10:51 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Excel object behavior <<< Maybe that's normal behavior, maybe not. Anybody know for sure? >>> Don, For sure it's not normal behavior - you should have somewhere "hanging" MS Excel object(s), which were not forcibly set to nothing before you quit MS Excel Application instance, or you might have created a "ghost" instance of MS Excel if you didn't qualify fully MS Excel objects while using them in your VBA code - something like Stuart's sample shows... -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of McGillivray, Don [IT] Sent: Tuesday, September 23, 2008 8:27 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Thanks to all for the feedback, however, my question is not so much how to kill the instance (I seem to be doing that OK), but whether the instance should be surviving to the bitter end of the proc - despite having quit/closed/set to nothing all related Excel objects well before the end of the proc. Maybe that's normal behavior, maybe not. Anybody know for sure? -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stuart McLachlan Sent: Monday, September 22, 2008 8:08 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Yep, it took me a long time to track down. I had a function which created a Word document from a template and then stuffed data into it was. I cut and pasted code from the Word Macro recorder to do some formatting of the data once it was inserted. It was generally used only once every few days and it always worked fine. Then when a user tried to call it twice in a row it broke the second time around with a 462 error. I finally tracked it down by googling "Error 462: The remote server machine does not exist or is unavailable." On 22 Sep 2008 at 22:05, Michael R Mattys wrote: > That is a spectacular find, Stuart ... the beating heart of VB/VBA > Why have I never seen this 'feature' discussed before? > When I look back now over the years ... lol! > > Michael R. Mattys > MapPoint & Access Dev > www.mattysconsulting.com > > ----- Original Message ----- > From: "Stuart McLachlan" > To: "Access Developers discussion and problem solving" > > Sent: Monday, September 22, 2008 9:37 PM > Subject: Re: [AccessD] Excel object behavior > > > > Don't know about Excel, but I've had a similar problem occur in Word. The > > problem turned > > out to be using Unqualified References. It's explained at > > http://support.microsoft.com/kb/319832 > > > > Here's an example from that page which illustrates your problem: > > > > > > Qualifying the Code to Avoid Errors > > The best guideline is to avoid using any Office object that you do not > > explicitly call from a > > parent object that you set in a specific variable. In other words, look > > for code that uses > > Office objects without qualifying which Office instance or document that > > it is supposed to > > refer to. For example, this code uses an unqualified call to display the > > count of open > > workbooks in Microsoft Excel: > > > > Sub CreateThreeBooks() > > Dim oXL As Excel.Application > > Dim i As Long > > > > ' Create Excel instance (make it visible for test)... > > Set oXL = New Excel.Application > > oXL.Visible = True > > > > ' Open a few empty workbooks... > > For i = 1 To 3 > > oXL.Workbooks.Add > > Next i > > > > ' How many books did we open? > > MsgBox "Number of workbooks: " & Workbooks.Count, vbMsgBoxSetForeground > > > > ' Shutdown Excel (or do we?)... > > oXL.Quit > > Set oXL = Nothing > > ' Check the Processes list. Excel.exe is still running! > > End Sub > > > > When you run the code, it appears to run correctly the first time. > > However, Excel continues > > to run, even though you called the Quit method. If you call the code > > again, the message > > box now incorrectly displays 0 for the workbook count. Your code may now > > fail where you > > would expect it to succeed. > > > > To resolve both problems, you must fully qualify the Workbooks object that > > you reference > > for the count, as follows: > > > > MsgBox "Number of workbooks: " & oXL.Workbooks.Count, > > vbMsgBoxSetForeground > > > > > > > > > >> From: McGillivray, Don [IT] > >> Sent: Mon 9/22/2008 17:10 > >> To: Access Developers discussion and problem solving > >> Subject: [AccessD] Excel object behavior > >> > >> > >> Hello, All > >> > >> I have a procedure that exports a bunch of data to Excel, and then > >> uses the Excel object model to manipulate the resulting spreadsheets > >> (creating pivot tables, applying formatting, and the like.) Usually > >> it works as advertised, but some of my users are having a problem > >> where the UI freezes (or maybe it just appears to freeze). > >> > >> In trying to isolate the problem, I watched the effects of my code > >> carefully, and I notice that the Excel instance that I create in code > >> doesn't terminate until the procedure itself is finished. This, > >> despite the fact that I have closed, quit, and set to nothing all > >> Excel related objects before the end of the procedure. I know through > >> experience that failing to terminate Excel objects correctly leaves > >> the instance alive even at the end of the procedure. So I assume that > >> I'm killing them correctly since the instance does indeed die. > >> > >> Can anybody tell me if I should expect to see the instance survive > >> until the end of the proc, or is there something else I ought to be > >> doing when I'm finished with Excel? > >> > >> Thanks! > >> > >> Don McGillivray > >> > > -- > > Stuart Mclachlan > > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/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 robert at servicexp.com Tue Sep 23 14:42:34 2008 From: robert at servicexp.com (Robert) Date: Tue, 23 Sep 2008 15:42:34 -0400 Subject: [AccessD] Access 2002 - Another way to lose your work In-Reply-To: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0EFB0@XLIVMBX35bkup.aig.com> References: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0EFB0@XLIVMBX35bkup.aig.com> Message-ID: <002001c91db4$87826bc0$96874340$@com> I believe that it's a bug from way back, and is still present in Access 2007 WBR ~Robert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert Sent: Tuesday, September 23, 2008 2:57 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access 2002 - Another way to lose your work No good I'm afraid. Directly after opening an MDB file ? SetWarnings returned a blank line. If I then type DoCmd.SetWarnings False, then ? SetWarnings still returns a blank line. If I type DoCmd.SetWarnings True, then ? SetWarnings still returns a blank line. As for my lost work, the fact that the list of changed objects opened up when I hit the save button tells me that SetWarnings was True, but I still cannot figure out why the one object (a form) got saved, and all the other changes (to code modules) got blown away. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David McAfee Sent: Tuesday, September 23, 2008 2:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access 2002 - Another way to lose your work You can go into the immediate window and type ? SetWarnings should return blank/nothing or False On Tue, Sep 23, 2008 at 10:02 AM, Heenan, Lambert wrote: > Cross posted to Access-L and Access-D > > Ever seen this happen? I just lost 90 minutes of work this morning... > > The scenario was I had a couple of modules open, and a form module, > and another from. Had a few bookmarks set to a could jump between > modules/functions. > > After working on one of the forms I hit the Save button and I got the > usual listbox showing the altered objects in my project. I deselected > all the objects other than the form I wanted to save at that point and > then when I returned to an open module the first thing I noticed was > that I had no bookmarks set anymore. The next thing I noticed was that > all the code I had just written had vaporized. Aaargghh!!! > > The only think I can think of that might cause this is that > SetWarnings may have been set to False, but why, when I did not close > any of the altered objects, did my changes get blown away? > > Any way to tell in code if SetWarnings = False? > > 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 Lambert.Heenan at AIG.com Tue Sep 23 14:51:41 2008 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Tue, 23 Sep 2008 14:51:41 -0500 Subject: [AccessD] Access 2002 - Another way to lose your work Message-ID: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0F00D@XLIVMBX35bkup.aig.com> If you mean the vaporizing of work done in other objects then I'm not sure I agree. I have often done what I described, save just a subset of the list of changed objects, and then continued to work on the other, still unchanged ones. This is the first time I've ever lost anything when I made that choice. That was true in Access 97 and Access 2002 (which I'm using right now). ???? Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Robert Sent: Tuesday, September 23, 2008 3:43 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access 2002 - Another way to lose your work I believe that it's a bug from way back, and is still present in Access 2007 WBR ~Robert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert Sent: Tuesday, September 23, 2008 2:57 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access 2002 - Another way to lose your work No good I'm afraid. Directly after opening an MDB file ? SetWarnings returned a blank line. If I then type DoCmd.SetWarnings False, then ? SetWarnings still returns a blank line. If I type DoCmd.SetWarnings True, then ? SetWarnings still returns a blank line. As for my lost work, the fact that the list of changed objects opened up when I hit the save button tells me that SetWarnings was True, but I still cannot figure out why the one object (a form) got saved, and all the other changes (to code modules) got blown away. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David McAfee Sent: Tuesday, September 23, 2008 2:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access 2002 - Another way to lose your work You can go into the immediate window and type ? SetWarnings should return blank/nothing or False On Tue, Sep 23, 2008 at 10:02 AM, Heenan, Lambert wrote: > Cross posted to Access-L and Access-D > > Ever seen this happen? I just lost 90 minutes of work this morning... > > The scenario was I had a couple of modules open, and a form module, > and another from. Had a few bookmarks set to a could jump between > modules/functions. > > After working on one of the forms I hit the Save button and I got the > usual listbox showing the altered objects in my project. I deselected > all the objects other than the form I wanted to save at that point and > then when I returned to an open module the first thing I noticed was > that I had no bookmarks set anymore. The next thing I noticed was that > all the code I had just written had vaporized. Aaargghh!!! > > The only think I can think of that might cause this is that > SetWarnings may have been set to False, but why, when I did not close > any of the altered objects, did my changes get blown away? > > Any way to tell in code if SetWarnings = False? > > 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 robert at servicexp.com Tue Sep 23 15:02:03 2008 From: robert at servicexp.com (Robert) Date: Tue, 23 Sep 2008 16:02:03 -0400 Subject: [AccessD] Access 2002 - Another way to lose your work In-Reply-To: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0F00D@XLIVMBX35bkup.aig.com> References: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0F00D@XLIVMBX35bkup.aig.com> Message-ID: <002101c91db7$405a4c10$c10ee430$@com> Well, I have experienced it many times over the last 8 years, from 2002 to 2007. I now simply allow the save to take place on all the objects, it's just not worth the risk, in my opinion. WBR ~Robert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert Sent: Tuesday, September 23, 2008 3:52 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access 2002 - Another way to lose your work If you mean the vaporizing of work done in other objects then I'm not sure I agree. I have often done what I described, save just a subset of the list of changed objects, and then continued to work on the other, still unchanged ones. This is the first time I've ever lost anything when I made that choice. That was true in Access 97 and Access 2002 (which I'm using right now). ???? Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Robert Sent: Tuesday, September 23, 2008 3:43 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access 2002 - Another way to lose your work I believe that it's a bug from way back, and is still present in Access 2007 WBR ~Robert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert Sent: Tuesday, September 23, 2008 2:57 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access 2002 - Another way to lose your work No good I'm afraid. Directly after opening an MDB file ? SetWarnings returned a blank line. If I then type DoCmd.SetWarnings False, then ? SetWarnings still returns a blank line. If I type DoCmd.SetWarnings True, then ? SetWarnings still returns a blank line. As for my lost work, the fact that the list of changed objects opened up when I hit the save button tells me that SetWarnings was True, but I still cannot figure out why the one object (a form) got saved, and all the other changes (to code modules) got blown away. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David McAfee Sent: Tuesday, September 23, 2008 2:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access 2002 - Another way to lose your work You can go into the immediate window and type ? SetWarnings should return blank/nothing or False On Tue, Sep 23, 2008 at 10:02 AM, Heenan, Lambert wrote: > Cross posted to Access-L and Access-D > > Ever seen this happen? I just lost 90 minutes of work this morning... > > The scenario was I had a couple of modules open, and a form module, > and another from. Had a few bookmarks set to a could jump between > modules/functions. > > After working on one of the forms I hit the Save button and I got the > usual listbox showing the altered objects in my project. I deselected > all the objects other than the form I wanted to save at that point and > then when I returned to an open module the first thing I noticed was > that I had no bookmarks set anymore. The next thing I noticed was that > all the code I had just written had vaporized. Aaargghh!!! > > The only think I can think of that might cause this is that > SetWarnings may have been set to False, but why, when I did not close > any of the altered objects, did my changes get blown away? > > Any way to tell in code if SetWarnings = False? > > 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 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Lambert.Heenan at AIG.com Tue Sep 23 15:17:15 2008 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Tue, 23 Sep 2008 16:17:15 -0400 Subject: [AccessD] Access 2002 - Another way to lose your work Message-ID: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0F03E@XLIVMBX35bkup.aig.com> Oh well. Just something else to thank Bill for. I'll just have to change my ways. :-} Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Robert Sent: Tuesday, September 23, 2008 4:02 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access 2002 - Another way to lose your work Well, I have experienced it many times over the last 8 years, from 2002 to 2007. I now simply allow the save to take place on all the objects, it's just not worth the risk, in my opinion. WBR ~Robert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert Sent: Tuesday, September 23, 2008 3:52 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access 2002 - Another way to lose your work If you mean the vaporizing of work done in other objects then I'm not sure I agree. I have often done what I described, save just a subset of the list of changed objects, and then continued to work on the other, still unchanged ones. This is the first time I've ever lost anything when I made that choice. That was true in Access 97 and Access 2002 (which I'm using right now). ???? Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Robert Sent: Tuesday, September 23, 2008 3:43 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access 2002 - Another way to lose your work I believe that it's a bug from way back, and is still present in Access 2007 WBR ~Robert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert Sent: Tuesday, September 23, 2008 2:57 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access 2002 - Another way to lose your work No good I'm afraid. Directly after opening an MDB file ? SetWarnings returned a blank line. If I then type DoCmd.SetWarnings False, then ? SetWarnings still returns a blank line. If I type DoCmd.SetWarnings True, then ? SetWarnings still returns a blank line. As for my lost work, the fact that the list of changed objects opened up when I hit the save button tells me that SetWarnings was True, but I still cannot figure out why the one object (a form) got saved, and all the other changes (to code modules) got blown away. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David McAfee Sent: Tuesday, September 23, 2008 2:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access 2002 - Another way to lose your work You can go into the immediate window and type ? SetWarnings should return blank/nothing or False On Tue, Sep 23, 2008 at 10:02 AM, Heenan, Lambert wrote: > Cross posted to Access-L and Access-D > > Ever seen this happen? I just lost 90 minutes of work this morning... > > The scenario was I had a couple of modules open, and a form module, > and another from. Had a few bookmarks set to a could jump between > modules/functions. > > After working on one of the forms I hit the Save button and I got the > usual listbox showing the altered objects in my project. I deselected > all the objects other than the form I wanted to save at that point and > then when I returned to an open module the first thing I noticed was > that I had no bookmarks set anymore. The next thing I noticed was that > all the code I had just written had vaporized. Aaargghh!!! > > The only think I can think of that might cause this is that > SetWarnings may have been set to False, but why, when I did not close > any of the altered objects, did my changes get blown away? > > Any way to tell in code if SetWarnings = False? > > 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 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/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 smsconsulting.spb.ru Wed Sep 24 00:31:14 2008 From: shamil at smsconsulting.spb.ru (Shamil Salakhetdinov) Date: Wed, 24 Sep 2008 09:31:14 +0400 Subject: [AccessD] Excel object behavior In-Reply-To: <59F4C79E0A20B74990A3775EF2388A894223C6966A@PDAWM03C.ad.sprint.com> Message-ID: <003601c91e06$c45f8080$6401a8c0@nant> Don, You can check CTRL+ALT+DEL => Task Manager => Processes - and you can see MS Excel "ghost" instance(s) hanging there - that could be the case for your customers... When you create MS Excel instance in VBA code you use what is called "COM Out-of-Process Server" everything (a lot!) happens "under the hood" - but your application keeps "reference count" to the MS Excel objects your code have created - and this "reference counting" is a PITA/bottleneck of the whole COM technology... You can check this code will "clean-up"/kill MS Excel well on exit: Public Sub test() Dim xlApp As Object Set xlApp = CreateObject("Excel.Application") End Sub and this code will result in a "ghost" MS Excel instance: Public Sub test() Dim xlApp As Object Set xlApp = CreateObject("Excel.Application") xlApp.WorkBooks.Add End Sub In the fist case VBA/COM runtime is able to automatically kill MS Excel instance as there are no any other COM objects *referencing* this MS Excel COM instance... In the second case VBA/COM runtime *IS NOT* able to decide is it possible to kill MS Excel instance of not because there is Excel.Workbook object instance referencing Excel.Application object instance and Excel.Application object instance indirectly referencing Excel.Workbook object instance through Excel.Workboos collection... This code: Public Sub test() Dim xlApp As Object Set xlApp = CreateObject("Excel.Application") xlApp.Visible = True Dim wbk As Object Set wbk = xlApp.WorkBooks.Add wbk.Close xlApp.Quit Set xlApp = Nothing End Sub Will properly quits MS Excel instance even without setting wbk object instance to nothing because when you close wbk the reference count (I guess) from Workbooks collection is decreased by one, and there are no COM cross-references, which would keep ("ghost") MS Excel instance from quitting... -- Shamil P.S. Most of us use COM technology everyday - all and every MS Office app creates a lot of COM objects inside, and most of these applications are COM out-of-process servers etc. MS programmers who did program these application were very careful with reference counting - and we have stable an useful set of application with myriads of COM objects created and destroyed during their lifetime as MS Windows processes running on our PCs... -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of McGillivray, Don [IT] Sent: Tuesday, September 23, 2008 10:19 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Thanks, Shamil As a test I wrote a brief proc that simply opens and then kills an Excel instance. Indeed, the instance does die as soon as its object variable is set to nothing. That is NOT happening in my proc, so it looks like I'm overlooking something there - probably in the way my references are qualified. Still, if I haven't correctly terminated that Excel instance, I'm surprised that it doesn't hang around after the proc finishes. Seems like I'm doing SOMEthing right - just not EVERYthing. Thanks again to all who responded. Don -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Tuesday, September 23, 2008 10:51 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Excel object behavior <<< Maybe that's normal behavior, maybe not. Anybody know for sure? >>> Don, For sure it's not normal behavior - you should have somewhere "hanging" MS Excel object(s), which were not forcibly set to nothing before you quit MS Excel Application instance, or you might have created a "ghost" instance of MS Excel if you didn't qualify fully MS Excel objects while using them in your VBA code - something like Stuart's sample shows... -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of McGillivray, Don [IT] Sent: Tuesday, September 23, 2008 8:27 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Thanks to all for the feedback, however, my question is not so much how to kill the instance (I seem to be doing that OK), but whether the instance should be surviving to the bitter end of the proc - despite having quit/closed/set to nothing all related Excel objects well before the end of the proc. Maybe that's normal behavior, maybe not. Anybody know for sure? -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stuart McLachlan Sent: Monday, September 22, 2008 8:08 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Yep, it took me a long time to track down. I had a function which created a Word document from a template and then stuffed data into it was. I cut and pasted code from the Word Macro recorder to do some formatting of the data once it was inserted. It was generally used only once every few days and it always worked fine. Then when a user tried to call it twice in a row it broke the second time around with a 462 error. I finally tracked it down by googling "Error 462: The remote server machine does not exist or is unavailable." On 22 Sep 2008 at 22:05, Michael R Mattys wrote: > That is a spectacular find, Stuart ... the beating heart of VB/VBA > Why have I never seen this 'feature' discussed before? > When I look back now over the years ... lol! > > Michael R. Mattys > MapPoint & Access Dev > www.mattysconsulting.com > > ----- Original Message ----- > From: "Stuart McLachlan" > To: "Access Developers discussion and problem solving" > > Sent: Monday, September 22, 2008 9:37 PM > Subject: Re: [AccessD] Excel object behavior > > > > Don't know about Excel, but I've had a similar problem occur in Word. The > > problem turned > > out to be using Unqualified References. It's explained at > > http://support.microsoft.com/kb/319832 > > > > Here's an example from that page which illustrates your problem: > > > > > > Qualifying the Code to Avoid Errors > > The best guideline is to avoid using any Office object that you do not > > explicitly call from a > > parent object that you set in a specific variable. In other words, look > > for code that uses > > Office objects without qualifying which Office instance or document that > > it is supposed to > > refer to. For example, this code uses an unqualified call to display the > > count of open > > workbooks in Microsoft Excel: > > > > Sub CreateThreeBooks() > > Dim oXL As Excel.Application > > Dim i As Long > > > > ' Create Excel instance (make it visible for test)... > > Set oXL = New Excel.Application > > oXL.Visible = True > > > > ' Open a few empty workbooks... > > For i = 1 To 3 > > oXL.Workbooks.Add > > Next i > > > > ' How many books did we open? > > MsgBox "Number of workbooks: " & Workbooks.Count, vbMsgBoxSetForeground > > > > ' Shutdown Excel (or do we?)... > > oXL.Quit > > Set oXL = Nothing > > ' Check the Processes list. Excel.exe is still running! > > End Sub > > > > When you run the code, it appears to run correctly the first time. > > However, Excel continues > > to run, even though you called the Quit method. If you call the code > > again, the message > > box now incorrectly displays 0 for the workbook count. Your code may now > > fail where you > > would expect it to succeed. > > > > To resolve both problems, you must fully qualify the Workbooks object that > > you reference > > for the count, as follows: > > > > MsgBox "Number of workbooks: " & oXL.Workbooks.Count, > > vbMsgBoxSetForeground > > > > > > > > > >> From: McGillivray, Don [IT] > >> Sent: Mon 9/22/2008 17:10 > >> To: Access Developers discussion and problem solving > >> Subject: [AccessD] Excel object behavior > >> > >> > >> Hello, All > >> > >> I have a procedure that exports a bunch of data to Excel, and then > >> uses the Excel object model to manipulate the resulting spreadsheets > >> (creating pivot tables, applying formatting, and the like.) Usually > >> it works as advertised, but some of my users are having a problem > >> where the UI freezes (or maybe it just appears to freeze). > >> > >> In trying to isolate the problem, I watched the effects of my code > >> carefully, and I notice that the Excel instance that I create in code > >> doesn't terminate until the procedure itself is finished. This, > >> despite the fact that I have closed, quit, and set to nothing all > >> Excel related objects before the end of the procedure. I know through > >> experience that failing to terminate Excel objects correctly leaves > >> the instance alive even at the end of the procedure. So I assume that > >> I'm killing them correctly since the instance does indeed die. > >> > >> Can anybody tell me if I should expect to see the instance survive > >> until the end of the proc, or is there something else I ought to be > >> doing when I'm finished with Excel? > >> > >> Thanks! > >> > >> Don McGillivray > >> > > -- > > Stuart Mclachlan > > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/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 max.wanadoo at gmail.com Wed Sep 24 02:18:26 2008 From: max.wanadoo at gmail.com (Max Wanadoo) Date: Wed, 24 Sep 2008 08:18:26 +0100 Subject: [AccessD] Access 2002 - Another way to lose your work In-Reply-To: <002101c91db7$405a4c10$c10ee430$@com> References: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0F00D@XLIVMBX35bkup.aig.com> <002101c91db7$405a4c10$c10ee430$@com> Message-ID: Me too. I could never figure out AND remember if it was the one I clicked on that was saved or the ones that I didn't click on and if I got it wrong, I lost work. So for me, same as Robert, I save the lot! Call me a coward but there we have it! Max On Tue, Sep 23, 2008 at 9:02 PM, Robert wrote: > Well, > I have experienced it many times over the last 8 years, from 2002 to 2007. > I now simply allow the save to take place on all the objects, it's just not > worth the risk, in my opinion. > > > WBR > ~Robert > > > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert > Sent: Tuesday, September 23, 2008 3:52 PM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Access 2002 - Another way to lose your work > > If you mean the vaporizing of work done in other objects then I'm not sure > I > agree. I have often done what I described, save just a subset of the list > of > changed objects, and then continued to work on the other, still unchanged > ones. This is the first time I've ever lost anything when I made that > choice. That was true in Access 97 and Access 2002 (which I'm using right > now). ???? > > Lambert > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Robert > Sent: Tuesday, September 23, 2008 3:43 PM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Access 2002 - Another way to lose your work > > I believe that it's a bug from way back, and is still present in Access > 2007 > > > WBR > ~Robert > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert > Sent: Tuesday, September 23, 2008 2:57 PM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Access 2002 - Another way to lose your work > > No good I'm afraid. Directly after opening an MDB file ? SetWarnings > returned a blank line. > > If I then type DoCmd.SetWarnings False, then ? SetWarnings still returns a > blank line. > > If I type DoCmd.SetWarnings True, then ? SetWarnings still returns a blank > line. > > As for my lost work, the fact that the list of changed objects opened up > when I hit the save button tells me that SetWarnings was True, but I still > cannot figure out why the one object (a form) got saved, and all the other > changes (to code modules) got blown away. > > Lambert > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David McAfee > Sent: Tuesday, September 23, 2008 2:15 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Access 2002 - Another way to lose your work > > You can go into the immediate window and type ? SetWarnings > > should return blank/nothing or False > > > On Tue, Sep 23, 2008 at 10:02 AM, Heenan, Lambert > wrote: > > > Cross posted to Access-L and Access-D > > > > Ever seen this happen? I just lost 90 minutes of work this morning... > > > > The scenario was I had a couple of modules open, and a form module, > > and another from. Had a few bookmarks set to a could jump between > > modules/functions. > > > > After working on one of the forms I hit the Save button and I got the > > usual listbox showing the altered objects in my project. I deselected > > all the objects other than the form I wanted to save at that point and > > then when I returned to an open module the first thing I noticed was > > that I had no bookmarks set anymore. The next thing I noticed was that > > all the code I had just written had vaporized. Aaargghh!!! > > > > The only think I can think of that might cause this is that > > SetWarnings may have been set to False, but why, when I did not close > > any of the altered objects, did my changes get blown away? > > > > Any way to tell in code if SetWarnings = False? > > > > 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 > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/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 Sep 24 02:43:46 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Wed, 24 Sep 2008 09:43:46 +0200 Subject: [AccessD] Access 2002 - Another way to lose your work Message-ID: Hi Max Count me in. This is one of the most dangerous and stupid dialogues. I hate it. You always have to study the text, and I never have the patience, so I don't touch it and save all. Never lost a thing. If I wish to save some and not all, I cancel, go back and positively save the stuff to save and then skip all the remaining. /gustav >>> max.wanadoo at gmail.com 24-09-2008 09:18 >>> Me too. I could never figure out AND remember if it was the one I clicked on that was saved or the ones that I didn't click on and if I got it wrong, I lost work. So for me, same as Robert, I save the lot! Call me a coward but there we have it! Max On Tue, Sep 23, 2008 at 9:02 PM, Robert wrote: > Well, > I have experienced it many times over the last 8 years, from 2002 to 2007. > I now simply allow the save to take place on all the objects, it's just not > worth the risk, in my opinion. > > > WBR > ~Robert From shamil at smsconsulting.spb.ru Wed Sep 24 04:49:43 2008 From: shamil at smsconsulting.spb.ru (Shamil Salakhetdinov) Date: Wed, 24 Sep 2008 13:49:43 +0400 Subject: [AccessD] Access 2002 - Another way to lose your work In-Reply-To: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0EFB0@XLIVMBX35bkup.aig.com> Message-ID: <001201c91e2a$e079d3f0$6401a8c0@nant> <<< I still cannot figure out why the one object (a form) got saved, and all the other changes (to code modules) got blown away. >>> Hi Lambert, My guess is that form belongs to your FE mdb, and modules were from library mdb? Since MS Access 2000 AFAIKR (for sue that wasn't the case for MS Access 97) if you debug/trace/edit your library mdb VBA code and try to save it then you in fact save nothing... I always keep VBA code from mdb library modules copied and pasted and saved manually in text code files and after I quit my debug session I do open text files and copy over the code in VBA modules - well, I must say almost didn't do that stupid work anymore as I'm mainly working with .NET - this "feature" of getting VBA code from library MDB lost is one of the main "no-go" with serious VBA code development anymore... To workaround the issue effectively (as MS is very probably not going to fix that issue as VBA team doesn't exist there anymore or exists just to support existing features AFAIU) - to workaround the issue effectively it would be useful to have a COM add-in to be called by hot-key from VBA window to save current (-ly opened) modules' code into text files, and have additional feature to replace code in modules (including class/forms/reports modules of course) from saved in text files... But beware! - when I did try to do something like that with MS Excel VBA projects - I mean replacing code modules using text files - I did end up in constant GPFing of MS Excel VBA projects - no workaround... For MS Access VBA - it usually works well but still one can get their mdb broken - always keep a back-up copy in safe place when you do (mass) replace of code in your VBA modules... -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert Sent: Tuesday, September 23, 2008 10:57 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access 2002 - Another way to lose your work No good I'm afraid. Directly after opening an MDB file ? SetWarnings returned a blank line. If I then type DoCmd.SetWarnings False, then ? SetWarnings still returns a blank line. If I type DoCmd.SetWarnings True, then ? SetWarnings still returns a blank line. As for my lost work, the fact that the list of changed objects opened up when I hit the save button tells me that SetWarnings was True, but I still cannot figure out why the one object (a form) got saved, and all the other changes (to code modules) got blown away. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David McAfee Sent: Tuesday, September 23, 2008 2:15 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access 2002 - Another way to lose your work You can go into the immediate window and type ? SetWarnings should return blank/nothing or False On Tue, Sep 23, 2008 at 10:02 AM, Heenan, Lambert wrote: > Cross posted to Access-L and Access-D > > Ever seen this happen? I just lost 90 minutes of work this morning... > > The scenario was I had a couple of modules open, and a form module, > and another from. Had a few bookmarks set to a could jump between > modules/functions. > > After working on one of the forms I hit the Save button and I got the > usual listbox showing the altered objects in my project. I deselected > all the objects other than the form I wanted to save at that point and > then when I returned to an open module the first thing I noticed was > that I had no bookmarks set anymore. The next thing I noticed was that > all the code I had just written had vaporized. Aaargghh!!! > > The only think I can think of that might cause this is that > SetWarnings may have been set to False, but why, when I did not close > any of the altered objects, did my changes get blown away? > > Any way to tell in code if SetWarnings = False? > > 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 stuart at lexacorp.com.pg Wed Sep 24 05:31:07 2008 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Wed, 24 Sep 2008 20:31:07 +1000 Subject: [AccessD] Access 2002 - Another way to lose your work In-Reply-To: References: Message-ID: <48DAA38B.5903.15BF03DE@stuart.lexacorp.com.pg> Been there, done that, got the T-Shirt :-( Always save the lot! On 24 Sep 2008 at 9:43, Gustav Brock wrote: > Hi Max > > Count me in. This is one of the most dangerous and stupid dialogues. I hate it. > You always have to study the text, and I never have the patience, so I don't touch it and save all. Never lost a thing. > > If I wish to save some and not all, I cancel, go back and positively save the stuff to save and then skip all the remaining. > > /gustav > > >>> max.wanadoo at gmail.com 24-09-2008 09:18 >>> > Me too. I could never figure out AND remember if it was the one I clicked > on that was saved or the ones that I didn't click on and if I got it wrong, > I lost work. So for me, same as Robert, I save the lot! Call me a coward > but there we have it! > Max > > > > On Tue, Sep 23, 2008 at 9:02 PM, Robert wrote: > > > Well, > > I have experienced it many times over the last 8 years, from 2002 to 2007. > > I now simply allow the save to take place on all the objects, it's just not > > worth the risk, in my opinion. > > > > > > WBR > > ~Robert > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From rockysmolin at bchacc.com Wed Sep 24 07:33:51 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Wed, 24 Sep 2008 05:33:51 -0700 Subject: [AccessD] Access 2002 - Another way to lose your work In-Reply-To: References: Message-ID: <010f01c91e41$cd5ab070$0201a8c0@HAL9005> Reminds me of a question I asked a while back but no one seemed to know. I have sub form in a rather complex app which comes up in the save dialog box no matter what form I've modified. So I was wondering why that should come up in the save dialog every time when I've not made any changes to it. Idle curiosity, mostly. Like you, I, too, always reply save all, and I have developed an unconscious habit of pressing Alt-F-S a lot - habit from the DOS days, I think. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Wednesday, September 24, 2008 12:44 AM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Access 2002 - Another way to lose your work Hi Max Count me in. This is one of the most dangerous and stupid dialogues. I hate it. You always have to study the text, and I never have the patience, so I don't touch it and save all. Never lost a thing. If I wish to save some and not all, I cancel, go back and positively save the stuff to save and then skip all the remaining. /gustav >>> max.wanadoo at gmail.com 24-09-2008 09:18 >>> Me too. I could never figure out AND remember if it was the one I clicked on that was saved or the ones that I didn't click on and if I got it wrong, I lost work. So for me, same as Robert, I save the lot! Call me a coward but there we have it! Max On Tue, Sep 23, 2008 at 9:02 PM, Robert wrote: > Well, > I have experienced it many times over the last 8 years, from 2002 to 2007. > I now simply allow the save to take place on all the objects, it's > just not worth the risk, in my opinion. > > > WBR > ~Robert -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Lambert.Heenan at AIG.com Wed Sep 24 07:37:25 2008 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Wed, 24 Sep 2008 08:37:25 -0400 Subject: [AccessD] Access 2002 - Another way to lose your work Message-ID: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0F120@XLIVMBX35bkup.aig.com> Hi Shamil, Actually the code modules and forms were all in the same front end. I do have a library of code routines, but the front end is using the MDE version. Just another one of life's mysteries that Access throws at us. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Wednesday, September 24, 2008 5:50 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access 2002 - Another way to lose your work <<< I still cannot figure out why the one object (a form) got saved, and all the other changes (to code modules) got blown away. >>> Hi Lambert, My guess is that form belongs to your FE mdb, and modules were from library mdb? Since MS Access 2000 AFAIKR (for sue that wasn't the case for MS Access 97) if you debug/trace/edit your library mdb VBA code and try to save it then you in fact save nothing... I always keep VBA code from mdb library modules copied and pasted and saved manually in text code files and after I quit my debug session I do open text files and copy over the code in VBA modules - well, I must say almost didn't do that stupid work anymore as I'm mainly working with .NET - this "feature" of getting VBA code from library MDB lost is one of the main "no-go" with serious VBA code development anymore... To workaround the issue effectively (as MS is very probably not going to fix that issue as VBA team doesn't exist there anymore or exists just to support existing features AFAIU) - to workaround the issue effectively it would be useful to have a COM add-in to be called by hot-key from VBA window to save current (-ly opened) modules' code into text files, and have additional feature to replace code in modules (including class/forms/reports modules of course) from saved in text files... But beware! - when I did try to do something like that with MS Excel VBA projects - I mean replacing code modules using text files - I did end up in constant GPFing of MS Excel VBA projects - no workaround... For MS Access VBA - it usually works well but still one can get their mdb broken - always keep a back-up copy in safe place when you do (mass) replace of code in your VBA modules... -- Shamil From rockysmolin at bchacc.com Wed Sep 24 07:57:56 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Wed, 24 Sep 2008 05:57:56 -0700 Subject: [AccessD] Relationships to Visio? Message-ID: <011101c91e45$2a44d2e0$0201a8c0@HAL9005> Dear List: I find the relationships form to be a PITA to work with. The scroll wheel doesn't work and there's not enough real estate to get the tables on one form so I'm always scrolling up and down and left and right. Once I get the tables and relationships laid out is there a way to get it over to Visio where I could move the tables around more easier to make a more readable relationships diagram? Even if possible, would Visio be a good program to do this? OR what does anyone else do with this relationships thing to make it more presentable. MTIA, Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com From max.wanadoo at gmail.com Wed Sep 24 08:06:50 2008 From: max.wanadoo at gmail.com (Max Wanadoo) Date: Wed, 24 Sep 2008 14:06:50 +0100 Subject: [AccessD] Access 2002 - Another way to lose your work In-Reply-To: <010f01c91e41$cd5ab070$0201a8c0@HAL9005> References: <010f01c91e41$cd5ab070$0201a8c0@HAL9005> Message-ID: Me too. Also, when I save using my EATBloat program, two forms 9which I know are compiled) always come up asking me if I want them compiled...weird, but it may have something to do with the on-timer tick which I use in one of the forms. The other thing, Rocky. What is Alt-F-S. I have never seen that. I just use Ctl-S to save. Ta Max On Wed, Sep 24, 2008 at 1:33 PM, Rocky Smolin at Beach Access Software < rockysmolin at bchacc.com> wrote: > Reminds me of a question I asked a while back but no one seemed to know. I > have sub form in a rather complex app which comes up in the save dialog > box > no matter what form I've modified. So I was wondering why that should come > up in the save dialog every time when I've not made any changes to it. > Idle > curiosity, mostly. > > Like you, I, too, always reply save all, and I have developed an > unconscious > habit of pressing Alt-F-S a lot - habit from the DOS days, I think. > > > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > www.bchacc.com > > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock > Sent: Wednesday, September 24, 2008 12:44 AM > To: accessd at databaseadvisors.com > Subject: Re: [AccessD] Access 2002 - Another way to lose your work > > Hi Max > > Count me in. This is one of the most dangerous and stupid dialogues. I hate > it. > You always have to study the text, and I never have the patience, so I > don't > touch it and save all. Never lost a thing. > > If I wish to save some and not all, I cancel, go back and positively save > the stuff to save and then skip all the remaining. > > /gustav > > >>> max.wanadoo at gmail.com 24-09-2008 09:18 >>> > Me too. I could never figure out AND remember if it was the one I clicked > on that was saved or the ones that I didn't click on and if I got it wrong, > I lost work. So for me, same as Robert, I save the lot! Call me a coward > but there we have it! > Max > > > > On Tue, Sep 23, 2008 at 9:02 PM, Robert wrote: > > > Well, > > I have experienced it many times over the last 8 years, from 2002 to > 2007. > > I now simply allow the save to take place on all the objects, it's > > just not worth the risk, in my opinion. > > > > > > WBR > > ~Robert > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/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 smsconsulting.spb.ru Wed Sep 24 08:17:07 2008 From: shamil at smsconsulting.spb.ru (Shamil Salakhetdinov) Date: Wed, 24 Sep 2008 17:17:07 +0400 Subject: [AccessD] Access 2002 - Another way to lose your work In-Reply-To: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0F120@XLIVMBX35bkup.aig.com> Message-ID: <001701c91e47$d9b244e0$6401a8c0@nant> <<< Just another one of life's mysteries that Access throws at us. >>> Yes, and yet another "nice" feature is when you set a lot of breakpoints, do quite some edits, debug for an hour or so, then push CTRL+S and get GPF.... This is why I also keep saving all the FE code into text files, or I usually trying to make debugging/editing sessions very brief... - Test Driven Development approach could help here to have very brief/none debugging sessions although MS Access/VBA do not have(?) any frameworks for this development method... -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert Sent: Wednesday, September 24, 2008 4:37 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access 2002 - Another way to lose your work Hi Shamil, Actually the code modules and forms were all in the same front end. I do have a library of code routines, but the front end is using the MDE version. Just another one of life's mysteries that Access throws at us. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Wednesday, September 24, 2008 5:50 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access 2002 - Another way to lose your work <<< I still cannot figure out why the one object (a form) got saved, and all the other changes (to code modules) got blown away. >>> Hi Lambert, My guess is that form belongs to your FE mdb, and modules were from library mdb? Since MS Access 2000 AFAIKR (for sue that wasn't the case for MS Access 97) if you debug/trace/edit your library mdb VBA code and try to save it then you in fact save nothing... I always keep VBA code from mdb library modules copied and pasted and saved manually in text code files and after I quit my debug session I do open text files and copy over the code in VBA modules - well, I must say almost didn't do that stupid work anymore as I'm mainly working with .NET - this "feature" of getting VBA code from library MDB lost is one of the main "no-go" with serious VBA code development anymore... To workaround the issue effectively (as MS is very probably not going to fix that issue as VBA team doesn't exist there anymore or exists just to support existing features AFAIU) - to workaround the issue effectively it would be useful to have a COM add-in to be called by hot-key from VBA window to save current (-ly opened) modules' code into text files, and have additional feature to replace code in modules (including class/forms/reports modules of course) from saved in text files... But beware! - when I did try to do something like that with MS Excel VBA projects - I mean replacing code modules using text files - I did end up in constant GPFing of MS Excel VBA projects - no workaround... For MS Access VBA - it usually works well but still one can get their mdb broken - always keep a back-up copy in safe place when you do (mass) replace of code in your VBA modules... -- Shamil -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at smsconsulting.spb.ru Wed Sep 24 08:28:58 2008 From: shamil at smsconsulting.spb.ru (Shamil Salakhetdinov) Date: Wed, 24 Sep 2008 17:28:58 +0400 Subject: [AccessD] Relationships to Visio? In-Reply-To: <011101c91e45$2a44d2e0$0201a8c0@HAL9005> Message-ID: <001901c91e49$81588dc0$6401a8c0@nant> Hello Rocky, Have a look - FastStone Capture is able to capture "invisible" parts of relationship diagram by automatically scrolling and "gluing" parts of its screenshot: http://www.faststone.org/FSCaptureDetail.htm They have trial version and it's USD19.95 lifetime license. Does it help? -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Wednesday, September 24, 2008 4:58 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Relationships to Visio? Dear List: I find the relationships form to be a PITA to work with. The scroll wheel doesn't work and there's not enough real estate to get the tables on one form so I'm always scrolling up and down and left and right. Once I get the tables and relationships laid out is there a way to get it over to Visio where I could move the tables around more easier to make a more readable relationships diagram? Even if possible, would Visio be a good program to do this? OR what does anyone else do with this relationships thing to make it more presentable. MTIA, Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From rockysmolin at bchacc.com Wed Sep 24 08:52:56 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Wed, 24 Sep 2008 06:52:56 -0700 Subject: [AccessD] Access 2002 - Another way to lose your work In-Reply-To: References: <010f01c91e41$cd5ab070$0201a8c0@HAL9005> Message-ID: <011801c91e4c$d95a2080$0201a8c0@HAL9005> I use lot of keyboard shortcuts. Alt lights up the menus at the top of the form, F drops down the File menu. Just a habit. Not al the shortcuts have their own shortcut. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Max Wanadoo Sent: Wednesday, September 24, 2008 6:07 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Access 2002 - Another way to lose your work Me too. Also, when I save using my EATBloat program, two forms 9which I know are compiled) always come up asking me if I want them compiled...weird, but it may have something to do with the on-timer tick which I use in one of the forms. The other thing, Rocky. What is Alt-F-S. I have never seen that. I just use Ctl-S to save. Ta Max On Wed, Sep 24, 2008 at 1:33 PM, Rocky Smolin at Beach Access Software < rockysmolin at bchacc.com> wrote: > Reminds me of a question I asked a while back but no one seemed to > know. I have sub form in a rather complex app which comes up in the > save dialog box no matter what form I've modified. So I was wondering > why that should come up in the save dialog every time when I've not > made any changes to it. > Idle > curiosity, mostly. > > Like you, I, too, always reply save all, and I have developed an > unconscious habit of pressing Alt-F-S a lot - habit from the DOS days, > I think. > > > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > www.bchacc.com > > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav > Brock > Sent: Wednesday, September 24, 2008 12:44 AM > To: accessd at databaseadvisors.com > Subject: Re: [AccessD] Access 2002 - Another way to lose your work > > Hi Max > > Count me in. This is one of the most dangerous and stupid dialogues. I > hate it. > You always have to study the text, and I never have the patience, so I > don't touch it and save all. Never lost a thing. > > If I wish to save some and not all, I cancel, go back and positively > save the stuff to save and then skip all the remaining. > > /gustav > > >>> max.wanadoo at gmail.com 24-09-2008 09:18 >>> > Me too. I could never figure out AND remember if it was the one I > clicked on that was saved or the ones that I didn't click on and if I > got it wrong, I lost work. So for me, same as Robert, I save the lot! > Call me a coward but there we have it! > Max > > > > On Tue, Sep 23, 2008 at 9:02 PM, Robert wrote: > > > Well, > > I have experienced it many times over the last 8 years, from 2002 > > to > 2007. > > I now simply allow the save to take place on all the objects, it's > > just not worth the risk, in my opinion. > > > > > > WBR > > ~Robert > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/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 rockysmolin at bchacc.com Wed Sep 24 08:54:15 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Wed, 24 Sep 2008 06:54:15 -0700 Subject: [AccessD] Access 2002 - Another way to lose your work In-Reply-To: <001701c91e47$d9b244e0$6401a8c0@nant> References: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0F120@XLIVMBX35bkup.aig.com> <001701c91e47$d9b244e0$6401a8c0@nant> Message-ID: <011901c91e4d$088ad0c0$0201a8c0@HAL9005> The one that kills me is the 'ghost' breakpoint. After doing the debugging and clearing all the breakpoints, you send the app to the client, they run it and suddenly it stops on a line where there used to be a breakpoint. They hit F5 and everything carries on as normal. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Wednesday, September 24, 2008 6:17 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access 2002 - Another way to lose your work <<< Just another one of life's mysteries that Access throws at us. >>> Yes, and yet another "nice" feature is when you set a lot of breakpoints, do quite some edits, debug for an hour or so, then push CTRL+S and get GPF.... This is why I also keep saving all the FE code into text files, or I usually trying to make debugging/editing sessions very brief... - Test Driven Development approach could help here to have very brief/none debugging sessions although MS Access/VBA do not have(?) any frameworks for this development method... -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert Sent: Wednesday, September 24, 2008 4:37 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access 2002 - Another way to lose your work Hi Shamil, Actually the code modules and forms were all in the same front end. I do have a library of code routines, but the front end is using the MDE version. Just another one of life's mysteries that Access throws at us. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Wednesday, September 24, 2008 5:50 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Access 2002 - Another way to lose your work <<< I still cannot figure out why the one object (a form) got saved, and all the other changes (to code modules) got blown away. >>> Hi Lambert, My guess is that form belongs to your FE mdb, and modules were from library mdb? Since MS Access 2000 AFAIKR (for sue that wasn't the case for MS Access 97) if you debug/trace/edit your library mdb VBA code and try to save it then you in fact save nothing... I always keep VBA code from mdb library modules copied and pasted and saved manually in text code files and after I quit my debug session I do open text files and copy over the code in VBA modules - well, I must say almost didn't do that stupid work anymore as I'm mainly working with .NET - this "feature" of getting VBA code from library MDB lost is one of the main "no-go" with serious VBA code development anymore... To workaround the issue effectively (as MS is very probably not going to fix that issue as VBA team doesn't exist there anymore or exists just to support existing features AFAIU) - to workaround the issue effectively it would be useful to have a COM add-in to be called by hot-key from VBA window to save current (-ly opened) modules' code into text files, and have additional feature to replace code in modules (including class/forms/reports modules of course) from saved in text files... But beware! - when I did try to do something like that with MS Excel VBA projects - I mean replacing code modules using text files - I did end up in constant GPFing of MS Excel VBA projects - no workaround... For MS Access VBA - it usually works well but still one can get their mdb broken - always keep a back-up copy in safe place when you do (mass) replace of code in your VBA modules... -- Shamil -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/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 rockysmolin at bchacc.com Wed Sep 24 09:04:24 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Wed, 24 Sep 2008 07:04:24 -0700 Subject: [AccessD] Relationships to Visio? In-Reply-To: <001901c91e49$81588dc0$6401a8c0@nant> References: <011101c91e45$2a44d2e0$0201a8c0@HAL9005> <001901c91e49$81588dc0$6401a8c0@nant> Message-ID: <011a01c91e4e$737cf060$0201a8c0@HAL9005> Not sure that will do what I need. I want to transfer that relationship form to something where I can still move the boxes around. I've got a temp workaround - set the screen resolution to it's highest setting - then all the tables appear in one form. Everything else is too small to be readable, but this works for the moment. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Wednesday, September 24, 2008 6:29 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Relationships to Visio? Hello Rocky, Have a look - FastStone Capture is able to capture "invisible" parts of relationship diagram by automatically scrolling and "gluing" parts of its screenshot: http://www.faststone.org/FSCaptureDetail.htm They have trial version and it's USD19.95 lifetime license. Does it help? -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Wednesday, September 24, 2008 4:58 PM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Relationships to Visio? Dear List: I find the relationships form to be a PITA to work with. The scroll wheel doesn't work and there's not enough real estate to get the tables on one form so I'm always scrolling up and down and left and right. Once I get the tables and relationships laid out is there a way to get it over to Visio where I could move the tables around more easier to make a more readable relationships diagram? Even if possible, would Visio be a good program to do this? OR what does anyone else do with this relationships thing to make it more presentable. MTIA, Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.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 Sep 24 09:48:27 2008 From: markamatte at hotmail.com (Mark A Matte) Date: Wed, 24 Sep 2008 14:48:27 +0000 Subject: [AccessD] 'ghost' breakpoint (was: Access 2002 - Another way to lose your work) In-Reply-To: <011901c91e4d$088ad0c0$0201a8c0@HAL9005> References: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0F120@XLIVMBX35bkup.aig.com> <001701c91e47$d9b244e0$6401a8c0@nant> <011901c91e4d$088ad0c0$0201a8c0@HAL9005> Message-ID: Rocky, Funny you should mention that...last night I was testing some code...and I was using breakpoints...before I left I stepped through...everything ok...and cleared each breakpoint (manually...not using the menu)...then a few minutes ago I opened up the same mdb and thought...lets watch my handywork from last night, and clicked a button...and it opened up to the line of code where the break used to be...I hit F5 and everything ok. I thought it was strange but it did not do it again. Is this a potential issue for distribution? Anyway to test/prevent/safeguard? Thanks, Mark A. Matte P.S...if you hadn't mentioned it...I might have thought I imagined it... > From: rockysmolin at bchacc.com > To: accessd at databaseadvisors.com > Date: Wed, 24 Sep 2008 06:54:15 -0700 > Subject: Re: [AccessD] Access 2002 - Another way to lose your work > > The one that kills me is the 'ghost' breakpoint. After doing the debugging > and clearing all the breakpoints, you send the app to the client, they run > it and suddenly it stops on a line where there used to be a breakpoint. > They hit F5 and everything carries on as normal. > > > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > www.bchacc.com > > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Wednesday, September 24, 2008 6:17 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Access 2002 - Another way to lose your work > > <<< > Just another one of life's mysteries that Access throws at us. >>>> > Yes, and yet another "nice" feature is when you set a lot of breakpoints, do > quite some edits, debug for an hour or so, then push CTRL+S and get GPF.... > > This is why I also keep saving all the FE code into text files, or I usually > trying to make debugging/editing sessions very brief... - Test Driven > Development approach could help here to have very brief/none debugging > sessions although MS Access/VBA do not have(?) any frameworks for this > development method... > > -- > Shamil > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert > Sent: Wednesday, September 24, 2008 4:37 PM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Access 2002 - Another way to lose your work > > Hi Shamil, > > Actually the code modules and forms were all in the same front end. I do > have a library of code routines, but the front end is using the MDE version. > Just another one of life's mysteries that Access throws at us. > > Lambert > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Wednesday, September 24, 2008 5:50 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Access 2002 - Another way to lose your work > > <<< > I still cannot figure out why the one object (a form) got saved, and all the > other changes (to code modules) got blown away. >>>> > Hi Lambert, > > My guess is that form belongs to your FE mdb, and modules were from library > mdb? > > Since MS Access 2000 AFAIKR (for sue that wasn't the case for MS Access 97) > if you debug/trace/edit your library mdb VBA code and try to save it then > you in fact save nothing... > > I always keep VBA code from mdb library modules copied and pasted and saved > manually in text code files and after I quit my debug session I do open text > files and copy over the code in VBA modules - well, I must say almost didn't > do that stupid work anymore as I'm mainly working with .NET - this "feature" > of getting VBA code from library MDB lost is one of the main "no-go" with > serious VBA code development anymore... > > To workaround the issue effectively (as MS is very probably not going to fix > that issue as VBA team doesn't exist there anymore or exists just to support > existing features AFAIU) - to workaround the issue effectively it would be > useful to have a COM add-in to be called by hot-key from VBA window to save > current (-ly opened) modules' code into text files, and have additional > feature to replace code in modules (including class/forms/reports modules of > course) from saved in text files... > > But beware! - when I did try to do something like that with MS Excel VBA > projects - I mean replacing code modules using text files - I did end up in > constant GPFing of MS Excel VBA projects - no workaround... > > For MS Access VBA - it usually works well but still one can get their mdb > broken - always keep a back-up copy in safe place when you do (mass) replace > of code in your VBA modules... > > -- > Shamil > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/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 _________________________________________________________________ Get more out of the Web. Learn 10 hidden secrets of Windows Live. http://windowslive.com/connect/post/jamiethomson.spaces.live.com-Blog-cns!550F681DAD532637!5295.entry?ocid=TXT_TAGLM_WL_domore_092008 From rockysmolin at bchacc.com Wed Sep 24 10:12:41 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Wed, 24 Sep 2008 08:12:41 -0700 Subject: [AccessD] 'ghost' breakpoint (was: Access 2002 - Another way to lose your work) In-Reply-To: References: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0F120@XLIVMBX35bkup.aig.com><001701c91e47$d9b244e0$6401a8c0@nant> <011901c91e4d$088ad0c0$0201a8c0@HAL9005> Message-ID: <012901c91e57$fd22e3c0$0201a8c0@HAL9005> I think that a compact and repair will exorcise the ghost, but it's hard to test because its hard to reproduce. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mark A Matte Sent: Wednesday, September 24, 2008 7:48 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] 'ghost' breakpoint (was: Access 2002 - Another way to lose your work) Rocky, Funny you should mention that...last night I was testing some code...and I was using breakpoints...before I left I stepped through...everything ok...and cleared each breakpoint (manually...not using the menu)...then a few minutes ago I opened up the same mdb and thought...lets watch my handywork from last night, and clicked a button...and it opened up to the line of code where the break used to be...I hit F5 and everything ok. I thought it was strange but it did not do it again. Is this a potential issue for distribution? Anyway to test/prevent/safeguard? Thanks, Mark A. Matte P.S...if you hadn't mentioned it...I might have thought I imagined it... > From: rockysmolin at bchacc.com > To: accessd at databaseadvisors.com > Date: Wed, 24 Sep 2008 06:54:15 -0700 > Subject: Re: [AccessD] Access 2002 - Another way to lose your work > > The one that kills me is the 'ghost' breakpoint. After doing the > debugging and clearing all the breakpoints, you send the app to the > client, they run it and suddenly it stops on a line where there used to be a breakpoint. > They hit F5 and everything carries on as normal. > > > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > www.bchacc.com > > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Wednesday, September 24, 2008 6:17 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Access 2002 - Another way to lose your work > > <<< > Just another one of life's mysteries that Access throws at us. >>>> > Yes, and yet another "nice" feature is when you set a lot of > breakpoints, do quite some edits, debug for an hour or so, then push CTRL+S and get GPF.... > > This is why I also keep saving all the FE code into text files, or I > usually trying to make debugging/editing sessions very brief... - Test > Driven Development approach could help here to have very brief/none > debugging sessions although MS Access/VBA do not have(?) any > frameworks for this development method... > > -- > Shamil > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, > Lambert > Sent: Wednesday, September 24, 2008 4:37 PM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Access 2002 - Another way to lose your work > > Hi Shamil, > > Actually the code modules and forms were all in the same front end. I > do have a library of code routines, but the front end is using the MDE version. > Just another one of life's mysteries that Access throws at us. > > Lambert > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Wednesday, September 24, 2008 5:50 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Access 2002 - Another way to lose your work > > <<< > I still cannot figure out why the one object (a form) got saved, and > all the other changes (to code modules) got blown away. >>>> > Hi Lambert, > > My guess is that form belongs to your FE mdb, and modules were from > library mdb? > > Since MS Access 2000 AFAIKR (for sue that wasn't the case for MS > Access 97) if you debug/trace/edit your library mdb VBA code and try > to save it then you in fact save nothing... > > I always keep VBA code from mdb library modules copied and pasted and > saved manually in text code files and after I quit my debug session I > do open text files and copy over the code in VBA modules - well, I > must say almost didn't do that stupid work anymore as I'm mainly working with .NET - this "feature" > of getting VBA code from library MDB lost is one of the main "no-go" > with serious VBA code development anymore... > > To workaround the issue effectively (as MS is very probably not going > to fix that issue as VBA team doesn't exist there anymore or exists > just to support existing features AFAIU) - to workaround the issue > effectively it would be useful to have a COM add-in to be called by > hot-key from VBA window to save current (-ly opened) modules' code > into text files, and have additional feature to replace code in > modules (including class/forms/reports modules of > course) from saved in text files... > > But beware! - when I did try to do something like that with MS Excel > VBA projects - I mean replacing code modules using text files - I did > end up in constant GPFing of MS Excel VBA projects - no workaround... > > For MS Access VBA - it usually works well but still one can get their > mdb broken - always keep a back-up copy in safe place when you do > (mass) replace of code in your VBA modules... > > -- > Shamil > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/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 _________________________________________________________________ Get more out of the Web. Learn 10 hidden secrets of Windows Live. http://windowslive.com/connect/post/jamiethomson.spaces.live.com-Blog-cns!55 0F681DAD532637!5295.entry?ocid=TXT_TAGLM_WL_domore_092008 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From john at winhaven.net Wed Sep 24 10:19:11 2008 From: john at winhaven.net (John Bartow) Date: Wed, 24 Sep 2008 10:19:11 -0500 Subject: [AccessD] Relationships to Visio? In-Reply-To: <011101c91e45$2a44d2e0$0201a8c0@HAL9005> References: <011101c91e45$2a44d2e0$0201a8c0@HAL9005> Message-ID: <001801c91e58$e5b99570$b12cc050$@net> Hi Rocky, It depends what your goal is. With the correct version of Visio (2002/2003 Pro) you can layout a complete database with relationships and then create it in Access from the Visio diagram. If you already have a database and just want to show the tables and relationships for documentation then you could create it in any version of Visio as a standalone document. This is quite simple to do. You may be able to import the database structure from Access with the Visio standard version but I'm not sure. I like using Visio diagrams for db documentation purpose because I can color code the tables (or use lines and shapes) to enhance the visual impact of the layout. Grouping tables for their general purpose by color while showing the inter-connectedness of the complete data set tends to help non-database types with understanding it. This article may help: http://msdn.microsoft.com/en-us/library/aa662937.aspx HTH John B. From Donald.A.McGillivray at sprint.com Wed Sep 24 10:45:58 2008 From: Donald.A.McGillivray at sprint.com (McGillivray, Don [IT]) Date: Wed, 24 Sep 2008 10:45:58 -0500 Subject: [AccessD] Excel object behavior In-Reply-To: <003601c91e06$c45f8080$6401a8c0@nant> References: <59F4C79E0A20B74990A3775EF2388A894223C6966A@PDAWM03C.ad.sprint.com> <003601c91e06$c45f8080$6401a8c0@nant> Message-ID: <59F4C79E0A20B74990A3775EF2388A894223CE3006@PDAWM03C.ad.sprint.com> Shamil, Thanks for the detailed explanation. And yes, I was watching the processes tab of the task manager. I was careful to make sure that there were no Excel instances present before running the procedure. As I step through the part of the code that cleans up (closing workbooks, quitting Excel, setting pointers to Nothing, etc.) the instance remains on the processes list. Only upon execution of the "Exit Function" line of the procedure does the instance disappear - but the instance DOES go away, it doesn't remain a ghost. I suspect that I'm overlooking a pointer somewhere that needs to be set to Nothing. I thought I got them all, but maybe not . . . Don -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Tuesday, September 23, 2008 10:31 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Excel object behavior Don, You can check CTRL+ALT+DEL => Task Manager => Processes - and you can see MS Excel "ghost" instance(s) hanging there - that could be the case for your customers... When you create MS Excel instance in VBA code you use what is called "COM Out-of-Process Server" everything (a lot!) happens "under the hood" - but your application keeps "reference count" to the MS Excel objects your code have created - and this "reference counting" is a PITA/bottleneck of the whole COM technology... You can check this code will "clean-up"/kill MS Excel well on exit: Public Sub test() Dim xlApp As Object Set xlApp = CreateObject("Excel.Application") End Sub and this code will result in a "ghost" MS Excel instance: Public Sub test() Dim xlApp As Object Set xlApp = CreateObject("Excel.Application") xlApp.WorkBooks.Add End Sub In the fist case VBA/COM runtime is able to automatically kill MS Excel instance as there are no any other COM objects *referencing* this MS Excel COM instance... In the second case VBA/COM runtime *IS NOT* able to decide is it possible to kill MS Excel instance of not because there is Excel.Workbook object instance referencing Excel.Application object instance and Excel.Application object instance indirectly referencing Excel.Workbook object instance through Excel.Workboos collection... This code: Public Sub test() Dim xlApp As Object Set xlApp = CreateObject("Excel.Application") xlApp.Visible = True Dim wbk As Object Set wbk = xlApp.WorkBooks.Add wbk.Close xlApp.Quit Set xlApp = Nothing End Sub Will properly quits MS Excel instance even without setting wbk object instance to nothing because when you close wbk the reference count (I guess) from Workbooks collection is decreased by one, and there are no COM cross-references, which would keep ("ghost") MS Excel instance from quitting... -- Shamil P.S. Most of us use COM technology everyday - all and every MS Office app creates a lot of COM objects inside, and most of these applications are COM out-of-process servers etc. MS programmers who did program these application were very careful with reference counting - and we have stable an useful set of application with myriads of COM objects created and destroyed during their lifetime as MS Windows processes running on our PCs... -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of McGillivray, Don [IT] Sent: Tuesday, September 23, 2008 10:19 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Thanks, Shamil As a test I wrote a brief proc that simply opens and then kills an Excel instance. Indeed, the instance does die as soon as its object variable is set to nothing. That is NOT happening in my proc, so it looks like I'm overlooking something there - probably in the way my references are qualified. Still, if I haven't correctly terminated that Excel instance, I'm surprised that it doesn't hang around after the proc finishes. Seems like I'm doing SOMEthing right - just not EVERYthing. Thanks again to all who responded. Don -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Tuesday, September 23, 2008 10:51 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Excel object behavior <<< Maybe that's normal behavior, maybe not. Anybody know for sure? >>> Don, For sure it's not normal behavior - you should have somewhere "hanging" MS Excel object(s), which were not forcibly set to nothing before you quit MS Excel Application instance, or you might have created a "ghost" instance of MS Excel if you didn't qualify fully MS Excel objects while using them in your VBA code - something like Stuart's sample shows... -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of McGillivray, Don [IT] Sent: Tuesday, September 23, 2008 8:27 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Thanks to all for the feedback, however, my question is not so much how to kill the instance (I seem to be doing that OK), but whether the instance should be surviving to the bitter end of the proc - despite having quit/closed/set to nothing all related Excel objects well before the end of the proc. Maybe that's normal behavior, maybe not. Anybody know for sure? -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Stuart McLachlan Sent: Monday, September 22, 2008 8:08 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Yep, it took me a long time to track down. I had a function which created a Word document from a template and then stuffed data into it was. I cut and pasted code from the Word Macro recorder to do some formatting of the data once it was inserted. It was generally used only once every few days and it always worked fine. Then when a user tried to call it twice in a row it broke the second time around with a 462 error. I finally tracked it down by googling "Error 462: The remote server machine does not exist or is unavailable." On 22 Sep 2008 at 22:05, Michael R Mattys wrote: > That is a spectacular find, Stuart ... the beating heart of VB/VBA > Why have I never seen this 'feature' discussed before? > When I look back now over the years ... lol! > > Michael R. Mattys > MapPoint & Access Dev > www.mattysconsulting.com > > ----- Original Message ----- > From: "Stuart McLachlan" > To: "Access Developers discussion and problem solving" > > Sent: Monday, September 22, 2008 9:37 PM > Subject: Re: [AccessD] Excel object behavior > > > > Don't know about Excel, but I've had a similar problem occur in Word. The > > problem turned > > out to be using Unqualified References. It's explained at > > http://support.microsoft.com/kb/319832 > > > > Here's an example from that page which illustrates your problem: > > > > > > Qualifying the Code to Avoid Errors > > The best guideline is to avoid using any Office object that you do not > > explicitly call from a > > parent object that you set in a specific variable. In other words, look > > for code that uses > > Office objects without qualifying which Office instance or document that > > it is supposed to > > refer to. For example, this code uses an unqualified call to display the > > count of open > > workbooks in Microsoft Excel: > > > > Sub CreateThreeBooks() > > Dim oXL As Excel.Application > > Dim i As Long > > > > ' Create Excel instance (make it visible for test)... > > Set oXL = New Excel.Application > > oXL.Visible = True > > > > ' Open a few empty workbooks... > > For i = 1 To 3 > > oXL.Workbooks.Add > > Next i > > > > ' How many books did we open? > > MsgBox "Number of workbooks: " & Workbooks.Count, vbMsgBoxSetForeground > > > > ' Shutdown Excel (or do we?)... > > oXL.Quit > > Set oXL = Nothing > > ' Check the Processes list. Excel.exe is still running! > > End Sub > > > > When you run the code, it appears to run correctly the first time. > > However, Excel continues > > to run, even though you called the Quit method. If you call the code > > again, the message > > box now incorrectly displays 0 for the workbook count. Your code may now > > fail where you > > would expect it to succeed. > > > > To resolve both problems, you must fully qualify the Workbooks object that > > you reference > > for the count, as follows: > > > > MsgBox "Number of workbooks: " & oXL.Workbooks.Count, > > vbMsgBoxSetForeground > > > > > > > > > >> From: McGillivray, Don [IT] > >> Sent: Mon 9/22/2008 17:10 > >> To: Access Developers discussion and problem solving > >> Subject: [AccessD] Excel object behavior > >> > >> > >> Hello, All > >> > >> I have a procedure that exports a bunch of data to Excel, and then > >> uses the Excel object model to manipulate the resulting spreadsheets > >> (creating pivot tables, applying formatting, and the like.) Usually > >> it works as advertised, but some of my users are having a problem > >> where the UI freezes (or maybe it just appears to freeze). > >> > >> In trying to isolate the problem, I watched the effects of my code > >> carefully, and I notice that the Excel instance that I create in code > >> doesn't terminate until the procedure itself is finished. This, > >> despite the fact that I have closed, quit, and set to nothing all > >> Excel related objects before the end of the procedure. I know through > >> experience that failing to terminate Excel objects correctly leaves > >> the instance alive even at the end of the procedure. So I assume that > >> I'm killing them correctly since the instance does indeed die. > >> > >> Can anybody tell me if I should expect to see the instance survive > >> until the end of the proc, or is there something else I ought to be > >> doing when I'm finished with Excel? > >> > >> Thanks! > >> > >> Don McGillivray > >> > > -- > > Stuart Mclachlan > > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/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 dbdoug at gmail.com Wed Sep 24 10:48:26 2008 From: dbdoug at gmail.com (Doug Steele) Date: Wed, 24 Sep 2008 08:48:26 -0700 Subject: [AccessD] 'ghost' breakpoint (was: Access 2002 - Another way to lose your work) In-Reply-To: <012901c91e57$fd22e3c0$0201a8c0@HAL9005> References: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0F120@XLIVMBX35bkup.aig.com> <001701c91e47$d9b244e0$6401a8c0@nant> <011901c91e4d$088ad0c0$0201a8c0@HAL9005> <012901c91e57$fd22e3c0$0201a8c0@HAL9005> Message-ID: <4dd71a0c0809240848l3d83b1e8ud6242cde03e75ad5@mail.gmail.com> I get the user to add a blank line to the code then recompile. This seems to get rid of it. Doug Steele On Wed, Sep 24, 2008 at 8:12 AM, Rocky Smolin at Beach Access Software < rockysmolin at bchacc.com> wrote: > I think that a compact and repair will exorcise the ghost, but it's hard to > test because its hard to reproduce. > > > From rockysmolin at bchacc.com Wed Sep 24 11:14:26 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Wed, 24 Sep 2008 09:14:26 -0700 Subject: [AccessD] Relationships to Visio? In-Reply-To: <001801c91e58$e5b99570$b12cc050$@net> References: <011101c91e45$2a44d2e0$0201a8c0@HAL9005> <001801c91e58$e5b99570$b12cc050$@net> Message-ID: <013b01c91e60$9e004000$0201a8c0@HAL9005> Well, the import into Visio turned out to be easy but the diagram was not as good as the Access relationships layout. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Bartow Sent: Wednesday, September 24, 2008 8:19 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Relationships to Visio? Hi Rocky, It depends what your goal is. With the correct version of Visio (2002/2003 Pro) you can layout a complete database with relationships and then create it in Access from the Visio diagram. If you already have a database and just want to show the tables and relationships for documentation then you could create it in any version of Visio as a standalone document. This is quite simple to do. You may be able to import the database structure from Access with the Visio standard version but I'm not sure. I like using Visio diagrams for db documentation purpose because I can color code the tables (or use lines and shapes) to enhance the visual impact of the layout. Grouping tables for their general purpose by color while showing the inter-connectedness of the complete data set tends to help non-database types with understanding it. This article may help: http://msdn.microsoft.com/en-us/library/aa662937.aspx HTH John B. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From shamil at smsconsulting.spb.ru Wed Sep 24 11:33:23 2008 From: shamil at smsconsulting.spb.ru (Shamil Salakhetdinov) Date: Wed, 24 Sep 2008 20:33:23 +0400 Subject: [AccessD] Excel object behavior In-Reply-To: <59F4C79E0A20B74990A3775EF2388A894223CE3006@PDAWM03C.ad.sprint.com> Message-ID: <000301c91e63$448b3860$6401a8c0@nant> Don, I'm not sure I understand what is the issue? - if you tell that "the instance DOES go away" but in the same time you tell that you're "overlooking a pointer somewhere that needs to be set to Nothing."... I mean if MS Excel instance does go away - that's OK IMO, and everybody should be happy even without setting all the pointers to nothing :)... What am I missing? Thank you. -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of McGillivray, Don [IT] Sent: Wednesday, September 24, 2008 7:46 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Shamil, Thanks for the detailed explanation. And yes, I was watching the processes tab of the task manager. I was careful to make sure that there were no Excel instances present before running the procedure. As I step through the part of the code that cleans up (closing workbooks, quitting Excel, setting pointers to Nothing, etc.) the instance remains on the processes list. Only upon execution of the "Exit Function" line of the procedure does the instance disappear - but the instance DOES go away, it doesn't remain a ghost. I suspect that I'm overlooking a pointer somewhere that needs to be set to Nothing. I thought I got them all, but maybe not . . . Don From cfoust at infostatsystems.com Wed Sep 24 11:33:56 2008 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Wed, 24 Sep 2008 09:33:56 -0700 Subject: [AccessD] Relationships to Visio? In-Reply-To: <011101c91e45$2a44d2e0$0201a8c0@HAL9005> References: <011101c91e45$2a44d2e0$0201a8c0@HAL9005> Message-ID: I used Visio for years and liked it in spite of a few "features"! I got disillusioned when MS took the forward engineering out of the Pro version and moved it to Enterprise, so I tried Dezign for Databases (www.datanamic.com/), which isn't as pretty but is way powerful on relationships. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Wednesday, September 24, 2008 5:58 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Relationships to Visio? Dear List: I find the relationships form to be a PITA to work with. The scroll wheel doesn't work and there's not enough real estate to get the tables on one form so I'm always scrolling up and down and left and right. Once I get the tables and relationships laid out is there a way to get it over to Visio where I could move the tables around more easier to make a more readable relationships diagram? Even if possible, would Visio be a good program to do this? OR what does anyone else do with this relationships thing to make it more presentable. MTIA, Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.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 Sep 24 11:36:23 2008 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Wed, 24 Sep 2008 09:36:23 -0700 Subject: [AccessD] Relationships to Visio? In-Reply-To: <013b01c91e60$9e004000$0201a8c0@HAL9005> References: <011101c91e45$2a44d2e0$0201a8c0@HAL9005><001801c91e58$e5b99570$b12cc050$@net> <013b01c91e60$9e004000$0201a8c0@HAL9005> Message-ID: That's because Visio leaves the layout up to you. It just jams it all in and lets you put the cosmetic touches on. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Wednesday, September 24, 2008 9:14 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Relationships to Visio? Well, the import into Visio turned out to be easy but the diagram was not as good as the Access relationships layout. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Bartow Sent: Wednesday, September 24, 2008 8:19 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Relationships to Visio? Hi Rocky, It depends what your goal is. With the correct version of Visio (2002/2003 Pro) you can layout a complete database with relationships and then create it in Access from the Visio diagram. If you already have a database and just want to show the tables and relationships for documentation then you could create it in any version of Visio as a standalone document. This is quite simple to do. You may be able to import the database structure from Access with the Visio standard version but I'm not sure. I like using Visio diagrams for db documentation purpose because I can color code the tables (or use lines and shapes) to enhance the visual impact of the layout. Grouping tables for their general purpose by color while showing the inter-connectedness of the complete data set tends to help non-database types with understanding it. This article may help: http://msdn.microsoft.com/en-us/library/aa662937.aspx HTH John B. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/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 Wed Sep 24 12:52:37 2008 From: dwaters at usinternet.com (Dan Waters) Date: Wed, 24 Sep 2008 12:52:37 -0500 Subject: [AccessD] 'ghost' breakpoint (was: Access 2002 - Another way to lose your work) In-Reply-To: References: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219A0F120@XLIVMBX35bkup.aig.com><001701c91e47$d9b244e0$6401a8c0@nant> <011901c91e4d$088ad0c0$0201a8c0@HAL9005> Message-ID: <160A6DFD3CD14BC6BA0AB8FF8C7C296A@danwaters> If you Decompile, then Compile, the ghost breakpoints are cleared. Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Mark A Matte Sent: Wednesday, September 24, 2008 9:48 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] 'ghost' breakpoint (was: Access 2002 - Another way to lose your work) Rocky, Funny you should mention that...last night I was testing some code...and I was using breakpoints...before I left I stepped through...everything ok...and cleared each breakpoint (manually...not using the menu)...then a few minutes ago I opened up the same mdb and thought...lets watch my handywork from last night, and clicked a button...and it opened up to the line of code where the break used to be...I hit F5 and everything ok. I thought it was strange but it did not do it again. Is this a potential issue for distribution? Anyway to test/prevent/safeguard? Thanks, Mark A. Matte P.S...if you hadn't mentioned it...I might have thought I imagined it... > From: rockysmolin at bchacc.com > To: accessd at databaseadvisors.com > Date: Wed, 24 Sep 2008 06:54:15 -0700 > Subject: Re: [AccessD] Access 2002 - Another way to lose your work > > The one that kills me is the 'ghost' breakpoint. After doing the debugging > and clearing all the breakpoints, you send the app to the client, they run > it and suddenly it stops on a line where there used to be a breakpoint. > They hit F5 and everything carries on as normal. > > > Rocky Smolin > Beach Access Software > 858-259-4334 > www.e-z-mrp.com > www.bchacc.com > > > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Wednesday, September 24, 2008 6:17 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Access 2002 - Another way to lose your work > > <<< > Just another one of life's mysteries that Access throws at us. >>>> > Yes, and yet another "nice" feature is when you set a lot of breakpoints, do > quite some edits, debug for an hour or so, then push CTRL+S and get GPF.... > > This is why I also keep saving all the FE code into text files, or I usually > trying to make debugging/editing sessions very brief... - Test Driven > Development approach could help here to have very brief/none debugging > sessions although MS Access/VBA do not have(?) any frameworks for this > development method... > > -- > Shamil > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Heenan, Lambert > Sent: Wednesday, September 24, 2008 4:37 PM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Access 2002 - Another way to lose your work > > Hi Shamil, > > Actually the code modules and forms were all in the same front end. I do > have a library of code routines, but the front end is using the MDE version. > Just another one of life's mysteries that Access throws at us. > > Lambert > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil > Salakhetdinov > Sent: Wednesday, September 24, 2008 5:50 AM > To: 'Access Developers discussion and problem solving' > Subject: Re: [AccessD] Access 2002 - Another way to lose your work > > <<< > I still cannot figure out why the one object (a form) got saved, and all the > other changes (to code modules) got blown away. >>>> > Hi Lambert, > > My guess is that form belongs to your FE mdb, and modules were from library > mdb? > > Since MS Access 2000 AFAIKR (for sue that wasn't the case for MS Access 97) > if you debug/trace/edit your library mdb VBA code and try to save it then > you in fact save nothing... > > I always keep VBA code from mdb library modules copied and pasted and saved > manually in text code files and after I quit my debug session I do open text > files and copy over the code in VBA modules - well, I must say almost didn't > do that stupid work anymore as I'm mainly working with .NET - this "feature" > of getting VBA code from library MDB lost is one of the main "no-go" with > serious VBA code development anymore... > > To workaround the issue effectively (as MS is very probably not going to fix > that issue as VBA team doesn't exist there anymore or exists just to support > existing features AFAIU) - to workaround the issue effectively it would be > useful to have a COM add-in to be called by hot-key from VBA window to save > current (-ly opened) modules' code into text files, and have additional > feature to replace code in modules (including class/forms/reports modules of > course) from saved in text files... > > But beware! - when I did try to do something like that with MS Excel VBA > projects - I mean replacing code modules using text files - I did end up in > constant GPFing of MS Excel VBA projects - no workaround... > > For MS Access VBA - it usually works well but still one can get their mdb > broken - always keep a back-up copy in safe place when you do (mass) replace > of code in your VBA modules... > > -- > Shamil > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/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 _________________________________________________________________ Get more out of the Web. Learn 10 hidden secrets of Windows Live. http://windowslive.com/connect/post/jamiethomson.spaces.live.com-Blog-cns!55 0F681DAD532637!5295.entry?ocid=TXT_TAGLM_WL_domore_092008 -- 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 Wed Sep 24 13:08:25 2008 From: Donald.A.McGillivray at sprint.com (McGillivray, Don [IT]) Date: Wed, 24 Sep 2008 13:08:25 -0500 Subject: [AccessD] Excel object behavior In-Reply-To: <000301c91e63$448b3860$6401a8c0@nant> References: <59F4C79E0A20B74990A3775EF2388A894223CE3006@PDAWM03C.ad.sprint.com> <000301c91e63$448b3860$6401a8c0@nant> Message-ID: <59F4C79E0A20B74990A3775EF2388A894223CE3369@PDAWM03C.ad.sprint.com> Shamil, Well, I don't know if I have a problem or not. I was trying to troubleshoot a user complaint, and noticed that they had a ghost instance of Excel. When I stepped through the code, I noticed that the timing of the "death" of the instance didn't coincide with the setting of the final pointer to Nothing. When I did a simple test procedure that started and terminated an Excel instance, I noticed that the instance died immediately upon setting it to nothing. So it leads me to think that the user's complaint might be related to the way the objects are being terminated. I don't understand much about that (though, thanks to your help I now understand more) so I raised the question to the experts. Thanks again for taking time to respond to my musings . . . Don -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Wednesday, September 24, 2008 9:33 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Excel object behavior Don, I'm not sure I understand what is the issue? - if you tell that "the instance DOES go away" but in the same time you tell that you're "overlooking a pointer somewhere that needs to be set to Nothing."... I mean if MS Excel instance does go away - that's OK IMO, and everybody should be happy even without setting all the pointers to nothing :)... What am I missing? Thank you. -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of McGillivray, Don [IT] Sent: Wednesday, September 24, 2008 7:46 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Shamil, Thanks for the detailed explanation. And yes, I was watching the processes tab of the task manager. I was careful to make sure that there were no Excel instances present before running the procedure. As I step through the part of the code that cleans up (closing workbooks, quitting Excel, setting pointers to Nothing, etc.) the instance remains on the processes list. Only upon execution of the "Exit Function" line of the procedure does the instance disappear - but the instance DOES go away, it doesn't remain a ghost. I suspect that I'm overlooking a pointer somewhere that needs to be set to Nothing. I thought I got them all, but maybe not . . . Don -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From john at winhaven.net Wed Sep 24 14:11:56 2008 From: john at winhaven.net (John Bartow) Date: Wed, 24 Sep 2008 14:11:56 -0500 Subject: [AccessD] Relationships to Visio? In-Reply-To: <013b01c91e60$9e004000$0201a8c0@HAL9005> References: <011101c91e45$2a44d2e0$0201a8c0@HAL9005> <001801c91e58$e5b99570$b12cc050$@net> <013b01c91e60$9e004000$0201a8c0@HAL9005> Message-ID: <000001c91e79$69ba4160$3d2ec420$@net> Infinitely more customizable though. Visio sucks in all of the info and then lays it all out to fit the page the best it knows how to but afterwards you can (and probably should) rearrange it to your liking. Click and drag. Right click to set shading and colors, etc. You can also select multiple objects and right click to set those attributes to more than one. HTH John B. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Well, the import into Visio turned out to be easy but the diagram was not as good as the Access relationships layout. From shamil at smsconsulting.spb.ru Wed Sep 24 14:15:00 2008 From: shamil at smsconsulting.spb.ru (Shamil Salakhetdinov) Date: Wed, 24 Sep 2008 23:15:00 +0400 Subject: [AccessD] Excel object behavior In-Reply-To: <59F4C79E0A20B74990A3775EF2388A894223CE3369@PDAWM03C.ad.sprint.com> Message-ID: <000d01c91e79$d8313770$6401a8c0@nant> <<< ...noticed that they had... >>> Don, 1) they had, or 2) using the same MS Access/VBA => MS Excel Automation code you were getting such ghost instances on customers PCs while you didn't have such ghost instances on your development/test PCs ? -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of McGillivray, Don [IT] Sent: Wednesday, September 24, 2008 10:08 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Shamil, Well, I don't know if I have a problem or not. I was trying to troubleshoot a user complaint, and noticed that they had a ghost instance of Excel. When I stepped through the code, I noticed that the timing of the "death" of the instance didn't coincide with the setting of the final pointer to Nothing. When I did a simple test procedure that started and terminated an Excel instance, I noticed that the instance died immediately upon setting it to nothing. So it leads me to think that the user's complaint might be related to the way the objects are being terminated. I don't understand much about that (though, thanks to your help I now understand more) so I raised the question to the experts. Thanks again for taking time to respond to my musings . . . Don -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Wednesday, September 24, 2008 9:33 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Excel object behavior Don, I'm not sure I understand what is the issue? - if you tell that "the instance DOES go away" but in the same time you tell that you're "overlooking a pointer somewhere that needs to be set to Nothing."... I mean if MS Excel instance does go away - that's OK IMO, and everybody should be happy even without setting all the pointers to nothing :)... What am I missing? Thank you. -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of McGillivray, Don [IT] Sent: Wednesday, September 24, 2008 7:46 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Shamil, Thanks for the detailed explanation. And yes, I was watching the processes tab of the task manager. I was careful to make sure that there were no Excel instances present before running the procedure. As I step through the part of the code that cleans up (closing workbooks, quitting Excel, setting pointers to Nothing, etc.) the instance remains on the processes list. Only upon execution of the "Exit Function" line of the procedure does the instance disappear - but the instance DOES go away, it doesn't remain a ghost. I suspect that I'm overlooking a pointer somewhere that needs to be set to Nothing. I thought I got them all, but maybe not . . . 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 Donald.A.McGillivray at sprint.com Wed Sep 24 15:42:50 2008 From: Donald.A.McGillivray at sprint.com (McGillivray, Don [IT]) Date: Wed, 24 Sep 2008 15:42:50 -0500 Subject: [AccessD] Excel object behavior In-Reply-To: <000d01c91e79$d8313770$6401a8c0@nant> References: <59F4C79E0A20B74990A3775EF2388A894223CE3369@PDAWM03C.ad.sprint.com> <000d01c91e79$d8313770$6401a8c0@nant> Message-ID: <59F4C79E0A20B74990A3775EF2388A894223D659D8@PDAWM03C.ad.sprint.com> Shamil, My app runs in a Windows Terminal Services environment. Each user gets a separate session, and only my app runs in that session (it's configured to prevent access to the desktop or any other apps). If an Excel instance exists in that session, my app created it. I noticed after the complaint (using the Task Manager in an admin session on the server) that the user's session had a ghost instance of Excel. Does that make sense? Don -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Wednesday, September 24, 2008 12:15 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Excel object behavior <<< ...noticed that they had... >>> Don, 1) they had, or 2) using the same MS Access/VBA => MS Excel Automation code you were getting such ghost instances on customers PCs while you didn't have such ghost instances on your development/test PCs ? -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of McGillivray, Don [IT] Sent: Wednesday, September 24, 2008 10:08 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Shamil, Well, I don't know if I have a problem or not. I was trying to troubleshoot a user complaint, and noticed that they had a ghost instance of Excel. When I stepped through the code, I noticed that the timing of the "death" of the instance didn't coincide with the setting of the final pointer to Nothing. When I did a simple test procedure that started and terminated an Excel instance, I noticed that the instance died immediately upon setting it to nothing. So it leads me to think that the user's complaint might be related to the way the objects are being terminated. I don't understand much about that (though, thanks to your help I now understand more) so I raised the question to the experts. Thanks again for taking time to respond to my musings . . . Don -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Wednesday, September 24, 2008 9:33 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Excel object behavior Don, I'm not sure I understand what is the issue? - if you tell that "the instance DOES go away" but in the same time you tell that you're "overlooking a pointer somewhere that needs to be set to Nothing."... I mean if MS Excel instance does go away - that's OK IMO, and everybody should be happy even without setting all the pointers to nothing :)... What am I missing? Thank you. -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of McGillivray, Don [IT] Sent: Wednesday, September 24, 2008 7:46 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Shamil, Thanks for the detailed explanation. And yes, I was watching the processes tab of the task manager. I was careful to make sure that there were no Excel instances present before running the procedure. As I step through the part of the code that cleans up (closing workbooks, quitting Excel, setting pointers to Nothing, etc.) the instance remains on the processes list. Only upon execution of the "Exit Function" line of the procedure does the instance disappear - but the instance DOES go away, it doesn't remain a ghost. I suspect that I'm overlooking a pointer somewhere that needs to be set to Nothing. I thought I got them all, but maybe not . . . 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 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From steve at goodhall.info Wed Sep 24 17:07:14 2008 From: steve at goodhall.info (Steve Goodhall) Date: Wed, 24 Sep 2008 18:07:14 -0400 Subject: [AccessD] Excel object behavior In-Reply-To: <59F4C79E0A20B74990A3775EF2388A894223CE3369@PDAWM03C.ad.sprint.com> Message-ID: <1BBF5D48DBE14F64B6C6B447DDB39668@StevenAcer> Are you executing an Application.quit method on the Excel task before clearing the pointers? Regards, Steve Goodhall, PMP 248-505-5204 mobile -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of McGillivray, Don [IT] Sent: Wednesday, September 24, 2008 2:08 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Shamil, Well, I don't know if I have a problem or not. I was trying to troubleshoot a user complaint, and noticed that they had a ghost instance of Excel. When I stepped through the code, I noticed that the timing of the "death" of the instance didn't coincide with the setting of the final pointer to Nothing. When I did a simple test procedure that started and terminated an Excel instance, I noticed that the instance died immediately upon setting it to nothing. So it leads me to think that the user's complaint might be related to the way the objects are being terminated. I don't understand much about that (though, thanks to your help I now understand more) so I raised the question to the experts. Thanks again for taking time to respond to my musings . . . Don -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Wednesday, September 24, 2008 9:33 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Excel object behavior Don, I'm not sure I understand what is the issue? - if you tell that "the instance DOES go away" but in the same time you tell that you're "overlooking a pointer somewhere that needs to be set to Nothing."... I mean if MS Excel instance does go away - that's OK IMO, and everybody should be happy even without setting all the pointers to nothing :)... What am I missing? Thank you. -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of McGillivray, Don [IT] Sent: Wednesday, September 24, 2008 7:46 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Shamil, Thanks for the detailed explanation. And yes, I was watching the processes tab of the task manager. I was careful to make sure that there were no Excel instances present before running the procedure. As I step through the part of the code that cleans up (closing workbooks, quitting Excel, setting pointers to Nothing, etc.) the instance remains on the processes list. Only upon execution of the "Exit Function" line of the procedure does the instance disappear - but the instance DOES go away, it doesn't remain a ghost. I suspect that I'm overlooking a pointer somewhere that needs to be set to Nothing. I thought I got them all, but maybe not . . . 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 Donald.A.McGillivray at sprint.com Wed Sep 24 17:27:32 2008 From: Donald.A.McGillivray at sprint.com (McGillivray, Don [IT]) Date: Wed, 24 Sep 2008 17:27:32 -0500 Subject: [AccessD] Excel object behavior In-Reply-To: <1BBF5D48DBE14F64B6C6B447DDB39668@StevenAcer> References: <59F4C79E0A20B74990A3775EF2388A894223CE3369@PDAWM03C.ad.sprint.com> <1BBF5D48DBE14F64B6C6B447DDB39668@StevenAcer> Message-ID: <59F4C79E0A20B74990A3775EF2388A894223D65B91@PDAWM03C.ad.sprint.com> I'm doing things in the following sequence: Set xlApp = CreateObject("Excel.Application") Set xlDestBook = xlApp.Workbooks.Open(strTempPath & strReportName) Set xlOrigBook = xlApp.Workbooks.Open(strTempPath & strFileName) Set xlDestSheet = xlDestBook.Worksheets("DataSource") Set xlOrigSheet = xlOrigBook.Worksheets("qryTurnoverByEncloserType") > Do a bunch of stuff here < Set xlDestSheet = Nothing Set xlOrigSheet = Nothing xlDestBook.Save xlDestBook.Close xlOrigBook.Close Set xlOrigBook = Nothing Set xlDestBook = Nothing xlApp.Quit Set xlApp = Nothing When I place just these lines in a module (having stripped out all the in between stuff) the instance dies immediately on xlApp.Quit. When the code runs as written, it doesn't die until the function exits. I'm thinking I have something in that "in between" that prevents the death of the instance. I'm combing thru all that to see if something odd is happening there. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Goodhall Sent: Wednesday, September 24, 2008 3:07 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Excel object behavior Are you executing an Application.quit method on the Excel task before clearing the pointers? Regards, Steve Goodhall, PMP 248-505-5204 mobile -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of McGillivray, Don [IT] Sent: Wednesday, September 24, 2008 2:08 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Shamil, Well, I don't know if I have a problem or not. I was trying to troubleshoot a user complaint, and noticed that they had a ghost instance of Excel. When I stepped through the code, I noticed that the timing of the "death" of the instance didn't coincide with the setting of the final pointer to Nothing. When I did a simple test procedure that started and terminated an Excel instance, I noticed that the instance died immediately upon setting it to nothing. So it leads me to think that the user's complaint might be related to the way the objects are being terminated. I don't understand much about that (though, thanks to your help I now understand more) so I raised the question to the experts. Thanks again for taking time to respond to my musings . . . Don -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Wednesday, September 24, 2008 9:33 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Excel object behavior Don, I'm not sure I understand what is the issue? - if you tell that "the instance DOES go away" but in the same time you tell that you're "overlooking a pointer somewhere that needs to be set to Nothing."... I mean if MS Excel instance does go away - that's OK IMO, and everybody should be happy even without setting all the pointers to nothing :)... What am I missing? Thank you. -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of McGillivray, Don [IT] Sent: Wednesday, September 24, 2008 7:46 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Shamil, Thanks for the detailed explanation. And yes, I was watching the processes tab of the task manager. I was careful to make sure that there were no Excel instances present before running the procedure. As I step through the part of the code that cleans up (closing workbooks, quitting Excel, setting pointers to Nothing, etc.) the instance remains on the processes list. Only upon execution of the "Exit Function" line of the procedure does the instance disappear - but the instance DOES go away, it doesn't remain a ghost. I suspect that I'm overlooking a pointer somewhere that needs to be set to Nothing. I thought I got them all, but maybe not . . . 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 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From steve at goodhall.info Wed Sep 24 17:49:44 2008 From: steve at goodhall.info (Steve Goodhall) Date: Wed, 24 Sep 2008 18:49:44 -0400 Subject: [AccessD] Excel object behavior In-Reply-To: <59F4C79E0A20B74990A3775EF2388A894223D65B91@PDAWM03C.ad.sprint.com> Message-ID: <868888006A1A4F8C84B2F63B74B0F3FA@StevenAcer> Looks OK to me. Regards, Steve Goodhall, PMP 248-505-5204 mobile -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of McGillivray, Don [IT] Sent: Wednesday, September 24, 2008 6:28 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior I'm doing things in the following sequence: Set xlApp = CreateObject("Excel.Application") Set xlDestBook = xlApp.Workbooks.Open(strTempPath & strReportName) Set xlOrigBook = xlApp.Workbooks.Open(strTempPath & strFileName) Set xlDestSheet = xlDestBook.Worksheets("DataSource") Set xlOrigSheet = xlOrigBook.Worksheets("qryTurnoverByEncloserType") > Do a bunch of stuff here < Set xlDestSheet = Nothing Set xlOrigSheet = Nothing xlDestBook.Save xlDestBook.Close xlOrigBook.Close Set xlOrigBook = Nothing Set xlDestBook = Nothing xlApp.Quit Set xlApp = Nothing When I place just these lines in a module (having stripped out all the in between stuff) the instance dies immediately on xlApp.Quit. When the code runs as written, it doesn't die until the function exits. I'm thinking I have something in that "in between" that prevents the death of the instance. I'm combing thru all that to see if something odd is happening there. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Goodhall Sent: Wednesday, September 24, 2008 3:07 PM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Excel object behavior Are you executing an Application.quit method on the Excel task before clearing the pointers? Regards, Steve Goodhall, PMP 248-505-5204 mobile -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of McGillivray, Don [IT] Sent: Wednesday, September 24, 2008 2:08 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Shamil, Well, I don't know if I have a problem or not. I was trying to troubleshoot a user complaint, and noticed that they had a ghost instance of Excel. When I stepped through the code, I noticed that the timing of the "death" of the instance didn't coincide with the setting of the final pointer to Nothing. When I did a simple test procedure that started and terminated an Excel instance, I noticed that the instance died immediately upon setting it to nothing. So it leads me to think that the user's complaint might be related to the way the objects are being terminated. I don't understand much about that (though, thanks to your help I now understand more) so I raised the question to the experts. Thanks again for taking time to respond to my musings . . . Don -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Shamil Salakhetdinov Sent: Wednesday, September 24, 2008 9:33 AM To: 'Access Developers discussion and problem solving' Subject: Re: [AccessD] Excel object behavior Don, I'm not sure I understand what is the issue? - if you tell that "the instance DOES go away" but in the same time you tell that you're "overlooking a pointer somewhere that needs to be set to Nothing."... I mean if MS Excel instance does go away - that's OK IMO, and everybody should be happy even without setting all the pointers to nothing :)... What am I missing? Thank you. -- Shamil -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of McGillivray, Don [IT] Sent: Wednesday, September 24, 2008 7:46 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Excel object behavior Shamil, Thanks for the detailed explanation. And yes, I was watching the processes tab of the task manager. I was careful to make sure that there were no Excel instances present before running the procedure. As I step through the part of the code that cleans up (closing workbooks, quitting Excel, setting pointers to Nothing, etc.) the instance remains on the processes list. Only upon execution of the "Exit Function" line of the procedure does the instance disappear - but the instance DOES go away, it doesn't remain a ghost. I suspect that I'm overlooking a pointer somewhere that needs to be set to Nothing. I thought I got them all, but maybe not . . . 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 -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/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 Darryl.Collins at coles.com.au Wed Sep 24 19:36:43 2008 From: Darryl.Collins at coles.com.au (Darryl Collins) Date: Thu, 25 Sep 2008 10:36:43 +1000 Subject: [AccessD] Dlookups. your opinion please. In-Reply-To: <072901c91d83$f7883570$2f8601c7@SusanOne> Message-ID: <57E6E6CA42105A48B977303A2CDC2720076DA26FCE@WPEXCH22.retail.ad.cmltd.net.au> "the first thing I would do is convince the owners that the db needs to be rewritten from scratch, if at all possible" oh yeah, that is not only possible, it is going to happen as that is precisely what we recommended to the client. Tell us what data you have, tell what outcomes you need and we will (re)build it. The current model is too risky and flawed for us to be bothered with. It will take longer to debug it then it would to rebuild it into a nice tight supported app. Sadly for the client, (and good for us), we currently have about 4 months worth of work in the queue so this is just a(nother) band aid on the worst of their problems. basically they want a quick and dirty fix to get them thru the next couple of reporting periods until we can rebuild it properly. Not the greatest solution I admit and it comes with risks, but the client is aware of this and is ok for now. This is definately something middle of the road temp to keep most folks happier, if not happy. thanks for everyone's input. It is really appreciated. cheers Darryl. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Susan Harkins Sent: Tuesday, 23 September 2008 11:55 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Dlookups. your opinion please. Darryl, the first thing I would do is convince the owners that the db needs to be rewritten from scratch, if at all possible. Unless you're auditing this thing regularly, there is no way to know when it's generating errors. If they're iffy on that, I'd work hard to find an error and draw it to their attention. Say, it reports that you have 100 widgets in stock when you really have 150, so you missed that big sale to an important client yesterday because she really needed 130, but because you couldn't supply the full amount, she went someplace else. Find an error. Second, domain aggregates aren't bad. Some say they're slow and that would include me, but um... others thing I'm daft on that one. Gustav (I think it was) said a simple index on the column takes care of the performance problem, and if that's the case, that would be fine in most cases -- but in yours, it might not. Adding an index might blow something up! ;) But domain aggregates, in an of themselves, are just fine. With so much to fix, I don't think I'd give them priority if it were me. Susan H. > Hi All, > > I have, ummm, inherited a database (SQL Server Back, Access Front) at > work. Frankly this thing is a disaster waiting to happen and since the > guy who built has left (he used to admin it, and I suspect there were > regular band aid repairs and updates to keep it all steady) the actual > users are having no end of bother and bugs with it. anyway, I digress... -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com This email and any attachments may contain privileged and confidential information and are intended for the named addressee only. If you have received this e-mail in error, please notify the sender and delete this e-mail immediately. Any confidentiality, privilege or copyright is not waived or lost because this e-mail has been sent to you in error. It is your responsibility to check this e-mail and any attachments for viruses. No warranty is made that this material is free from computer virus or any other defect or error. Any loss/damage incurred by using this material is not the sender's responsibility. The sender's entire liability will be limited to resupplying the material. From erbachs at gmail.com Thu Sep 25 02:59:07 2008 From: erbachs at gmail.com (Steve Erbach) Date: Thu, 25 Sep 2008 02:59:07 -0500 Subject: [AccessD] Relationships to Visio? In-Reply-To: <011101c91e45$2a44d2e0$0201a8c0@HAL9005> References: <011101c91e45$2a44d2e0$0201a8c0@HAL9005> Message-ID: <39cb22f30809250059s20abb5ebkaa16e14d812fe479@mail.gmail.com> Rocky, The times I've used the relationships diagram for a big project, I'd spend quite a bit of time positioning the tables and lining up the join lines and spacing everything so that it was readable even though it stretched out beyond the bounds of normal paper. Then I'd do screen captures of the different sections of the diagram and splice them all together in some graphics program. Finally I'd print out the full diagram so that it spanned several sheets. Then scissors and tape to make a relationships diagram suitable for framing. These days I might get somebody where I work to print the full diagram on one of the large format printers we have. Steve Erbach Neenah, WI On Wed, Sep 24, 2008 at 7:57 AM, Rocky Smolin at Beach Access Software wrote: > Dear List: > > I find the relationships form to be a PITA to work with. The scroll wheel > doesn't work and there's not enough real estate to get the tables on one > form so I'm always scrolling up and down and left and right. > > Once I get the tables and relationships laid out is there a way to get it > over to Visio where I could move the tables around more easier to make a > more readable relationships diagram? Even if possible, would Visio be a > good program to do this? OR what does anyone else do with this > relationships thing to make it more presentable. > > MTIA, From rockysmolin at bchacc.com Thu Sep 25 08:46:56 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Thu, 25 Sep 2008 06:46:56 -0700 Subject: [AccessD] Relationships to Visio? In-Reply-To: <39cb22f30809250059s20abb5ebkaa16e14d812fe479@mail.gmail.com> References: <011101c91e45$2a44d2e0$0201a8c0@HAL9005> <39cb22f30809250059s20abb5ebkaa16e14d812fe479@mail.gmail.com> Message-ID: <020e01c91f15$2ce8d340$0201a8c0@HAL9005> Large format printer..that's the hot setup. I did set my second monitor to highest resolution and got all the tables on the display that way which made it much easier to work with, then printed it out landscape, narrow margins which was only two pages to tape together. The BE is changing every day right now so Visio - while providing a better diagram - would have too much overhead. And the diagram it generated covered 8 pages. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Erbach Sent: Thursday, September 25, 2008 12:59 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Relationships to Visio? Rocky, The times I've used the relationships diagram for a big project, I'd spend quite a bit of time positioning the tables and lining up the join lines and spacing everything so that it was readable even though it stretched out beyond the bounds of normal paper. Then I'd do screen captures of the different sections of the diagram and splice them all together in some graphics program. Finally I'd print out the full diagram so that it spanned several sheets. Then scissors and tape to make a relationships diagram suitable for framing. These days I might get somebody where I work to print the full diagram on one of the large format printers we have. Steve Erbach Neenah, WI On Wed, Sep 24, 2008 at 7:57 AM, Rocky Smolin at Beach Access Software wrote: > Dear List: > > I find the relationships form to be a PITA to work with. The scroll > wheel doesn't work and there's not enough real estate to get the > tables on one form so I'm always scrolling up and down and left and right. > > Once I get the tables and relationships laid out is there a way to get > it over to Visio where I could move the tables around more easier to > make a more readable relationships diagram? Even if possible, would > Visio be a good program to do this? OR what does anyone else do with > this relationships thing to make it more presentable. > > MTIA, -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From john at winhaven.net Thu Sep 25 10:07:23 2008 From: john at winhaven.net (John Bartow) Date: Thu, 25 Sep 2008 10:07:23 -0500 Subject: [AccessD] Relationships to Visio? In-Reply-To: <020e01c91f15$2ce8d340$0201a8c0@HAL9005> References: <011101c91e45$2a44d2e0$0201a8c0@HAL9005> <39cb22f30809250059s20abb5ebkaa16e14d812fe479@mail.gmail.com> <020e01c91f15$2ce8d340$0201a8c0@HAL9005> Message-ID: <00e601c91f20$6a89a570$3f9cf050$@net> I used to have a printer that did 11"x17". I'd keep like tables in a grouping that would fit on and then print them on 11"x17" sheets and tile them all together into a complete layout if needed. Usually end up with a nice poster or wallpaper in some cases. Good for meetings, bad for handouts ;o) For handouts I use Visio to make an overview layout of the general purpose of each sheet so I could put these together in a package. The general layout would be something like an table of contents to the detail level sheets. "Contact Information", "Permit Information", etc. with connection lines between the major elements to show the general flow of relationships. Kinkos (and others of their ilk) have large format printers so you may be able to do what Steve suggests and then take the large graphic down to them for a printout. HTH John B. -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Large format printer..that's the hot setup. I did set my second monitor to highest resolution and got all the tables on the display that way which made it much easier to work with, then printed it out landscape, narrow margins which was only two pages to tape together. The BE is changing every day right now so Visio - while providing a better diagram - would have too much overhead. And the diagram it generated covered 8 pages. From rockysmolin at bchacc.com Thu Sep 25 11:22:42 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Thu, 25 Sep 2008 09:22:42 -0700 Subject: [AccessD] Integrating Email with Custom Client Database Message-ID: <022301c91f2a$f0197ee0$0201a8c0@HAL9005> Dear List: A client with a law firm ahs a home-grown Access/SQL db for everything. They use Outlook but all emails are in one folder containing several tens of thousands of email. They have four thousand client. They have client contacts recorded but increasingly contacts are by email and so if they want to see a full history of interactions with a client they have to go to two places. Client would like some way to connect his client contacts with the emails. Has anyone had/solved this problem? MTIA, Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com From ssharkins at gmail.com Thu Sep 25 11:32:35 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Thu, 25 Sep 2008 12:32:35 -0400 Subject: [AccessD] Integrating Email with Custom Client Database References: <022301c91f2a$f0197ee0$0201a8c0@HAL9005> Message-ID: <143501c91f2c$5244c330$2f8601c7@SusanOne> > A client with a law firm ahs a home-grown Access/SQL db for everything. > They use Outlook but all emails are in one folder containing several tens > of > thousands of email. They have four thousand client. > > They have client contacts recorded but increasingly contacts are by email > and so if they want to see a full history of interactions with a client > they > have to go to two places. Client would like some way to connect his > client > contacts with the emails. > > Has anyone had/solved this problem? =======What exactly is the problem -- do you want to see contact history, etc. in the Access/SQL database? Susan H. From rockysmolin at bchacc.com Thu Sep 25 11:43:42 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Thu, 25 Sep 2008 09:43:42 -0700 Subject: [AccessD] Integrating Email with Custom Client Database In-Reply-To: <143501c91f2c$5244c330$2f8601c7@SusanOne> References: <022301c91f2a$f0197ee0$0201a8c0@HAL9005> <143501c91f2c$5244c330$2f8601c7@SusanOne> Message-ID: <023601c91f2d$dee29370$0201a8c0@HAL9005> Yeah, that's what he wants - to see all the contacts including the emails. Don't know if he wants just the email subject and date or to see the body text as well. But that's a detail that can be settled later. Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Susan Harkins Sent: Thursday, September 25, 2008 9:33 AM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Integrating Email with Custom Client Database > A client with a law firm ahs a home-grown Access/SQL db for everything. > They use Outlook but all emails are in one folder containing several > tens of thousands of email. They have four thousand client. > > They have client contacts recorded but increasingly contacts are by > email and so if they want to see a full history of interactions with a > client they have to go to two places. Client would like some way to > connect his client contacts with the emails. > > Has anyone had/solved this problem? =======What exactly is the problem -- do you want to see contact history, etc. in the Access/SQL database? Susan H. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From fuller.artful at gmail.com Thu Sep 25 12:47:38 2008 From: fuller.artful at gmail.com (Arthur Fuller) Date: Thu, 25 Sep 2008 14:47:38 -0300 Subject: [AccessD] Integrating Email with Custom Client Database In-Reply-To: <023601c91f2d$dee29370$0201a8c0@HAL9005> References: <022301c91f2a$f0197ee0$0201a8c0@HAL9005> <143501c91f2c$5244c330$2f8601c7@SusanOne> <023601c91f2d$dee29370$0201a8c0@HAL9005> Message-ID: <29f585dd0809251047n614d059cs257d0aeff52eeadd@mail.gmail.com> I forget the details of the operation, since it was several years ago that I did it, but in essence I just linked from Access to Outlook in the same way as you would link to Excel. Yes, I just double-checked and it's dead simple. You can just File | Get External Data and File Type Outlook and then point to the PST in question and you're there. A little trickier might be to make sure that no matter which app you added a contact to, she would show up in the other list, but in terms of being able to view the Outlook messages from within an Access app, nothing to it. hth, Arthur On Thu, Sep 25, 2008 at 1:43 PM, Rocky Smolin at Beach Access Software < rockysmolin at bchacc.com> wrote: > Yeah, that's what he wants - to see all the contacts including the emails. > Don't know if he wants just the email subject and date or to see the body > text as well. But that's a detail that can be settled later. > From sturner at mseco.com Thu Sep 25 13:32:37 2008 From: sturner at mseco.com (Steve Turner) Date: Thu, 25 Sep 2008 13:32:37 -0500 Subject: [AccessD] Need some help. Message-ID: <31B7F3CC8CC4454F87FCBEFF82B618920227B0B8@PE2850-03.mseco.com> Hello List, I am using A2k with SQL Express, Excel, and other linked tables. The main DB is in SQL Express. We have a custom timesheet program that puts Time, Charges, Job numbers worked on in it. I used to export data to Lotus 2.1 using A2k and calculate cost for each Job to make entries to the GL. I have now written Query's to extract the data, calculate the cost and export to Excel so I can import to the GL. Calculations are done by the week because of Salaried Costs and the hours worked causes the Cost to change each week. I have a Query that sums the week by Job based on entered dates. I made a copy as a Make Table Query and a Copy to be an Append Query that writes the 4 or 5 weeks to a table to use another query to summarize by Job for the Month. I also have a Query that summarizes the data to 10 profit centers 0-9 as negative amounts to offset the GL. I know that there must be an easy way to use VBA code to automate the process but not quite sure how to start it as my coding ability is limited. We also have a Variable table built with the month start and month end date to run many other reports. We have a Form built with buttons to update the Variables table and run many reports from the database here. I would like to add a button that would run the code to build the GL Cost data from here. It will write the GL Queries to an Excel file. Simply I need to read Var table for month start then run Make Table query for 1st week. Read Var table for next week then run Append query for that week and continue to run the Append query for each week till month end is reached. Run query to sort down to Month table Then combine this table with Summary query of profit centers for GL and export this to Excel. Anyone have some code I can start with to do this? Steve A. Turner Controller Mid-South Engineering Co. Inc P.O. Box 1399 Hot Springs, AR 71902 E-Mail: sturner at mseco.com and saturner at mseco.com Phone:(501)321-2276 Fax: (501)321-4750 From Gustav at cactus.dk Thu Sep 25 16:32:20 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Thu, 25 Sep 2008 23:32:20 +0200 Subject: [AccessD] Integrating Email with Custom Client Database Message-ID: Hi Rocky One method could be to move all the e-mails to hMailServer: http://www.hmailserver.com and run this as either a mail store or an in-house mail server. All e-mails are stored as discrete files but all structured data are written as well to a database, MySQL or SQL Server. This you can access directly for fast searching. Also, hMS sports a COM interface and an API: http://www.hmailserver.com/documentation/?page=com_objects which allows you to control and access most events and methods of the server. And the price is right. /gustav >>> rockysmolin at bchacc.com 25-09-2008 18:22 >>> Dear List: A client with a law firm ahs a home-grown Access/SQL db for everything. They use Outlook but all emails are in one folder containing several tens of thousands of email. They have four thousand client. They have client contacts recorded but increasingly contacts are by email and so if they want to see a full history of interactions with a client they have to go to two places. Client would like some way to connect his client contacts with the emails. Has anyone had/solved this problem? MTIA, Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com From rockysmolin at bchacc.com Thu Sep 25 21:50:54 2008 From: rockysmolin at bchacc.com (Rocky Smolin at Beach Access Software) Date: Thu, 25 Sep 2008 19:50:54 -0700 Subject: [AccessD] Integrating Email with Custom Client Database In-Reply-To: References: Message-ID: <02bd01c91f82$b24389f0$0201a8c0@HAL9005> Thanks Gustav. I'll forward to the client. Best, Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Thursday, September 25, 2008 2:32 PM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Integrating Email with Custom Client Database Hi Rocky One method could be to move all the e-mails to hMailServer: http://www.hmailserver.com and run this as either a mail store or an in-house mail server. All e-mails are stored as discrete files but all structured data are written as well to a database, MySQL or SQL Server. This you can access directly for fast searching. Also, hMS sports a COM interface and an API: http://www.hmailserver.com/documentation/?page=com_objects which allows you to control and access most events and methods of the server. And the price is right. /gustav >>> rockysmolin at bchacc.com 25-09-2008 18:22 >>> Dear List: A client with a law firm ahs a home-grown Access/SQL db for everything. They use Outlook but all emails are in one folder containing several tens of thousands of email. They have four thousand client. They have client contacts recorded but increasingly contacts are by email and so if they want to see a full history of interactions with a client they have to go to two places. Client would like some way to connect his client contacts with the emails. Has anyone had/solved this problem? MTIA, Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com www.bchacc.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From dwaters at usinternet.com Fri Sep 26 10:41:47 2008 From: dwaters at usinternet.com (Dan Waters) Date: Fri, 26 Sep 2008 10:41:47 -0500 Subject: [AccessD] OT: Friday Humor Message-ID: <31515FE868E04F3C899FBFBCF50D07D6@danwaters> No matter what your politics are, the sketch from yesterday is too funny! http://www.indexed.blogspot.com/ From mmattys at rochester.rr.com Fri Sep 26 10:50:55 2008 From: mmattys at rochester.rr.com (Michael R Mattys) Date: Fri, 26 Sep 2008 11:50:55 -0400 Subject: [AccessD] OT: Friday Humor References: <31515FE868E04F3C899FBFBCF50D07D6@danwaters> Message-ID: <01e801c91fef$aa266ea0$0402a8c0@Laptop> I wonder who found out it was candy (?!!!) Michael R. Mattys MapPoint & Access Dev www.mattysconsulting.com ----- Original Message ----- From: "Dan Waters" To: "'Access Developers discussion and problem solving'" Sent: Friday, September 26, 2008 11:41 AM Subject: [AccessD] OT: Friday Humor > > No matter what your politics are, the sketch from yesterday is too funny! > > http://www.indexed.blogspot.com/ > > > > > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From robert at webedb.com Fri Sep 26 12:40:02 2008 From: robert at webedb.com (Robert L. Stewart) Date: Fri, 26 Sep 2008 12:40:02 -0500 Subject: [AccessD] Need some help In-Reply-To: References: Message-ID: <200809261741.m8QHfaOT004969@databaseadvisors.com> Steve, What you need to do is use a date dimension table. Something like this: CREATE TABLE [dbo].[tblDateDimension]( [DATE_ID] [datetime] NULL, [DAY_OF_WEEK] [varchar](50) NULL, [DAY_MONTH_NO] [int] NULL, [DAY_MONTH_TXT] [varchar](12) NULL, [DAY_YEAR_NO] [smallint] NULL, [DAY_OVERALL_NO] [int] NULL, [WEEK_YEAR_NO] [int] NULL, [WEEK_OVERALL_NO] [int] NULL, [MONTH_NO] [int] NULL, [MONTH_TXT] [varchar](15) NULL, [MONTH_OVERALL_NO] [int] NULL, [QUARTER_NO] [int] NULL, [FISCAL_PERIOD] [varchar](50) NULL, [HOLIDAY_FLG] [varchar](50) NULL, [WEEKDAY_FLG] [varchar](50) NULL, [LAST_DAY_IN_MONTH_FLG] [varchar](50) NULL, [YEAR_NO] [smallint] NULL, [CREATION_DATE] [datetime] NULL, [APP_LOGIN_CREATION] [varchar](50) NULL, [MODIFICATION_DATE] [datetime] NULL, [APP_LOGIN_MODIFICATION] [varchar](50) NULL ) ON [PRIMARY] GO You join this to the date and you simply pass in the week of the year and year, or the month and the year to get the data. Robert At 12:00 PM 9/26/2008, you wrote: >Date: Thu, 25 Sep 2008 13:32:37 -0500 >From: "Steve Turner" >Subject: [AccessD] Need some help. >To: "Access Developers discussion and problem solving" > >Message-ID: > <31B7F3CC8CC4454F87FCBEFF82B618920227B0B8 at PE2850-03.mseco.com> >Content-Type: text/plain; charset="us-ascii" > > > >Hello List, > >I am using A2k with SQL Express, Excel, and other linked tables. The >main DB is in SQL Express. We have a custom timesheet program that puts >Time, Charges, Job numbers worked on in it. I used to export data to >Lotus 2.1 using A2k and calculate cost for each Job to make entries to >the GL. I have now written Query's to extract the data, calculate the >cost and export to Excel so I can import to the GL. Calculations are >done by the week because of Salaried Costs and the hours worked causes >the Cost to change each week. I have a Query that sums the week by Job >based on entered dates. I made a copy as a Make Table Query and a Copy >to be an Append Query that writes the 4 or 5 weeks to a table to use >another query to summarize by Job for the Month. I also have a Query >that summarizes the data to 10 profit centers 0-9 as negative amounts to >offset the GL. > > > >I know that there must be an easy way to use VBA code to automate the >process but not quite sure how to start it as my coding ability is >limited. We also have a Variable table built with the month start and >month end date to run many other reports. We have a Form built with >buttons to update the Variables table and run many reports from the >database here. I would like to add a button that would run the code to >build the GL Cost data from here. It will write the GL Queries to an >Excel file. > > > >Simply I need to read Var table for month start then run Make Table >query for 1st week. > >Read Var table for next week then run Append query for that week and >continue to run the Append query for each week till month end is >reached. > >Run query to sort down to Month table > >Then combine this table with Summary query of profit centers for GL and >export this to Excel. > > Anyone have some code I can start with to do this? > > > > > >Steve A. Turner From erbachs at gmail.com Fri Sep 26 12:53:14 2008 From: erbachs at gmail.com (Steve Erbach) Date: Fri, 26 Sep 2008 12:53:14 -0500 Subject: [AccessD] Need some help. In-Reply-To: <31B7F3CC8CC4454F87FCBEFF82B618920227B0B8@PE2850-03.mseco.com> References: <31B7F3CC8CC4454F87FCBEFF82B618920227B0B8@PE2850-03.mseco.com> Message-ID: <39cb22f30809261053m1473535dr2cba5d295e1eebe8@mail.gmail.com> Steve, That's a bit of a tall order, but I may have something along the lines you're looking for. I wrote a custom billing application for a Builders Exchange that generates invoices. The billing process starts with choosing the billing month and then the user lets 'er rip. All the table backups and querying are done in a string of processes that ends with a report containing the entire set of invoices to print and mail. All of the queries are "in-line"; that is, I don't use any saved queries in the VBA code. If I need to run a summary query to get a value or two for further processing it'll look something like this: 530 strSQL1 = "" 540 strSQL1 = strSQL1 & "SELECT DISTINCT tblBillcode.[DuesCode search string] " 550 strSQL1 = strSQL1 & "FROM tblBillcode " 560 strSQL1 = strSQL1 & "WHERE (((tblBillcode.Billmon)='" & strBillMonth & "'));" 570 Debug.Print "Extract DuesCode search string from Billcode - 001" 580 Debug.Print strSQL1 590 Set rstDss = dbs.OpenRecordset(strSQL1) 600 strDss = rstDss![DuesCode search string] 610 rstDss.close 620 Set rstDss = Nothing Then I'll use strDss in a query that creates a table: 650 strSQL2 = "" 660 strSQL2 = strSQL2 & "SELECT DISTINCT Membfile.[Acct#], Membfile.[Member#], " 670 strSQL2 = strSQL2 & "Membfile.DuesCode, Membfile.[Company Name] " 680 strSQL2 = strSQL2 & "INTO tmpTblMemb " 690 strSQL2 = strSQL2 & "FROM Membfile " 700 strSQL2 = strSQL2 & "WHERE ((" & strDss & "));" 710 Debug.Print "Select Members whose DuesCode equals what we just extracted in 001 - 002" 720 Debug.Print strSQL2 730 DoCmd.RunSQL strSQL2 This query creates an intermediate result table that's used further down the line, etc. Does this help? If you're going to use saved queries, then you can create a QueryDef object and refer to the name of your saved query and use the DoCmd.RunSQL command to execute it, if I remember correctly. Steve Erbach Neenah, WI On Thu, Sep 25, 2008 at 1:32 PM, Steve Turner wrote: > > > Hello List, > > I am using A2k with SQL Express, Excel, and other linked tables. The > main DB is in SQL Express. We have a custom timesheet program that puts > Time, Charges, Job numbers worked on in it. I used to export data to > Lotus 2.1 using A2k and calculate cost for each Job to make entries to > the GL. I have now written Query's to extract the data, calculate the > cost and export to Excel so I can import to the GL. Calculations are > done by the week because of Salaried Costs and the hours worked causes > the Cost to change each week. I have a Query that sums the week by Job > based on entered dates. I made a copy as a Make Table Query and a Copy > to be an Append Query that writes the 4 or 5 weeks to a table to use > another query to summarize by Job for the Month. I also have a Query > that summarizes the data to 10 profit centers 0-9 as negative amounts to > offset the GL. > From ssharkins at gmail.com Fri Sep 26 13:01:57 2008 From: ssharkins at gmail.com (Susan Harkins) Date: Fri, 26 Sep 2008 14:01:57 -0400 Subject: [AccessD] Someone was looking for links to Outlook contacts? Message-ID: <043301c92003$b4b807c0$2f8601c7@SusanOne> http://whizfolders.com/blog/index.php/2006/07/30/link-to-microsoft-outlook-2003/I'm not sure this is a final solution, but might be useful.Susan H. From paul_lifopro at cox.net Fri Sep 26 14:39:10 2008 From: paul_lifopro at cox.net (paul_lifopro) Date: Fri, 26 Sep 2008 14:39:10 -0500 Subject: [AccessD] Automated EMAIL in Access/Outlook Message-ID: <00c401c9200f$8c2a9910$6c01a8c0@lplaptop2> I have an Access 2003 db that has a text field in it with email address in the text field. I've checked the archives and Google, but can't find the answer to my questions. I have 2 questions. 1. Is there a way that I can click on the email field and have Outlook 2003 start up and let me create an email and send it? 2. Monthly I send out a newsletter email. Can I run an access query and then have outlook send out an email to all of the email addresses that are in the recordset. 3. What type of Access data type field should I have the email address stored in. Thanks for your help Paul From sturner at mseco.com Fri Sep 26 14:47:35 2008 From: sturner at mseco.com (Steve Turner) Date: Fri, 26 Sep 2008 14:47:35 -0500 Subject: [AccessD] Need some help. In-Reply-To: <39cb22f30809261053m1473535dr2cba5d295e1eebe8@mail.gmail.com> References: <31B7F3CC8CC4454F87FCBEFF82B618920227B0B8@PE2850-03.mseco.com> <39cb22f30809261053m1473535dr2cba5d295e1eebe8@mail.gmail.com> Message-ID: <31B7F3CC8CC4454F87FCBEFF82B618920227B27F@PE2850-03.mseco.com> Thanks Steve, I was wondering if it was too big an order since it took awhile for someone to answer. I have searched around on the web and found a little code that may help. I have saved queries that do what I want manually but I was wondering if I couldn't use some code to automate that process to really make it easy. I have a Make Table query that gets the week data by entering the ask for parameters of date start and end. Then I use the same query as an append query to get the next 3 or 4 weeks depending on a 4 or 5 week month. I have another query to run against this table to combine it to consolidate down to each job total. I have another query that sorts the table down to profit center totals and append it to that table. These last two query's puts in the data format I need to export to Excel and then import to the GL. I am a lazy guy and would rather hit one button and have it done than set there and type in the date's and open the next query's then open the table and copy and paste to excel. We have the start and end dates for the month in a table and it seems easy to open that get start date add 6 days pass start and end for week to query and have it start the process get the next 7 days till it gets to end of month and then grab next query etc. I'm going to try something and see if I can get a start anyway. Thanks again for your help. Steve A. Turner -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Steve Erbach Sent: Friday, September 26, 2008 12:53 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Need some help. Steve, That's a bit of a tall order, but I may have something along the lines you're looking for. I wrote a custom billing application for a Builders Exchange that generates invoices. The billing process starts with choosing the billing month and then the user lets 'er rip. All the table backups and querying are done in a string of processes that ends with a report containing the entire set of invoices to print and mail. All of the queries are "in-line"; that is, I don't use any saved queries in the VBA code. If I need to run a summary query to get a value or two for further processing it'll look something like this: 530 strSQL1 = "" 540 strSQL1 = strSQL1 & "SELECT DISTINCT tblBillcode.[DuesCode search string] " 550 strSQL1 = strSQL1 & "FROM tblBillcode " 560 strSQL1 = strSQL1 & "WHERE (((tblBillcode.Billmon)='" & strBillMonth & "'));" 570 Debug.Print "Extract DuesCode search string from Billcode - 001" 580 Debug.Print strSQL1 590 Set rstDss = dbs.OpenRecordset(strSQL1) 600 strDss = rstDss![DuesCode search string] 610 rstDss.close 620 Set rstDss = Nothing Then I'll use strDss in a query that creates a table: 650 strSQL2 = "" 660 strSQL2 = strSQL2 & "SELECT DISTINCT Membfile.[Acct#], Membfile.[Member#], " 670 strSQL2 = strSQL2 & "Membfile.DuesCode, Membfile.[Company Name] " 680 strSQL2 = strSQL2 & "INTO tmpTblMemb " 690 strSQL2 = strSQL2 & "FROM Membfile " 700 strSQL2 = strSQL2 & "WHERE ((" & strDss & "));" 710 Debug.Print "Select Members whose DuesCode equals what we just extracted in 001 - 002" 720 Debug.Print strSQL2 730 DoCmd.RunSQL strSQL2 This query creates an intermediate result table that's used further down the line, etc. Does this help? If you're going to use saved queries, then you can create a QueryDef object and refer to the name of your saved query and use the DoCmd.RunSQL command to execute it, if I remember correctly. Steve Erbach Neenah, WI On Thu, Sep 25, 2008 at 1:32 PM, Steve Turner wrote: > > > Hello List, > > I am using A2k with SQL Express, Excel, and other linked tables. The > main DB is in SQL Express. We have a custom timesheet program that puts > Time, Charges, Job numbers worked on in it. I used to export data to > Lotus 2.1 using A2k and calculate cost for each Job to make entries to > the GL. I have now written Query's to extract the data, calculate the > cost and export to Excel so I can import to the GL. Calculations are > done by the week because of Salaried Costs and the hours worked causes > the Cost to change each week. I have a Query that sums the week by Job > based on entered dates. I made a copy as a Make Table Query and a Copy > to be an Append Query that writes the 4 or 5 weeks to a table to use > another query to summarize by Job for the Month. I also have a Query > that summarizes the data to 10 profit centers 0-9 as negative amounts to > offset the GL. > -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Fri Sep 26 16:18:29 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Fri, 26 Sep 2008 23:18:29 +0200 Subject: [AccessD] Need some help Message-ID: Hi Robert Some strange data types here? For example: [DAY_OF_WEEK] [varchar](50) NULL: SmallInt or Byte? [DAY_MONTH_NO] [int] NULL: SmallInt or Byte? [QUARTER_NO] [int] NULL: Byte? [HOLIDAY_FLG] [varchar](50) NULL: Bit? [WEEKDAY_FLG] [varchar](50) NULL: Bit? [LAST_DAY_IN_MONTH_FLG] [varchar](50) NULL: Bit? /gustav >>> robert at webedb.com 26-09-2008 19:40 >>> Steve, What you need to do is use a date dimension table. Something like this: CREATE TABLE [dbo].[tblDateDimension]( [DATE_ID] [datetime] NULL, [DAY_OF_WEEK] [varchar](50) NULL, [DAY_MONTH_NO] [int] NULL, [DAY_MONTH_TXT] [varchar](12) NULL, [DAY_YEAR_NO] [smallint] NULL, [DAY_OVERALL_NO] [int] NULL, [WEEK_YEAR_NO] [int] NULL, [WEEK_OVERALL_NO] [int] NULL, [MONTH_NO] [int] NULL, [MONTH_TXT] [varchar](15) NULL, [MONTH_OVERALL_NO] [int] NULL, [QUARTER_NO] [int] NULL, [FISCAL_PERIOD] [varchar](50) NULL, [HOLIDAY_FLG] [varchar](50) NULL, [WEEKDAY_FLG] [varchar](50) NULL, [LAST_DAY_IN_MONTH_FLG] [varchar](50) NULL, [YEAR_NO] [smallint] NULL, [CREATION_DATE] [datetime] NULL, [APP_LOGIN_CREATION] [varchar](50) NULL, [MODIFICATION_DATE] [datetime] NULL, [APP_LOGIN_MODIFICATION] [varchar](50) NULL ) ON [PRIMARY] From cfoust at infostatsystems.com Fri Sep 26 16:57:29 2008 From: cfoust at infostatsystems.com (Charlotte Foust) Date: Fri, 26 Sep 2008 14:57:29 -0700 Subject: [AccessD] Need some help In-Reply-To: References: Message-ID: Varchar is a string - i.e., "Monday" , "Y", "N", "09", etc. Int is a SmallInt You don't use bytes in this kind of table and do don't use bits, although you could use bits in flag fields, except you would have to deal with the tri-state issue. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Friday, September 26, 2008 2:18 PM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Need some help Hi Robert Some strange data types here? For example: [DAY_OF_WEEK] [varchar](50) NULL: SmallInt or Byte? [DAY_MONTH_NO] [int] NULL: SmallInt or Byte? [QUARTER_NO] [int] NULL: Byte? [HOLIDAY_FLG] [varchar](50) NULL: Bit? [WEEKDAY_FLG] [varchar](50) NULL: Bit? [LAST_DAY_IN_MONTH_FLG] [varchar](50) NULL: Bit? /gustav >>> robert at webedb.com 26-09-2008 19:40 >>> Steve, What you need to do is use a date dimension table. Something like this: CREATE TABLE [dbo].[tblDateDimension]( [DATE_ID] [datetime] NULL, [DAY_OF_WEEK] [varchar](50) NULL, [DAY_MONTH_NO] [int] NULL, [DAY_MONTH_TXT] [varchar](12) NULL, [DAY_YEAR_NO] [smallint] NULL, [DAY_OVERALL_NO] [int] NULL, [WEEK_YEAR_NO] [int] NULL, [WEEK_OVERALL_NO] [int] NULL, [MONTH_NO] [int] NULL, [MONTH_TXT] [varchar](15) NULL, [MONTH_OVERALL_NO] [int] NULL, [QUARTER_NO] [int] NULL, [FISCAL_PERIOD] [varchar](50) NULL, [HOLIDAY_FLG] [varchar](50) NULL, [WEEKDAY_FLG] [varchar](50) NULL, [LAST_DAY_IN_MONTH_FLG] [varchar](50) NULL, [YEAR_NO] [smallint] NULL, [CREATION_DATE] [datetime] NULL, [APP_LOGIN_CREATION] [varchar](50) NULL, [MODIFICATION_DATE] [datetime] NULL, [APP_LOGIN_MODIFICATION] [varchar](50) NULL ) ON [PRIMARY] -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From Gustav at cactus.dk Sat Sep 27 01:35:23 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Sat, 27 Sep 2008 08:35:23 +0200 Subject: [AccessD] Need some help Message-ID: Hi Charlotte Sorry for the confusion. I should have written tinyint for Byte: [DAY_OF_WEEK] [varchar](50) NULL: smallint or tinyint? [DAY_MONTH_NO] [int] NULL: smallint or tinyint? [QUARTER_NO] [int] NULL: tinyint? [HOLIDAY_FLG] [varchar](50) NULL: bit? [WEEKDAY_FLG] [varchar](50) NULL: bit? [LAST_DAY_IN_MONTH_FLG] [varchar](50) NULL: bit? > Varchar is a string - i.e., "Monday" [DAY_OF_WEEK], I guess, is the weekday number. If not, the field would be named [WEEKDAY_TXT] [varchar](15) NULL like [MONTH_TXT] [varchar](15) NULL, > "Y", "N", "09" But why? > Int is a SmallInt int is a VB Long and smallint is a VB Integer. Neither of these are needed to hold a dayofmonth number or a weekday number not to say a quarter number. /gustav >>> cfoust at infostatsystems.com 26-09-2008 23:57 >>> Varchar is a string - i.e., "Monday" , "Y", "N", "09", etc. Int is a SmallInt You don't use bytes in this kind of table and do don't use bits, although you could use bits in flag fields, except you would have to deal with the tri-state issue. Charlotte Foust -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Friday, September 26, 2008 2:18 PM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Need some help Hi Robert Some strange data types here? For example: [DAY_OF_WEEK] [varchar](50) NULL: SmallInt or Byte? [DAY_MONTH_NO] [int] NULL: SmallInt or Byte? [QUARTER_NO] [int] NULL: Byte? [HOLIDAY_FLG] [varchar](50) NULL: Bit? [WEEKDAY_FLG] [varchar](50) NULL: Bit? [LAST_DAY_IN_MONTH_FLG] [varchar](50) NULL: Bit? /gustav >>> robert at webedb.com 26-09-2008 19:40 >>> Steve, What you need to do is use a date dimension table. Something like this: CREATE TABLE [dbo].[tblDateDimension]( [DATE_ID] [datetime] NULL, [DAY_OF_WEEK] [varchar](50) NULL, [DAY_MONTH_NO] [int] NULL, [DAY_MONTH_TXT] [varchar](12) NULL, [DAY_YEAR_NO] [smallint] NULL, [DAY_OVERALL_NO] [int] NULL, [WEEK_YEAR_NO] [int] NULL, [WEEK_OVERALL_NO] [int] NULL, [MONTH_NO] [int] NULL, [MONTH_TXT] [varchar](15) NULL, [MONTH_OVERALL_NO] [int] NULL, [QUARTER_NO] [int] NULL, [FISCAL_PERIOD] [varchar](50) NULL, [HOLIDAY_FLG] [varchar](50) NULL, [WEEKDAY_FLG] [varchar](50) NULL, [LAST_DAY_IN_MONTH_FLG] [varchar](50) NULL, [YEAR_NO] [smallint] NULL, [CREATION_DATE] [datetime] NULL, [APP_LOGIN_CREATION] [varchar](50) NULL, [MODIFICATION_DATE] [datetime] NULL, [APP_LOGIN_MODIFICATION] [varchar](50) NULL ) ON [PRIMARY] From darren at activebilling.com.au Sun Sep 28 18:47:54 2008 From: darren at activebilling.com.au (Darren D) Date: Mon, 29 Sep 2008 09:47:54 +1000 Subject: [AccessD] Automated EMAIL in Access/Outlook In-Reply-To: <00c401c9200f$8c2a9910$6c01a8c0@lplaptop2> References: <00c401c9200f$8c2a9910$6c01a8c0@lplaptop2> Message-ID: <00d901c921c4$a1da8890$0d1b910a@denzilnote> Hi Paul There are a few ways these questions can be dealt with Last question first: A field in a table that will be an email address is best stored as text - Set the max length to be >100 or so - Some real and live email address are stupidly long Also I am not sure if "Email" is a reserved word in Access or not, I am in the habit of calling any fields that store email addresses "EmailAddress" just in case it is a reserved word (Much the same way we don't name fields that store dates "Date" in the table - Name 'em something like "StartDate" etc) Now first question: Assume you have a control on a form and assume the control is called called txtClientEmailAddress In the double click of that you could have some think like Private Sub txtClientEmailAddress_ DblClick(Cancel As Integer) 'Watch for line wrap DoCmd.SendObject , , , Me.txtEmailAddress, Me.txtCCEmailAddress, , "Subject Goes Here- This can be a text box on an access form", "Message goes here - this too can be a field on an access form", True 'The inclusion of the word 'true' at the end of the send object parameters insists the email is opened in your default email client (whatever that is) before it gets sent to allow you to edit it If you add the word false then the email gets sent 'silently but it does end up in the out box eventually (Assuming it gets sent) so not 100 per cent silently :-) End sub The cool thing about the DoCmd.SenObject method above is you can send the results of queries, reports tables etc as attachments with the email - but it is a bit limited in other areas You could also experiement with 'shelling to the MailTo: feature of the operating system - That's pretty simple And if you feel brave there is tons of code to directly 'interact' with Outlook or outlook express No to the 2ns question - It's probably best to set up a recordset and loop through that - Lemme know if you need a hand with that The big caveat with looping through a recordset to send emails is that you will most likely be 'recognised' as a spammer of some sort (Correctly or not) So thos on thelist with more nouse than me re mail servers etc can chime in Let us know how it turns out Darren -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of paul_lifopro Sent: Saturday, 27 September 2008 5:39 AM To: accessd at databaseadvisors.com Subject: [AccessD] Automated EMAIL in Access/Outlook I have an Access 2003 db that has a text field in it with email address in the text field. I've checked the archives and Google, but can't find the answer to my questions. I have 2 questions. 1. Is there a way that I can click on the email field and have Outlook 2003 start up and let me create an email and send it? 2. Monthly I send out a newsletter email. Can I run an access query and then have outlook send out an email to all of the email addresses that are in the recordset. 3. What type of Access data type field should I have the email address stored in. Thanks for your help Paul -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From tinanfields at torchlake.com Mon Sep 29 08:41:02 2008 From: tinanfields at torchlake.com (Tina Norris Fields) Date: Mon, 29 Sep 2008 09:41:02 -0400 Subject: [AccessD] A Query Question Message-ID: <48E0DAEE.6080700@torchlake.com> Hi All, I have a table with names and other details of persons and organizations and a table with records of contributions. The requirement is to craft a report showing all the contributors who gave at least some particular amount over some particular time period. The time period and amount are selected by the user from a form. I have a query that selects the pertinent fields from the tblNames and the tblContributions. So, I need to craft another query that selects only those contributions made between the starting and ending dates (found on the form) and that total the particular minimum amount. Using the QBE grid I can easily select all the contribution records from my first query that match the date criteria provided from my form. But, I also want to get totals that match the amount criterion from the form. I tried using the totals row and ran into trouble right away - it doesn't like asterisks at all, insists on my putting each field I want from the first query into the grid - but, then what? The only fields I really want totals of any kind for are the MEMID (Group by), the contribution amount CAMT (Sum), and the date field (Where the criteria are met). All other fields I just want to have appear, but I don't know what selection to make from the totals drop list. I tried Var, but that generated a data type mismatch. So, I am feeling stymied. Any help? Probably as soon as I send this plea for help off to the list, my brain will kick in and I will see what I am not seeing now. Thanks, TNF From Gustav at cactus.dk Mon Sep 29 08:57:57 2008 From: Gustav at cactus.dk (Gustav Brock) Date: Mon, 29 Sep 2008 15:57:57 +0200 Subject: [AccessD] A Query Question Message-ID: Hi Tina Finish this query to select the records with no aggregating or sorting. Then create a new query where you use the first as the source. In this you can Group By and Sum as you like. /gustav >>> tinanfields at torchlake.com 29-09-2008 15:41 >>> Hi All, I have a table with names and other details of persons and organizations and a table with records of contributions. The requirement is to craft a report showing all the contributors who gave at least some particular amount over some particular time period. The time period and amount are selected by the user from a form. I have a query that selects the pertinent fields from the tblNames and the tblContributions. So, I need to craft another query that selects only those contributions made between the starting and ending dates (found on the form) and that total the particular minimum amount. Using the QBE grid I can easily select all the contribution records from my first query that match the date criteria provided from my form. But, I also want to get totals that match the amount criterion from the form. I tried using the totals row and ran into trouble right away - it doesn't like asterisks at all, insists on my putting each field I want from the first query into the grid - but, then what? The only fields I really want totals of any kind for are the MEMID (Group by), the contribution amount CAMT (Sum), and the date field (Where the criteria are met). All other fields I just want to have appear, but I don't know what selection to make from the totals drop list. I tried Var, but that generated a data type mismatch. So, I am feeling stymied. Any help? Probably as soon as I send this plea for help off to the list, my brain will kick in and I will see what I am not seeing now. Thanks, TNF From steve at goodhall.info Mon Sep 29 09:02:56 2008 From: steve at goodhall.info (Steve Goodhall) Date: Mon, 29 Sep 2008 10:02:56 -0400 Subject: [AccessD] A Query Question In-Reply-To: <48E0DAEE.6080700@torchlake.com> Message-ID: <7EDBA7F2AE034B9F86F9A821D91D4ED1@StevenAcer> This one may be too much for QBE. If I understand it correctly, you need to: - Select contributions for a particular time period - Sum them - Select on a threshold amount - Select contributions for contributors meeting this criterion For starters, I would use a series of cascading queries, as follows: 1 Select contributions for the period 2 Sum the contributions in 1) by contributor 3 Select the contributors from 2) who meet the criteron 4 Use the result set of 3) in an IN clause to select the contribution rows Once you get this set of queries working, you should be able to combine them into a single SQL statement. Personally, I probably would not bother. Regards, Steve Goodhall, PMP 248-505-5204 mobile -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Tina Norris Fields Sent: Monday, September 29, 2008 9:41 AM To: Access Developers discussion and problem solving Subject: [AccessD] A Query Question Hi All, I have a table with names and other details of persons and organizations and a table with records of contributions. The requirement is to craft a report showing all the contributors who gave at least some particular amount over some particular time period. The time period and amount are selected by the user from a form. I have a query that selects the pertinent fields from the tblNames and the tblContributions. So, I need to craft another query that selects only those contributions made between the starting and ending dates (found on the form) and that total the particular minimum amount. Using the QBE grid I can easily select all the contribution records from my first query that match the date criteria provided from my form. But, I also want to get totals that match the amount criterion from the form. I tried using the totals row and ran into trouble right away - it doesn't like asterisks at all, insists on my putting each field I want from the first query into the grid - but, then what? The only fields I really want totals of any kind for are the MEMID (Group by), the contribution amount CAMT (Sum), and the date field (Where the criteria are met). All other fields I just want to have appear, but I don't know what selection to make from the totals drop list. I tried Var, but that generated a data type mismatch. So, I am feeling stymied. Any help? Probably as soon as I send this plea for help off to the list, my brain will kick in and I will see what I am not seeing now. Thanks, TNF -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From pete at vftt.co.uk Mon Sep 29 15:53:17 2008 From: pete at vftt.co.uk (Pete Phillipps) Date: Mon, 29 Sep 2008 21:53:17 +0100 Subject: [AccessD] Automated EMAIL in Access/Outlook In-Reply-To: <00d901c921c4$a1da8890$0d1b910a@denzilnote> References: <00c401c9200f$8c2a9910$6c01a8c0@lplaptop2> <00d901c921c4$a1da8890$0d1b910a@denzilnote> Message-ID: <116401c92275$66bd9bb0$0201a8c0@kilchoan9> Hi Everyone, Not been following this, but the link below might be of use: http://www.everythingaccess.com/tutorials.asp?ID=Outlook-Send-E-mail-without -Security-Warning I used a slightly modified version of this for a club database I have and it works fine. Pete From stuart at lexacorp.com.pg Mon Sep 29 16:20:40 2008 From: stuart at lexacorp.com.pg (Stuart McLachlan) Date: Tue, 30 Sep 2008 07:20:40 +1000 Subject: [AccessD] A Query Question In-Reply-To: <48E0DAEE.6080700@torchlake.com> References: <48E0DAEE.6080700@torchlake.com> Message-ID: <48E1D348.10915.263CD07@stuart.lexacorp.com.pg> Here's the key selections for your QBE Grid. MembID tblMember Group By ContribDate tblContribs Where => Forms!myForm!StartDate and <= Forms!myForm!EndDate Amount tblContribs Sum => Forms!myForm!MinimumAmount Any other reporting detail (names etc) should be GroupByas well On 29 Sep 2008 at 9:41, Tina Norris Fields wrote: > Hi All, > > I have a table with names and other details of persons and organizations > and a table with records of contributions. The requirement is to craft > a report showing all the contributors who gave at least some particular > amount over some particular time period. The time period and amount are > selected by the user from a form. > > I have a query that selects the pertinent fields from the tblNames and > the tblContributions. So, I need to craft another query that selects > only those contributions made between the starting and ending dates > (found on the form) and that total the particular minimum amount. Using > the QBE grid I can easily select all the contribution records from my > first query that match the date criteria provided from my form. But, I > also want to get totals that match the amount criterion from the form. > I tried using the totals row and ran into trouble right away - it > doesn't like asterisks at all, insists on my putting each field I want > from the first query into the grid - but, then what? The only fields I > really want totals of any kind for are the MEMID (Group by), the > contribution amount CAMT (Sum), and the date field (Where the criteria > are met). All other fields I just want to have appear, but I don't know > what selection to make from the totals drop list. I tried Var, but that > generated a data type mismatch. So, I am feeling stymied. Any help? > > Probably as soon as I send this plea for help off to the list, my brain > will kick in and I will see what I am not seeing now. > > Thanks, > TNF > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com From tinanfields at torchlake.com Mon Sep 29 20:28:28 2008 From: tinanfields at torchlake.com (Tina Norris Fields) Date: Mon, 29 Sep 2008 21:28:28 -0400 Subject: [AccessD] A Query Question In-Reply-To: <48E1D348.10915.263CD07@stuart.lexacorp.com.pg> References: <48E0DAEE.6080700@torchlake.com> <48E1D348.10915.263CD07@stuart.lexacorp.com.pg> Message-ID: <48E180BC.4060302@torchlake.com> Thank you to Stuart, Gustav, and Steve. With your encouragement and inspiration I have succeeded in making the necessary queries and producing the report I need. Thank you for each suggestion. Sometimes it's just the details that trip me up. I got it. Thanks again. TNF Stuart McLachlan wrote: > Here's the key selections for your QBE Grid. > > MembID > tblMember > Group By > > ContribDate > tblContribs > Where > => Forms!myForm!StartDate and <= Forms!myForm!EndDate > > Amount > tblContribs > Sum > => Forms!myForm!MinimumAmount > > Any other reporting detail (names etc) should be GroupByas well > > > On 29 Sep 2008 at 9:41, Tina Norris Fields wrote: > > >> Hi All, >> >> I have a table with names and other details of persons and organizations >> and a table with records of contributions. The requirement is to craft >> a report showing all the contributors who gave at least some particular >> amount over some particular time period. The time period and amount are >> selected by the user from a form. >> >> I have a query that selects the pertinent fields from the tblNames and >> the tblContributions. So, I need to craft another query that selects >> only those contributions made between the starting and ending dates >> (found on the form) and that total the particular minimum amount. Using >> the QBE grid I can easily select all the contribution records from my >> first query that match the date criteria provided from my form. But, I >> also want to get totals that match the amount criterion from the form. >> I tried using the totals row and ran into trouble right away - it >> doesn't like asterisks at all, insists on my putting each field I want >> from the first query into the grid - but, then what? The only fields I >> really want totals of any kind for are the MEMID (Group by), the >> contribution amount CAMT (Sum), and the date field (Where the criteria >> are met). All other fields I just want to have appear, but I don't know >> what selection to make from the totals drop list. I tried Var, but that >> generated a data type mismatch. So, I am feeling stymied. Any help? >> >> Probably as soon as I send this plea for help off to the list, my brain >> will kick in and I will see what I am not seeing now. >> >> Thanks, >> TNF >> -- >> AccessD mailing list >> AccessD at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/accessd >> Website: http://www.databaseadvisors.com >> > > > From davidmcafee at gmail.com Tue Sep 30 13:22:33 2008 From: davidmcafee at gmail.com (David McAfee) Date: Tue, 30 Sep 2008 11:22:33 -0700 Subject: [AccessD] Continuing Group on Report Print out Message-ID: <8786a4c00809301122r2f045e20m508ba36fa1cc4b10@mail.gmail.com> Brain Fart... Is it possible to display a label and/or Group text box on a report that has had its group broken up on multiple pages? I have a report that has a huge list of parts. The list is grouped on a field "BillTypeID". In that group's header, I display the Bill Type (Billable, Non-Billable, Upgrade...) I'd like to be able to print out something like "Non-Billable (continued)" on the top of the next page that has had its group broken up. Is this possible? Thanks, David From Lambert.Heenan at AIG.com Tue Sep 30 14:02:10 2008 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Tue, 30 Sep 2008 14:02:10 -0500 Subject: [AccessD] Continuing Group on Report Print out Message-ID: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219E4BAFC@XLIVMBX35bkup.aig.com> Check out the HasContinued property of report sections. If you reference it in the OnFormat event of your group header you can determine if you need to output "(continued)" Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David McAfee Sent: Tuesday, September 30, 2008 2:23 PM To: Access Developers discussion and problem solving Subject: [AccessD] Continuing Group on Report Print out Brain Fart... Is it possible to display a label and/or Group text box on a report that has had its group broken up on multiple pages? I have a report that has a huge list of parts. The list is grouped on a field "BillTypeID". In that group's header, I display the Bill Type (Billable, Non-Billable, Upgrade...) I'd like to be able to print out something like "Non-Billable (continued)" on the top of the next page that has had its group broken up. Is this possible? Thanks, David -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com From davidmcafee at gmail.com Tue Sep 30 15:03:35 2008 From: davidmcafee at gmail.com (David McAfee) Date: Tue, 30 Sep 2008 13:03:35 -0700 Subject: [AccessD] Continuing Group on Report Print out In-Reply-To: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219E4BAFC@XLIVMBX35bkup.aig.com> References: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219E4BAFC@XLIVMBX35bkup.aig.com> Message-ID: <8786a4c00809301303q1cdb357rd1e89cfdc05862a6@mail.gmail.com> Thanks for the quick response Lambert. I've tried using the .RepeatSection as well as just showing the label and it seems to be skipping the whole group. Private Sub GroupHeader0_Format(Cancel As Integer, FormatCount As Integer) If Me.GroupHeader0.HasContinued Then Me.lblContinue.Visible = True Me.Section("GroupHeader0").RepeatSection = True 'Reports("rptRGAPrintOut").Section("GroupHeader0").RepeatSection = True End If End Sub 'have also tried just printing the name, in case I was wrong about the name of the group header. It seems to repeat six times if I put a optional stop in there. Debug.Print Me.GroupHeader0.Name GroupHeader0 GroupHeader0 GroupHeader0 GroupHeader0 GroupHeader0 GroupHeader0 Debug.Print Me.GroupHeader0.RepeatSection False False False False False False Any idea what I am doing wrong? On Tue, Sep 30, 2008 at 12:02 PM, Heenan, Lambert wrote: > Check out the HasContinued property of report sections. If you reference > it > in the OnFormat event of your group header you can determine if you need to > output "(continued)" > > Lambert > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David McAfee > Sent: Tuesday, September 30, 2008 2:23 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Continuing Group on Report Print out > > Brain Fart... > > Is it possible to display a label and/or Group text box on a report that > has > had its group broken up on multiple pages? > > I have a report that has a huge list of parts. The list is grouped on a > field "BillTypeID". > > In that group's header, I display the Bill Type (Billable, Non-Billable, > Upgrade...) > > I'd like to be able to print out something like "Non-Billable (continued)" > on the top of the next page that has had its group broken up. Is this > possible? > > Thanks, > 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 Lambert.Heenan at AIG.com Tue Sep 30 15:13:55 2008 From: Lambert.Heenan at AIG.com (Heenan, Lambert) Date: Tue, 30 Sep 2008 15:13:55 -0500 Subject: [AccessD] Continuing Group on Report Print out Message-ID: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219E4BB67@XLIVMBX35bkup.aig.com> Well you say... "In that group's header, I display the Bill Type (Billable, Non-Billable, Upgrade...) " So I would just have another textbox (say named "txtContinued") right next to the bill type textbox with a data source of ="(Continued)" and then in the header Format event you would say txtContinued.Visible = GroupHeader0.HasContinued Replacing "GroupHeader0" with the correct name of the group header. Lambert -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David McAfee Sent: Tuesday, September 30, 2008 4:04 PM To: Access Developers discussion and problem solving Subject: Re: [AccessD] Continuing Group on Report Print out Thanks for the quick response Lambert. I've tried using the .RepeatSection as well as just showing the label and it seems to be skipping the whole group. Private Sub GroupHeader0_Format(Cancel As Integer, FormatCount As Integer) If Me.GroupHeader0.HasContinued Then Me.lblContinue.Visible = True Me.Section("GroupHeader0").RepeatSection = True 'Reports("rptRGAPrintOut").Section("GroupHeader0").RepeatSection = True End If End Sub 'have also tried just printing the name, in case I was wrong about the name of the group header. It seems to repeat six times if I put a optional stop in there. Debug.Print Me.GroupHeader0.Name GroupHeader0 GroupHeader0 GroupHeader0 GroupHeader0 GroupHeader0 GroupHeader0 Debug.Print Me.GroupHeader0.RepeatSection False False False False False False Any idea what I am doing wrong? On Tue, Sep 30, 2008 at 12:02 PM, Heenan, Lambert wrote: > Check out the HasContinued property of report sections. If you > reference it in the OnFormat event of your group header you can > determine if you need to output "(continued)" > > Lambert > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David > McAfee > Sent: Tuesday, September 30, 2008 2:23 PM > To: Access Developers discussion and problem solving > Subject: [AccessD] Continuing Group on Report Print out > > Brain Fart... > > Is it possible to display a label and/or Group text box on a report > that has had its group broken up on multiple pages? > > I have a report that has a huge list of parts. The list is grouped on > a field "BillTypeID". > > In that group's header, I display the Bill Type (Billable, > Non-Billable, > Upgrade...) > > I'd like to be able to print out something like "Non-Billable (continued)" > on the top of the next page that has had its group broken up. Is this > possible? > > Thanks, > 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 davidmcafee at gmail.com Tue Sep 30 16:11:39 2008 From: davidmcafee at gmail.com (David McAfee) Date: Tue, 30 Sep 2008 14:11:39 -0700 Subject: [AccessD] Continuing Group on Report Print out In-Reply-To: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219E4BB67@XLIVMBX35bkup.aig.com> References: <34C8A2AB1EF3564CB0D64DB6AFFDD5C219E4BB67@XLIVMBX35bkup.aig.com> Message-ID: <8786a4c00809301411h4764a10dp6e02e6309aca018f@mail.gmail.com> I have tried that and I still couldn't get it working. I got the group header to display (with my continue textbox) by turning on the Report's RepeatSection property Using your HasContinued clue, I started doing a google search and found several sites talking about it being a bug. Rogersaccesslibrary has a work around: http://www.rogersaccesslibrary.com/download3.asp?SampleName=HasContinued.mdb It seems that you have to store the name of each header each time it is printed in a global variable. If the next printed header is the same, you append "continued" to it. Thanks, David On Tue, Sep 30, 2008 at 1:13 PM, Heenan, Lambert wrote: > Well you say... > > "In that group's header, I display the Bill Type (Billable, Non-Billable, > Upgrade...) " > > So I would just have another textbox (say named "txtContinued") right next > to the bill type textbox with a data source of ="(Continued)" and then in > the header Format event you would say > > txtContinued.Visible = GroupHeader0.HasContinued > > Replacing "GroupHeader0" with the correct name of the group header. > > Lambert > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David McAfee > Sent: Tuesday, September 30, 2008 4:04 PM > To: Access Developers discussion and problem solving > Subject: Re: [AccessD] Continuing Group on Report Print out > > Thanks for the quick response Lambert. > > I've tried using the .RepeatSection as well as just showing the label and > it > seems to be skipping the whole group. > > Private Sub GroupHeader0_Format(Cancel As Integer, FormatCount As Integer) > If Me.GroupHeader0.HasContinued Then > Me.lblContinue.Visible = True > Me.Section("GroupHeader0").RepeatSection = True > 'Reports("rptRGAPrintOut").Section("GroupHeader0").RepeatSection = True > End If End Sub > > 'have also tried > just printing the name, in case I was wrong about the name of the group > header. > It seems to repeat six times if I put a optional stop in there. > > Debug.Print Me.GroupHeader0.Name > GroupHeader0 > GroupHeader0 > GroupHeader0 > GroupHeader0 > GroupHeader0 > GroupHeader0 > > Debug.Print Me.GroupHeader0.RepeatSection False False False False False > False > > Any idea what I am doing wrong? > > > On Tue, Sep 30, 2008 at 12:02 PM, Heenan, Lambert > wrote: > > > Check out the HasContinued property of report sections. If you > > reference it in the OnFormat event of your group header you can > > determine if you need to output "(continued)" > > > > Lambert > > > > -----Original Message----- > > From: accessd-bounces at databaseadvisors.com > > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David > > McAfee > > Sent: Tuesday, September 30, 2008 2:23 PM > > To: Access Developers discussion and problem solving > > Subject: [AccessD] Continuing Group on Report Print out > > > > Brain Fart... > > > > Is it possible to display a label and/or Group text box on a report > > that has had its group broken up on multiple pages? > > > > I have a report that has a huge list of parts. The list is grouped on > > a field "BillTypeID". > > > > In that group's header, I display the Bill Type (Billable, > > Non-Billable, > > Upgrade...) > > > > I'd like to be able to print out something like "Non-Billable > (continued)" > > on the top of the next page that has had its group broken up. Is this > > possible? > > > > Thanks, > > 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 darren at activebilling.com.au Tue Sep 30 18:49:25 2008 From: darren at activebilling.com.au (Darren D) Date: Wed, 1 Oct 2008 09:49:25 +1000 Subject: [AccessD] A2003: Disk or Network Error Message-ID: <00c301c92357$2d6e9ac0$0d1b910a@denzilnote> Hi Team Apologies if I have asked this before I have a dB that speaks with the BE. That BE that sits on a machine here used as a file share/server (It's not running Server software - just XP) Quite often I'll leave for the night with my Access app happily displaying its main page only to return to a zillion "Disk or Network Error" message boxes in the morning Obviously some time during the night the FE and BE have lost contact with each other - not too big a deal but I have to click through all the error messages - there can be up to 50 of them Then I have to re-boot the app - this is sometimes done un-gracefully from the task manager Is there a way I can trap this error at a dB kind of level - not a form level - then I can gracefully shut the app or alert the user to graceful shut the app? I think I know the error message number - just not sure where to trap for it Many thanks Darren