summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--bin/kdepim/korganizer/Migration-HowTo.txt77
-rw-r--r--libkcal/incidencebase.cpp10
2 files changed, 71 insertions, 16 deletions
diff --git a/bin/kdepim/korganizer/Migration-HowTo.txt b/bin/kdepim/korganizer/Migration-HowTo.txt
index ca767c6..a5fa02c 100644
--- a/bin/kdepim/korganizer/Migration-HowTo.txt
+++ b/bin/kdepim/korganizer/Migration-HowTo.txt
@@ -1,9 +1,18 @@
1 1
2Migration HowTo Outlook 200X -> KDE 2Migration HowTo Outlook 200X -> KDE
3 3
4Version 1.0.1
5The latest version of this file can be downloaded from
6http://sourceforge.net/projects/kdepimpi/
7Please choose there package/project/file:
8general Files for KDE/Pim
9MigrationHowTo_OL2KDE
10MigrationHowTo_OL2KDE.txt
11
12
4This HowTo describes the process of migrating data ( contact and calendar data ) from Outlook 200X to the PIM programs of the KDE-Desktop-Environment. 13This HowTo describes the process of migrating data ( contact and calendar data ) from Outlook 200X to the PIM programs of the KDE-Desktop-Environment.
5The PIM programs are KAdddressbook and KOrganizer, which may be used embedded in the Kontact PIM management framework. 14The PIM programs are KAdddressbook and KOrganizer, which may be used embedded in the Kontact PIM management framework.
6This HowTo describes version 1.9.3a of the migration tools. 15This HowTo describes version 1.9.3a of the migration tools.
7The migration tools are the platform independent versions of KAdddressbook and KOrganizer: KAdddressbook/Pi and KOrganizer/Pi. 16The migration tools are the platform independent versions of KAdddressbook and KOrganizer: KAdddressbook/Pi and KOrganizer/Pi.
8 17
9Content: 18Content:
@@ -11,12 +20,14 @@ Content:
111) How to start 201) How to start
122) How to import pst files in Outlook 212) How to import pst files in Outlook
133) Where to get the migration tools 223) Where to get the migration tools
144) How to install the migration tools 234) How to install the migration tools
155) How to get the contact data out of Outlook200X 245) How to get the contact data out of Outlook200X
166) How to get the calendar data out of Outlook200X 256) How to get the calendar data out of Outlook200X
267) How to import your contact data into Kontact
278) How to import your calendar data into Kontact
17 28
18APPENDIX A) Problems and solutions when reading contact data 29APPENDIX A) Problems and solutions when reading contact data
19APPENDIX B) Problems and solutions when reading calendar data 30APPENDIX B) Problems and solutions when reading calendar data
20 31
21**************************************** 32****************************************
221) How to start 331) How to start
@@ -32,27 +43,40 @@ If you have a running Outlook200X already with contact/calendar data available,
32 43
33 44
34**************************************** 45****************************************
352) How to import pst files in Outlook 462) How to import pst files in Outlook
36**************************************** 47****************************************
37 48
38MISSING 49To open a local *.pst file in Outlook2003, choose menu:
50File - Open - Outlook Data File ...
51Now the data included in this file is shown
52as folders of a newly added root folder in the Outlook folder view.
53This root folder is probably not accessable from
54the migration tools via OLE.
55To access data stored in one of the subfolders,
56copy this subfolder to a root folder,
57which can be accessed from the migration tools via OLE.
58(To know, which folder can be accessed, just perform 5.) or 6.) until
59you get the Oulook import dialog!)
60
61To copy it, right click on that subfolder and choose
62Copy "<subfoldername>"...
63in the popup menu.
39 64
40**************************************** 65****************************************
413) Where to get the migration tools 663) Where to get the migration tools
42**************************************** 67****************************************
43 68
44The data migration is is performed with the Windows versions of KAdddressbook/Pi and KOrganizer/Pi. 69The data migration is is performed with the Windows versions of KAdddressbook/Pi and KOrganizer/Pi.
45Pi stands for platform-independend - platform-independend because the same program is available for different platforms, like Windows, Linux desktop and Sharp-Zaurus PDA. 70Pi stands for platform-independend - platform-independend because the same program is available for different platforms, like Windows, Linux desktop and Sharp-Zaurus PDA.
46Note: The Linux desktop versions of KOrganizer/Pi and KOrganizer/KDE-desktop are two different programs! You cannot use KOrganizer/Pi together with or embedded in the KDE-desktop environment. The same is valid for KAdddressbook/Pi. 71Note: The Linux desktop versions of KOrganizer/Pi and KOrganizer/KDE-desktop are two different programs! You cannot use KOrganizer/Pi together with, or embedded in, the KDE-desktop environment. The same is valid for KAdddressbook/Pi.
47 72
48The programs you need for the migration are: 73The programs you need for the migration are:
49a) KAdddressbook/Pi executeable + 2dlls + icons 74a) KAdddressbook/Pi executeable + 2dlls + icons
50b) KOrganizer/Pi executeable + icons 75b) KOrganizer/Pi executeable + icons
51c) The Qt3 library qt-mt331.dll and the MSVC library msvcr71.dll 76c) The Qt3 library qt-mt331.dll and the MSVC library msvcr71.dll and the MSVC library mfc71u.dll
52
53You can download all of them at: 77You can download all of them at:
54 78
55http://sourceforge.net/projects/kdepimpi/ 79http://sourceforge.net/projects/kdepimpi/
56 80
57Download of a) and b) 81Download of a) and b)
58Please choose there package/project with name KDE/Pim 82Please choose there package/project with name KDE/Pim
@@ -63,45 +87,49 @@ kopixxx-exe.zip
63The latest version is currently ( 2004-07-13 ) 1.9.3a. 87The latest version is currently ( 2004-07-13 ) 1.9.3a.
64Such that the files to download are 88Such that the files to download are
65kapi193a-exe.zip 89kapi193a-exe.zip
66kopi193a-exe.zip 90kopi193a-exe.zip
67 91
68To download b) 92To download b)
69Please choose there package/project with name KO/Pi - general files. 93Please choose there package/project/file:
70(Direct link: http://sourceforge.net/project/showfiles.php?group_id=104103&package_id=116719 ) 94general Files for KDE/Pim
95Needed Windows Dlls
96kdepimdll.zip
97
98(Direct link: http://sourceforge.net/project/showfiles.php?group_id=104103&package_id=122438&release_id=256700 )
71Choose there the file: 99Choose there the file:
72kopidll.zip 100kdepimdll.zip
73 101
74Now you have downloaded the files 102Now you have downloaded the files
75 103
76kapi193a-exe.zip 104kapi193a-exe.zip
77kopi193a-exe.zip 105kopi193a-exe.zip
78kopidll.zip 106kdepimdll.zip
79 107
80and we can continue to install the files, which is simply unzipping them. 108and we can continue to install the files, which is simply unzipping them.
81 109
82 110
83**************************************** 111****************************************
844) How to install the migration tools 1124) How to install the migration tools
85**************************************** 113****************************************
86 114
87You have downloaded the files 115You have downloaded the files
88 116
89kapi193a-exe.zip 117kapi193a-exe.zip
90kopi193a-exe.zip 118kopi193a-exe.zip
91kopidll.zip 119kdepimdll.zip
92 120
93Unzip these files. 121Unzip these files.
94The directory "pics" of the kopidll.zip is useless now and can be completely ignored.
95Now choose an arbitrary installation directory, where to copy all the needed files together. 122Now choose an arbitrary installation directory, where to copy all the needed files together.
96You should have now the following files and the directory "kdepim" in the same directory: 123You should have now the following files and the directory "kdepim" in the same directory:
97kopi.exe 124kopi.exe
98kapi.exe 125kapi.exe
99microkabc_dir.dll 126microkabc_dir.dll
100microkabc_file.dll 127microkabc_file.dll
101msvcr71.dll 128msvcr71.dll
129mfc71u.dll
102qt-mt331.dll 130qt-mt331.dll
103ReadMich.txt 131ReadMich.txt
104kdepim (directory) 132kdepim (directory)
105 133
106The directory "kdepim" should contain subdirectories 134The directory "kdepim" should contain subdirectories
107kaddressbook 135kaddressbook
@@ -130,13 +158,15 @@ Getting the contact data
130 158
131Please start kapi.exe. 159Please start kapi.exe.
132Choose menu: 160Choose menu:
133File - Import - Import from OL... 161File - Import - Import from OL...
134You will get a dialog which shows all "Personal Folders" of Outlook. 162You will get a dialog which shows all "Personal Folders" of Outlook.
135Choose the Contact Folder(s) you want to import and select them with a hook. 163Choose the Contact Folder(s) you want to import and select them with a hook.
136(All other folder but the contact containing folders are shown, but disabled) 164(All other folder but the contact containing folders are shown, but disabled).
165(If the data you want to import is not stored in one of the shown folders,
166please read step 2.) and click on "close" ).
137Click the "import" button. 167Click the "import" button.
138Now Outlook asks you to allow access to the contact data. 168Now Outlook asks you to allow access to the contact data.
139Select "Allow access" amd click "Yes" in this dialog. 169Select "Allow access" amd click "Yes" in this dialog.
140Now the importing is performed and KA/Pi will show a progress bar. 170Now the importing is performed and KA/Pi will show a progress bar.
141After importing, KA/Pi shows a dialog, how much contacts are imported. 171After importing, KA/Pi shows a dialog, how much contacts are imported.
142If you press a second time "import" , already imported contacts are not imported again. 172If you press a second time "import" , already imported contacts are not imported again.
@@ -151,12 +181,13 @@ File - Save
151and close KA/Pi. 181and close KA/Pi.
152Now you should have the contact data in the file std.vcf in your home directory in the path 182Now you should have the contact data in the file std.vcf in your home directory in the path
153(YOURHOMEDIR)\kdepim\apps\kabc\std.vcf 183(YOURHOMEDIR)\kdepim\apps\kabc\std.vcf
154 184
155Copy that file to a moveable disk or memory stick or just copy it via network to the destination. 185Copy that file to a moveable disk or memory stick or just copy it via network to the destination.
156Import that file into KAddressbook/Kontact via Import - Import vcard. 186Import that file into KAddressbook/Kontact via Import - Import vcard.
187Details about importing you can read at: 7) How to import your contact data into Kontact
157 188
158Now you have your Outlook200X contact data on the KDE desktop available and you are done with the migration of contacts. 189Now you have your Outlook200X contact data on the KDE desktop available and you are done with the migration of contacts.
159 190
160************************************************************* 191*************************************************************
1616) How to get the calendar data out of Outlook200X 1926) How to get the calendar data out of Outlook200X
162************************************************************* 193*************************************************************
@@ -183,13 +214,15 @@ The dialog shows defaults for CET (Central European Time), such that users locat
183 214
184Now you will see the KO/Pi main window. 215Now you will see the KO/Pi main window.
185Choose menu: 216Choose menu:
186File - Import from OL 217File - Import from OL
187You will get a dialog which shows all "Personal Folders" of Outlook. 218You will get a dialog which shows all "Personal Folders" of Outlook.
188Choose the Calendar Folder(s) you want to import and select them with a hook. 219Choose the Calendar Folder(s) you want to import and select them with a hook.
189(All other folder but the calendar data containing folders are shown, but disabled) 220(All other folder but the calendar data containing folders are shown, but disabled).
221(If the data you want to import is not stored in one of the shown folders,
222please read step 2.) and click on "close" ).
190Click the "import" button. 223Click the "import" button.
191Now Outllok asks you to allow access to the contact data. 224Now Outllok asks you to allow access to the contact data.
192Select "Allow access" amd click "Yes" in this dialog. 225Select "Allow access" amd click "Yes" in this dialog.
193Now the importing is performed and KO/Pi will show a progress bar. 226Now the importing is performed and KO/Pi will show a progress bar.
194After importing, KO/Pi shows a dialog, how much calendar items are imported. 227After importing, KO/Pi shows a dialog, how much calendar items are imported.
195If you press a second time "import" , already imported calendar items are not imported again. 228If you press a second time "import" , already imported calendar items are not imported again.
@@ -201,24 +234,42 @@ About problems of mapping particular Outlook-data-fields to KOrganizer-data-fiel
201Close KO/Pi - data will be saved automatically. 234Close KO/Pi - data will be saved automatically.
202 235
203Now you should have the calendar data in the file mycalendar.ics in your home directory in the path 236Now you should have the calendar data in the file mycalendar.ics in your home directory in the path
204(YOURHOMEDIR)\kdepim\apps\korganizer\mycalendar.ics 237(YOURHOMEDIR)\kdepim\apps\korganizer\mycalendar.ics
205 238
206Copy that file to a moveable disk or memory stick or just copy it via network to the destination. 239Copy that file to a moveable disk or memory stick or just copy it via network to the destination.
207Import that file into KOrganizer/Kontact via Import - Import iCal/ics file. 240Import that file into KOrganizer/Kontact.
241Details about importing your calendar data you can read at: 8) How to import your calendar data into Kontact.
208(Warning again: Don't forget to set the timezone in KDE KOrganizer before importing data there. The timezone in KDE KOrganizer is set per default to UTC (GMT), that is -1h of CET). 242(Warning again: Don't forget to set the timezone in KDE KOrganizer before importing data there. The timezone in KDE KOrganizer is set per default to UTC (GMT), that is -1h of CET).
209Now you have your Outlook200X calendar data on the KDE desktop available and you are done with the migration. 243Now you have your Outlook200X calendar data on the KDE desktop available and you are done with the migration.
210 244
211Hint: 245Hint:
212If you want to use KO/Pi and KA/Pi on your windows desktop, you should read all the help information available in the KO/Pi Help menu. One Highlight of KO/Pi is the easy syncing with another *.ics file. 246If you want to use KO/Pi and KA/Pi on your windows desktop, you should read all the help information available in the KO/Pi Help menu. One Highlight of KO/Pi is the easy syncing with another *.ics file.
213(Information about syncing available in the KO/Pi help menu). 247(Information about syncing available in the KO/Pi help menu).
214Another hint: 248Another hint:
215KO/Pi + KA/Pi ( = KDE-Pim/Pi ) are available for the Sharp Zaurus PDA. 249KO/Pi + KA/Pi ( = KDE-Pim/Pi ) are available for the Sharp Zaurus PDA.
216Syncing data works for KO/Pi ( version 1.9.3) but not yet for KA/Pi. 250Syncing data works for KO/Pi ( version 1.9.3) but not yet for KA/Pi.
217 251
218 252
253*************************************************************
2547) How to import your contact data into Kontact
255*************************************************************
256
257
258
259MISSING
260
261
262
263*************************************************************
2648) How to import your calendar data into Kontact
265*************************************************************
266
267
268MISSING
269
219 270
220************************************************************* 271*************************************************************
221APPENDIX A) Problems and solutions when reading contact data 272APPENDIX A) Problems and solutions when reading contact data
222************************************************************* 273*************************************************************
223 274
224All data, which can be displayed and accessed in KAddressbook is imported from Outlook. 275All data, which can be displayed and accessed in KAddressbook is imported from Outlook.
diff --git a/libkcal/incidencebase.cpp b/libkcal/incidencebase.cpp
index d7c4595..f1db8b7 100644
--- a/libkcal/incidencebase.cpp
+++ b/libkcal/incidencebase.cpp
@@ -383,28 +383,30 @@ void IncidenceBase::setID( const QString & prof , int id )
383 mExternalId = mExternalId.left( num+len ) +QString::number( id)+mExternalId.mid( end ); 383 mExternalId = mExternalId.left( num+len ) +QString::number( id)+mExternalId.mid( end );
384 } else 384 } else
385 qDebug("Error in IncidenceBase::setID "); 385 qDebug("Error in IncidenceBase::setID ");
386 } else { 386 } else {
387 mExternalId += prof+";"+QString::number( id) +";0:"; 387 mExternalId += prof+";"+QString::number( id) +";0:";
388 } 388 }
389 qDebug("setID*%s*%d*%s* ", prof.latin1(), id,mExternalId.latin1() );
389} 390}
390int IncidenceBase::getID( const QString & prof) 391int IncidenceBase::getID( const QString & prof)
391{ 392{
392 int ret = -1; 393 int ret = -1;
393 int num = mExternalId.find(":"+ prof+";" ); 394 int num = mExternalId.find(":"+ prof+";" );
394 if ( num >= 0 ) { 395 if ( num >= 0 ) {
395 int len = prof.length()+2; 396 int len = prof.length()+2;
396 int end = mExternalId.find( ";", num+len ); 397 int end = mExternalId.find( ";", num+len );
397 if ( end > 0 ) { 398 if ( end > 0 ) {
398 bool ok; 399 bool ok;
399 ret = mExternalId.mid ( num + len,end-len-num).toInt( &ok ); 400 ret = mExternalId.mid ( num + len,end-len-num).toInt( &ok );
400 if (!ok) 401 if (!ok)
401 return -1; 402 ret = -1;
402 } 403 }
403 } 404 }
404 return ret; 405 qDebug("getID*%s*%d*%s* ", prof.latin1(), ret,mExternalId.latin1() );
406 return ret;
405} 407}
406 408
407// example :Sharp_DTM;22;23566:TP;-1;8654:TPP;18;0: 409// example :Sharp_DTM;22;23566:TP;-1;8654:TPP;18;0:
408// format name;III;JJJ: III >= 0, may be -1. JJJ always >= 0 410// format name;III;JJJ: III >= 0, may be -1. JJJ always >= 0
409void IncidenceBase::setCsum( const QString & prof , int id ) 411void IncidenceBase::setCsum( const QString & prof , int id )
410{ 412{
@@ -417,12 +419,13 @@ void IncidenceBase::setCsum( const QString & prof , int id )
417 mExternalId = mExternalId.left( num ) +QString::number(id)+mExternalId.mid( end ); 419 mExternalId = mExternalId.left( num ) +QString::number(id)+mExternalId.mid( end );
418 } else 420 } else
419 qDebug("Error in IncidenceBase::setCsum "); 421 qDebug("Error in IncidenceBase::setCsum ");
420 } else { 422 } else {
421 mExternalId += prof+";-1;"+QString::number( id) +":"; 423 mExternalId += prof+";-1;"+QString::number( id) +":";
422 } 424 }
425 qDebug("setCsum*%s*%d*%s* ", prof.latin1(), id,mExternalId.latin1() );
423} 426}
424int IncidenceBase::getCsum( const QString & prof) 427int IncidenceBase::getCsum( const QString & prof)
425{ 428{
426 int ret = -1; 429 int ret = -1;
427 int num = mExternalId.find( ":"+prof+";" ); 430 int num = mExternalId.find( ":"+prof+";" );
428 if ( num >= 0 ) { 431 if ( num >= 0 ) {
@@ -430,15 +433,16 @@ int IncidenceBase::getCsum( const QString & prof)
430 num = mExternalId.find( ";", num+len ); 433 num = mExternalId.find( ";", num+len );
431 int end = mExternalId.find( ":", num+1 ); 434 int end = mExternalId.find( ":", num+1 );
432 if ( end > 0 ) { 435 if ( end > 0 ) {
433 bool ok; 436 bool ok;
434 ret = mExternalId.mid ( num ,end-num).toInt( &ok ); 437 ret = mExternalId.mid ( num ,end-num).toInt( &ok );
435 if (!ok) 438 if (!ok)
436 return -1; 439 ret = -1;
437 } 440 }
438 } 441 }
442 qDebug("getCsum*%s*%d*%s* ", prof.latin1(), ret,mExternalId.latin1() );
439 return ret; 443 return ret;
440} 444}
441 445
442void IncidenceBase::setIDStr( const QString & s ) 446void IncidenceBase::setIDStr( const QString & s )
443{ 447{
444 if (mReadOnly) return; 448 if (mReadOnly) return;