docmessageclass, not every contact converting

astro46

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
POP3
i used docmessageclass to change contacts from custom form to native ipm.contact . i have read that this prog doesn't work in Ol13, nevertheless most contacts converted. except for a few that i have come across. i have tried running it a couple of times, but now it doesn't list any contact form to convert other than the ipm.contact; implying that all have been converted, which isn't correct. any ideas why it didn't work on only a few? how to rectify?
 

Diane Poremsky

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
Office 365 Exchange

astro46

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
POP3
i don't understand what Ol13 vs Ol10, Ol07, etc, has to do with using docmessageclass. outlook is closed, it is run outside of outlook, on the .pst. i am using 32bit office.

regarding using the vba script: i haven't used programming language in many years. i'd have to figure out where to run it from, and what and how to change it to make it work on my contact folders. i am converting all contacts that use my custom form back to the native ipm.contact, since ol13 can't deal with my custom form.
 

Diane Poremsky

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
Office 365 Exchange
There are subtle differences in the pst file format that can affect utilities.

Plus Outlook 2013 moved the profile to the Outlook key, out of windows messaging subsystem - this affects some utilities. I assumed this was the problem with docmessageclass because I get the 'no default client' error message. Or it doesn't like 64bit Outlook. If you upgraded, the old profile is in the registry and it would see it.

This is to remove the forms with the goofy Phone fields? Did you try my fix of delete, undo? If so, did it 'stick' ? (Publish it using a higher version # and it should apply to all contacts using the form.)

Using the first macro on the page - this line uses the current folder:
Set CurFolder = Application.ActiveExplorer.CurrentFolder

so, you'll need to change just this line:

NewMC = "IPM.Contact.Test"

to

NewMC = "IPM.Contact"

and run it.

In File, Options, Trust Center, Macro security, set security to low.

Select the contact folder

Open the VB Editor using Alt+F11 and expand to show thisoutlooksession.

Paste the code in and change the form name.

Run it.

How to use Outlook's VBA Editor - Slipstick Systems
 

astro46

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
POP3
i didn't upgrade. i uninstalled of10 before installing of13.

this is first i have heard about the "delete, undo" fix. seems to work while in form design mode. i published the new form. problem is that now, when i use docmessageclass, it doesn't show my custom forms, old or new, in the "change messageclass to" drop down. i believe it did last i used it. i've tried publishing the form to personal forms library, contacts, and outlook folders. if i can get docmessageclass to work, it might be simpler for me than trying to make the macro work.

i don't know what you mean by "publish using a higher version #", or if this would matter since i had already converted forms to ipm.contact

any advice on how to get my new form to show as an option.
 

Diane Poremsky

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
Office 365 Exchange
You missed my post in the other thread - I discovered it by accident.

The Outlook 2010 profile was left behind when you uninstalled it, and when you first used Outlook 2013 it copied the profile to the new location in the registry. docmessageclass sees it and works. Or works about half... it did not work for me at all.

If you don't change the version # each time you publish, you can corrupt the forms cache. It's on the properties tab.

version.png
 

astro46

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
POP3
much to my own surprise, between poking around and viewing your video, i believe that i did run the macro. contact form changed to a message! if i click on a contact preview pane>view source it returns a page showing categories for the contact and the notes field. no page one. not even listed in taskbar.

1.

could this caused by my renaming of NewMC = "IPM.Contact" ? i changed it to NewMC = "jeffrey contact form ol13" , which is what is what my custom form is published as. is there a different name that i need to use?

2. btw: i did add a version number to the "jeffrey contact form ol13". it had none . or am i confused about use of version numbers.

btw: no harm done, i use rollback, so that my contacts are as they were before this experiment.
 

Diane Poremsky

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
Office 365 Exchange
You need to use the ipm name - it could be ipm.contact.jeffrey contact form ol13 - but whatever it is, you need to use the ipm part.

The version # are added by you, so that sounds correct if you never used one before.
 

astro46

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
POP3
Well, well, using the correct form name sure made a difference. Forms have changed fine, except for one thing: the onenote 'linked contact notes' icon is greyed out, inactive. Only on the contacts that have been converted using the script. Contacts using the native ipm.contact form still have a functioning onenote icon. I checked the custom form in developer; the 'com add-ins' button shows vba and 'onenote notes about outlook items' checked.

Any ideas about how to rectify this?
 

astro46

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
POP3
since using my new 'fixed' custom form (thanks for the workaround) disables the 'send to onenote' button, and the people preview mostly gives me what i need when going to a contact, i find that i don't use the full form as much as i used to (since it was the default it was the only choice, previously), i have tried running the vba script on the main contact folder, holding to convert the few remaining holdouts (when i ran it first time with docmessageclass, most converted to ipm.contact, a few continue to use the now corrupt custom contact form) to ipm.contact. doesn't seem to convert them. and it doesn't seem to spend any time at all before announcing 'done'.

any idea what i may be doing wrong, or what needs to be changed in script other than "NewMC = "IPM.Contact"" to make it convert the remaining holdouts? or any way to change them individually?

thanks,

jeffrey
 

astro46

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
POP3
emptied forms cache, and deleted all files and folders in the forms folder. reran that vba script. still using the old, now corrupt contact form.

if there isn't a way to change the form for individual forms, or get the script to really convert every contact, maybe it will be faster to just make a new contact for each one and copy the data over.
 

astro46

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
POP3
maybe it will be faster to just make a new contact for each one and copy the data over.
actually, it is pretty quick to make a new form. right click on contact>forward >to myself>add new contact>delete old
 

Diane Poremsky

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
Office 365 Exchange
That works too...

If you delete the form from Forms Manager, the should revert to the default form and the code should work to change the form permanently, to avoid outlook always telling you it was using the default form.
 

astro46

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
POP3
i think that i would rather forward and delete. i wouldn't want to deal with it telling me about default forms, even though it shouldn't. there are a number of things that is does, that it shouldn't.

if you should come up with a solution to the failed 'send to onenote' button in new custom form, please let me know.
 

astro46

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
POP3
yes, i changed from office 2010 to 2013 . i can say that in general i like OL13 better than Ol10, though a couple of things have been time wasters (custom form issue, children field now missing from the native form). this was the impetus for converting (or trying to) all contacts to ipm.contact, so that i could use them without the corrupted field names. i don't use IE, but having just tested it, i can say that 'send to onenote' works for me. and it works in the native OL13 form. just not in my new, modified, custom form. btw: i am using 32bit office. since i keep hearing that it is more trouble free than 64 bit, and there is no advantage to 64bit for average user. i am now using OF13 on laptop and desktop.
 

Diane Poremsky

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
Office 365 Exchange
that was a long shot so I'm not surprised it did not fix it. It works on a custom form here, so its not just something with custom forms.
 

Similar threads

Top