Bij het uitvoeren van de volgende query op Outlook t.b.v. facturatie uren:
--
-- Distinct list of folders. A folder can be listed multiple times
-- such as through DEFAULT, EXTERNAL, etc. depending on the setup.
--
select fdr.entryid
, listagg(distinct sourcetype) sourcetypes
, listagg(distinct sourcename) sourcenames
, listagg(distinct name) names
, listagg(distinct class) classes
, listagg(distinct description) descriptions
, listagg(distinct folderpath) folderpaths
, listagg(distinct addressbookname) addressbooknames
, listagg(distinct displayname) displaynames
, listagg(distinct label) labels
from folders(true, true, true, true)@Outlook fdr
where fdr.defaultmessageclass = 'IPM.Appointment'
group
by fdr.entryid'
krijg ik de foutmelding:
itgenclr001
U hebt niet de juiste machtigingen voor deze map.
In de trace staat:
14:28:50.81848-WPF-?-02ad686e-82a0-4a1d-8046-13c9153e1f22-25: Enumerated Outlook folder 'Gedeelde Contactpersonen' with source 'Openbare mappen - x@acme.nl' and class 'olFolder' in store ID '0000...000000'.
14:28:50.98102-missing-25: !! First chance exception handling of type 'COMException':
14:28:50.98102-missing-25: U hebt niet de juiste machtigingen voor deze map.
...
14:28:50.98301-missing-25: !! invantive-external-error-code='0x80020009'
property-0-System.Runtime.InteropServices.COMException-ErrorCode='-2147352567'
property-0-System.Runtime.InteropServices.COMException-HResult='-2147352567'
property-0-System.Runtime.InteropServices.COMException-Source='Microsoft Outlook'
Blijkbaar gaat het fout op de contactpersonen van een van de gedeelde mappen.
Stack trace:
bij Microsoft.Office.Interop.Outlook._Store.GetRootFolder()
bij Invantive.Data.Windows.Providers.Office.Outlook.OutlookProvider.LE.MoveNext()
bij Invantive.Data.Windows.Providers.Office.Outlook.OutlookProvider.RY.MoveNext()
bij Invantive.Data.SqlUtility.HPB.MoveNext()
bij System.Linq.Enumerable.<SelectManyIterator>d__17`2.MoveNext()
bij Invantive.Sql.DataSourceOrFunctionTree.<GetData>d__52.MoveNext()
bij Invantive.Data.CompressedEnumerable`1.<GetEnumerator>d__8.MoveNext()
bij Invantive.Sql.FirehoseResultSet.GB.MoveNext()
bij Invantive.Sql.FirehoseResultSet.TB.MoveNext()
bij Invantive.Data.CompressedEnumerable`1.<GetEnumerator>d__8.MoveNext()
bij Invantive.Sql.FirehoseResultSet.GB.MoveNext()
bij Invantive.Sql.FirehoseResultSet.TB.MoveNext()
bij Invantive.Sql.FilterIterator.KB.MoveNext()
bij Invantive.Sql.FirehoseResultSet.TB.MoveNext()
bij Invantive.Sql.ChainedFirehose.LB.MoveNext()
bij Invantive.Sql.FirehoseResultSet.TB.MoveNext()
bij System.Linq.Lookup`2.Create[TSource](IEnumerable`1 source, Func`2 keySelector, Func`2 elementSelector, IEqualityComparer`1 comparer)
bij System.Linq.GroupedEnumerable`3.GetEnumerator()
bij System.Linq.Buffer`1..ctor(IEnumerable`1 source)
bij System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
bij Invantive.Sql.GroupByIterator.TZ.MoveNext()
bij Invantive.Sql.FirehoseResultSet.TB.MoveNext()
bij Invantive.Sql.SelectListIterator.DE.MoveNext()
bij Invantive.Sql.FirehoseResultSet.TB.MoveNext()
bij Invantive.Data.CompressedEnumerable`1.<GetEnumerator>d__8.MoveNext()
bij Invantive.Sql.FirehoseResultSet.GB.MoveNext()
bij Invantive.Sql.MaterializeSparseArrayIterator.<Iterator>d__1.MoveNext()
bij Invantive.Sql.QueryPlan.ZE.MoveNext()
bij Invantive.Data.ExtensionMethods.RTB`1.YTB.MoveNext()
bij System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
bij System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
bij Invantive.Data.ConnectionManager.HD.U(QueryPlan )
bij System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()
bij System.Linq.Buffer`1..ctor(IEnumerable`1 source)
bij System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
Hoe kan ik de map gemakkelijker achterhalen die fout gaat?
Hoe kan ik ondanks foutmelding toch alle overige Outlook stores opvragen?