--- sc/source/ui/vba//vbapivottables.cxx	
+++ sc/source/ui/vba//vbapivottables.cxx
@@ -59,7 +59,7 @@ public:
 
 };
 
-ScVbaPivotTables::ScVbaPivotTables( const uno::Reference< uno::XComponentContext > & xContext, const uno::Reference< container::XIndexAccess >& xIndexAccess  ):  ScVbaPivotTables_BASE( xContext, xIndexAccess ) 
+ScVbaPivotTables::ScVbaPivotTables( const uno::Reference< vba::XHelperInterface >& xParent, const uno::Reference< uno::XComponentContext > & xContext, const uno::Reference< container::XIndexAccess >& xIndexAccess  ):  ScVbaPivotTables_BASE( xParent, xContext, xIndexAccess ) 
 {
 }
 
@@ -67,13 +67,13 @@ uno::Reference< container::XEnumeration 
 ScVbaPivotTables::createEnumeration() throw (uno::RuntimeException)
 {
 	uno::Reference< container::XEnumerationAccess > xEnumAccess( m_xIndexAccess, uno::UNO_QUERY_THROW );
-	return new PivotTableEnumeration( m_xContext, xEnumAccess->createEnumeration() );
+	return new PivotTableEnumeration( mxContext, xEnumAccess->createEnumeration() );
 }
 
 uno::Any
 ScVbaPivotTables::createCollectionObject( const css::uno::Any& aSource )
 {
-	return DataPilotToPivotTable( aSource,  m_xContext );
+	return DataPilotToPivotTable( aSource,  mxContext );
 }
 
 uno::Type 
@@ -81,3 +81,22 @@ ScVbaPivotTables::getElementType() throw
 {
 	return excel::XPivotTables::static_type(0);
 }
+
+rtl::OUString& 
+ScVbaPivotTables::getServiceImplName()
+{
+	static rtl::OUString sImplName( RTL_CONSTASCII_USTRINGPARAM("ScVbaPivotTables") );
+	return sImplName;
+}
+
+css::uno::Sequence<rtl::OUString> 
+ScVbaPivotTables::getServiceNames()
+{
+	static uno::Sequence< rtl::OUString > sNames;
+	if ( sNames.getLength() == 0 )
+	{
+		sNames.realloc( 1 );
+		sNames[0] = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("org.openoffice.excel.PivotTables") );
+	}
+	return sNames;
+}
