6

Logged in as the adminstrator I am unable to import a few users into a list of subscribers.

The error (when I select preview or import) is

Cannot find the object "IMPORT_CONTACTS" because it does not exist or you do not have permissions.

with the trace as:

System.Data.SqlClient.SqlException at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
 at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
 at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
 at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout)
 at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean asyncWrite)
 at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
 at Tridion.AudienceManagement.DomainModel.Import.Mssql.SqlBulkCopyWrapper.LoadData(DataSession sqlUtilities, ImportType importType)
 at Tridion.AudienceManagement.DomainModel.Import.Import.ImportContacts(ImportDefinition definition)
 at Tridion.AudienceManagement.UI.Model.Services.ImportManagerImpl.Import(XmlElement importDefinitionXml, String fileName, OeUri addressBookUri, ImportType importType, ImportOptions importOptions)
 at Tridion.AudienceManagement.UI.Model.Services.ImportManager.Import(XmlElement importDefinitionXml, String fileName, String addressBookUriString, String importTypeString, ImportOptions importOptions)
 at Tridion.AudienceManagement.UI.Model.Utilities.Util.LogAndThrow(Type orginatingType, Exception e)
 at Tridion.AudienceManagement.UI.Model.Services.ImportManager.Import(XmlElement importDefinitionXml, String fileName, String addressBookUriString, String importTypeString, ImportOptions importOptions)
 at SyncInvokeImport(Object , Object[] , Object[] )
 at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)
 at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc)
 at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc)
 at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31(MessageRpc& rpc)
 at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)

I'm using a really simple import from a .txt file of:

forename,surname,email,other,emailtype,company,country,subscriptionstatus,active TestUser,001,user001@nowhere.test,other001,text,company01,Manchester,subscribed,yes TestUser,002,user002@nowhere.test,other002,html,company01,Manchester,unsubscribed,yes TestUser,003,user003@nowhere.test,other003,multipart,company02,Brussels,subscribed,yes

with a mapping as depicted below:

enter image description here

So I can clearly access the file and I'm able to perform the mappings but as soon as I try to import Boom ... just starting a more thorough debug but wondered if anyone could point me in the right direction...

thanks

UPDATE: in the documentation it states

To import Contacts into the (All Contacts) node in System Administration or any other Address Book in System Administration you need System Administrator rights.

which I do have.

I've also confirmed the file is UTF8 (and tried to import just the email address with all else as 'default' or fixed values)

I see from the SQL hitting the DB that the table IMPORT_CONTACTS is TRUNCATED:

enter image description here

And I can confirm the table exists in the database:

enter image description here

3

It looks like the database user configured in OutboundEmail.xml doesn't have the correct permissions on the database. By default it's tmsdbuser and it's set up by the database creation scripts, but something has clearly changed since then.

Verify that the user has permissions to select, insert, and alter the table. While you're at it, you might want to verify that it has the rest of the permissions as outlined on this page of the documentation: Audience Manager and Outbound E-mail database security settings

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.