Solved

Outlook namespace Archiving

Posted on 2009-05-19
7
530 Views
Last Modified: 2012-05-07
Hi I have a problem with autonaming Archivenames within Ouotlook GUI
I have as follow a vbscript that copy template.pst file to a specific folder with the date set of creation
for example:
c:\script\template.pst is copied to a folder and renamed to c:\scripts\backup\Archive\20081024archive.pst
( i will later redirect this to the users homefolder, but for now when testing i use this path)
I also have code that automounts this file in Outlook, but i dont know how i rename this namespace in outlook. As it is
now it gets the default name from the template. which means that i get several pst files kalled archive within outlook.
I would like to have them called 20090519archive, (by date of creation).
Anyone know how to accomplish this?Below is the vbscript i use, and it works except that the last thing i need is the autonaming in outlook!

Function padDate(intNumber)
      if intNumber <= 9 Then
            padDate = "0" & CStr(intNumber)
      Else
            padDate = CStr(intNumber)
      End If
End Function
Set objFSO = CreateObject("Scripting.FileSystemObject")
strDate = Year(Date) & padDate(Month(Date)) & padDate(Day(Date))
objFSO.CopyFile "C:\scripts\template.pst" , "c:\scripts\backup\" & strdate & "archive.pst" (this line creates the file 20090519archive.pst)
objFSO.CopyFile "C:\scripts\backup\" & strdate & "archive.pst" , "C:\scripts\archive\" & strdate & "archive.pst"  (this line copies the 20090519archive.pst to alternate location)

Dim objApp
Dim objNameSpace
Set objApp = CreateObject("Outlook.Application")
Set objNameSpace = objApp.GetNameSpace("MAPI")
objNameSPace.AddStore "C:\scripts\archive\" & strdate & "archive.pst"

Thanks for any help with this!
0
Comment
Question by:SYSHALL
  • 4
  • 3
7 Comments
 
LVL 59

Expert Comment

by:Chris Bottomley
ID: 24639219
Try replacing friendly name as appropriate in the following:
   
dim objFolder as object
objNameSPace.AddStore "C:\scripts\archive\" & strdate & "archive.pst"
Set objFolder = objNameSPace.Folders.GetLast
objFolder.Name = "Friendly Name"

Chris
0
 
LVL 1

Author Comment

by:SYSHALL
ID: 24645520
Hi and thank you for the answer, it partially work now, or at least i could get it to map the archive to outlook with a given name, i only had to use the two last lines of your code,  at the end of the script, the final thing to solve now is to set the current date as the pst file uses as filename i have tried putting &strdate& in between the brackets off the friendly name in the last line  but i only get an error, any solution to that?

Function padDate(intNumber)
      if intNumber <= 9 Then
            padDate = "0" & CStr(intNumber)
      Else
            padDate = CStr(intNumber)
      End If
End Function
Set objFSO = CreateObject("Scripting.FileSystemObject")
strDate = Year(Date) & padDate(Month(Date)) & padDate(Day(Date))
objFSO.CopyFile "C:\scripts\mall.pst" , "c:\scripts\backup\" & strdate & "archive.pst"
objFSO.CopyFile "C:\scripts\backup\" & strdate & "archive.pst" , "C:\scripts\archive\" & strdate & "archive.pst"  

Dim objApp
Dim objNameSpace
Set objApp = CreateObject("Outlook.Application")
Set objNameSpace = objApp.GetNameSpace("MAPI")
objNameSPace.AddStore "C:\scripts\archive\" & strdate & "archive.pst"
Set objFolder = objNameSPace.Folders.GetLastobjFolder.Name = " & strdate & "Archive"

Kind rgeards
Michael
0
 
LVL 1

Author Comment

by:SYSHALL
ID: 24645552
Hi again
Solved it partially
if i type
objFolder.Name = "" & strdate & "Archive"

I get the name of the object in outlook with current date but the name Archive is not included at the end
I only get 20090617 not 20090617 Archive as i would like to

Kind regards
0
Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

 
LVL 59

Expert Comment

by:Chris Bottomley
ID: 24645594
Syntax error so replace:

objFolder.Name = " & strdate & "Archive"
with
objFolder.Name = strdate & "Archive"

Chris
0
 
LVL 59

Accepted Solution

by:
Chris Bottomley earned 500 total points
ID: 24645670
You may however prefer to add a space or delimiter like:

objFolder.Name = strdate & " - Archive"

Or even reverse the presentation as:

objFolder.Name = "Archive - " & strdate

Chris
0
 
LVL 1

Author Comment

by:SYSHALL
ID: 24656557
Hi Chris
I get some strange results i get the date and the delimiter but not the rest
for ex: if i use strdate & " - Archive" i get only the date
but if i use strdate & "- Archive" i get the date and the delimiter but not the name archive
(notice the missing space infront of delimiter, thats the only difference between those two options)
i have tried other options as well, bute ither only get the date or the first letter or similar

Btw, Thanks a lot for your previous help,much appreciated!
0
 
LVL 59

Expert Comment

by:Chris Bottomley
ID: 24657081
Spaces and hyphens should be valid chars for folders so I assume the same for the PST names all I can suggest is try a few permutations with and without spaces or space without the hyphen.

Chris
0

Featured Post

VMware Disaster Recovery and Data Protection

In this expert guide, you’ll learn about the components of a Modern Data Center. You will use cases for the value-added capabilities of Veeam®, including combining backup and replication for VMware disaster recovery and using replication for data center migration.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Is your Office 365 signature not working the way you want it to? Are signature updates taking up too much of your time? Let's run through the most common problems that an IT administrator can encounter when dealing with Office 365 email signatures.
Read this checklist to learn more about the 15 things you should never include in an email signature.
Many of my clients call in with monstrous Gmail overloading issues with Outlook. A quick tip is to turn off the All Mail and Important folders from synching. Here is a quick video I made to show you how to turn off these and other folders in Gmail s…
CodeTwo Sync for iCloud (http://www.codetwo.com/sync-for-icloud?sts=6554) automatically synchronizes your Outlook 2016, 2013, 2010 or 2007 folders with iCloud folders available via iCloud Control Panel. This lets you automatically sync them with…

832 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question