UpdatePhone method fails

We're having issues using the UpdatePhone method - with appears to fail.  Our website would appear to time out and the Tessitura.asmx page returns the generic (HTTP 500 Internal Server Error)  "The website cannot display the page"

I have attached a screen grab from the Tessitura.asmx page showing the values I'm trying to pass.  I have double checked and all values are valid.  I have tried passing the data with and without the sDayInd and sTeleInd values being supplied.  I can confirm that our website returns the appropriate value in the iAddressNo field.

I have also tried these values directly using WP_MAINTAIN_PHONE via SQL and this appears to work just fine - although the SP has a couple of additional parameters.  I passed the value 'U' in the @action parameter.

Has anyone else seen/resolved this before?  As ever, any help would be gratefully received!

Parents
  • Hi Martin

     

    I don’t have the problem with UpdatePhone when using it via the asmx page. You may not be using the correct parameters for adding a phone not connected to an address (iPhoneNo and iAddressNo need to be 0 when creating a new one and the phonetype needs to be greater than 3)

     

    If you are updating a phone number you would need to call GetConstituentInfoEx so you can get the appropriate phone_no and address_no details.

     

    If you are doing the above then I would suggest that you submit a support ticket.

     

    Cheers

    Sandra

     

    From: Tessitura Web Forum [mailto:forums-tessitura-web@tessituranetwork.com] On Behalf Of Martin Keen
    Sent: Thursday, 21 November 2013 9:59 AM
    To: Sandra Ashby
    Subject: Re: [Tessitura Web Forum] UpdatePhone method fails

     

    Hi Patrick,

    Yep, I have gone through the login process via the web API.  The sequence of API methods was:

    GetNewSessionKeyEx

    SetVariable

    LoginEx2

    UpdatePhone

    Our issue is that we want the end user to be able to add/update their mobile phone number which is not possible via the UpdateAddress method.

    The error I'm still getting is:

    System.Data.SqlClient.SqlException: Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.

       at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)

       at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()

       at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)

       at System.Data.SqlClient.SqlDataReader.ConsumeMetaData()

       at System.Data.SqlClient.SqlDataReader.get_MetaData()

       at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)

       at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)

       at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)

       at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)

       at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)

       at System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior)

       at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)

       at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)

       at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)

       at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, String srcTable)

       at Tessitura.WebAPI.TessituraUser.UpdatePhone(Char action)

       at Tessitura.WebAPI.Tessitura.UpdatePhone(String sSessionKey, Int32 iPhoneNo, Int32 iAddressNo, String sPhoneNumber, Int32 iPhoneType, String sDayInd, String sTeleInd)

    From: Patrick Drew <bounce-patrickdrew5190@tessituranetwork.com>
    Sent: 10/9/2013 6:47:14 PM

    Hi Martin,

    Have you logged the session in before making the call?

    Cheers,

    Patrick.




    You were sent this email automatically because you subscribed to the Tessitura Web forum. You may reply to this message to post to the Web forum or visit the site to search, read and post to the forums. In the interest of keeping the forum posts from becoming cluttered, we encourage you to delete previous message text from your reply before sending. Thank you!

Reply
  • Hi Martin

     

    I don’t have the problem with UpdatePhone when using it via the asmx page. You may not be using the correct parameters for adding a phone not connected to an address (iPhoneNo and iAddressNo need to be 0 when creating a new one and the phonetype needs to be greater than 3)

     

    If you are updating a phone number you would need to call GetConstituentInfoEx so you can get the appropriate phone_no and address_no details.

     

    If you are doing the above then I would suggest that you submit a support ticket.

     

    Cheers

    Sandra

     

    From: Tessitura Web Forum [mailto:forums-tessitura-web@tessituranetwork.com] On Behalf Of Martin Keen
    Sent: Thursday, 21 November 2013 9:59 AM
    To: Sandra Ashby
    Subject: Re: [Tessitura Web Forum] UpdatePhone method fails

     

    Hi Patrick,

    Yep, I have gone through the login process via the web API.  The sequence of API methods was:

    GetNewSessionKeyEx

    SetVariable

    LoginEx2

    UpdatePhone

    Our issue is that we want the end user to be able to add/update their mobile phone number which is not possible via the UpdateAddress method.

    The error I'm still getting is:

    System.Data.SqlClient.SqlException: Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.

       at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)

       at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()

       at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)

       at System.Data.SqlClient.SqlDataReader.ConsumeMetaData()

       at System.Data.SqlClient.SqlDataReader.get_MetaData()

       at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)

       at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)

       at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)

       at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)

       at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)

       at System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior)

       at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)

       at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)

       at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)

       at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, String srcTable)

       at Tessitura.WebAPI.TessituraUser.UpdatePhone(Char action)

       at Tessitura.WebAPI.Tessitura.UpdatePhone(String sSessionKey, Int32 iPhoneNo, Int32 iAddressNo, String sPhoneNumber, Int32 iPhoneType, String sDayInd, String sTeleInd)

    From: Patrick Drew <bounce-patrickdrew5190@tessituranetwork.com>
    Sent: 10/9/2013 6:47:14 PM

    Hi Martin,

    Have you logged the session in before making the call?

    Cheers,

    Patrick.




    You were sent this email automatically because you subscribed to the Tessitura Web forum. You may reply to this message to post to the Web forum or visit the site to search, read and post to the forums. In the interest of keeping the forum posts from becoming cluttered, we encourage you to delete previous message text from your reply before sending. Thank you!

Children