diff --git a/product/ERP5/Document/Document.py b/product/ERP5/Document/Document.py index 58f64a1b3af058f88edd3335761f3fa27c2aeb17..379a29cd23873eb1065f9d5c6104d45f9bf53fd4 100644 --- a/product/ERP5/Document/Document.py +++ b/product/ERP5/Document/Document.py @@ -326,7 +326,9 @@ class Document(DocumentExtensibleTraversableMixin, XMLObject, UrlMixin, certain defined at system level preferences format. """ reference = self.getReference() - return len(self._getSearchableReferenceList(reference)) + if reference is not None: + return len(self._getSearchableReferenceList(reference)) + return False def _getSearchableReferenceList(self, text): """ diff --git a/product/ERP5OOo/tests/testDms.py b/product/ERP5OOo/tests/testDms.py index 7f834c9f85b3f5225be929b84df459694ce207e4..69d3614f1c65bec99db296633b482e29728d8dac 100644 --- a/product/ERP5OOo/tests/testDms.py +++ b/product/ERP5OOo/tests/testDms.py @@ -596,6 +596,13 @@ class TestDocument(TestDocumentMixin): [document3], sqlresult_to_document_list(document5.getImplicitSuccessorValueList())) + # with empty reference no implicit relation should exists even though some documents + # used to reference us with previous reference + document1.setReference(None) + self.tic() + self.assertSameSet([], + sqlresult_to_document_list(document1.getImplicitPredecessorValueList())) + def testOOoDocument_get_size(self): # test get_size on OOoDocument doc = self.portal.document_module.newContent(portal_type='Spreadsheet')