Activities of "ian@order2invoice.com"

Question

Zapier need the following and my oAuth capabilities are low. Can this integration be acheived?

You will need the following to add OAuth authentication:

  • (optionally) An Input Form to gather data from users, such as account team name or site URL for self-hosted apps
  • An OAuth application configured in your own app’s settings, where you’ll add Zapier’s OAuth Redirect URL
  • A Client ID (may be called Customer or API Key) and Client Secret (may be called Customer or API secret) from your app
  • An Authorization URL on your app’s site where users will login with their account credentials
  • (optionally) A list of API scope(s) to restrict what Zapier can access
  • An Access Token Request URL where Zapier exchanges the request token for an access token
  • (optionally) A Refresh Token Request URL where Zapier can refresh the access token if it expires, along with an option to have Zapier automatically refresh credentials
  • A Test API endpoint where Zapier can make an API call to ensure your user credentials work
  • A Connection Label to uniquely identify users’ accounts
Question

Check the docs before asking a question: https://docs.abp.io/en/commercial/latest/ Check the samples, to see the basic tasks: https://docs.abp.io/en/commercial/latest/samples/index The exact solution to your question may have been answered before, please use the search on the homepage.

  • ABP Framework version: vX.X.X
  • UI type: Angular / MVC
  • Tiered (MVC) or Identity Server Seperated (Angular): yes / no
  • Exception message and stack trace:
  • Steps to reproduce the issue:

Do you have an example of a modular monolith architecture similar to https://github.com/kgrzybek/modular-monolith-with-ddd?

This is where a modules are included as a set of projects in the one solution with distributed messaging thereby allowing modular development while removing the need for multiple solutions.

Check the docs before asking a question: https://docs.abp.io/en/commercial/latest/ Check the samples, to see the basic tasks: https://docs.abp.io/en/commercial/latest/samples/index The exact solution to your question may have been answered before, please use the search on the homepage.

  • ABP Framework version: v2.9.0X
  • UI type: Angular
  • Tiered (MVC) or Identity Server Seperated (Angular): no
  • Exception message and stack trace:

[14:38:36 INF] Migrating schema for TestTenant tenant database... [14:38:37 ERR] Instance failure. System.InvalidOperationException: Instance failure. at Microsoft.Data.SqlClient.TdsParser.Connect(ServerInfo serverInfo, SqlInternalConnectionTds connHandler, Boolean ignoreSniOpenTimeout, Int64 timerExpire, Boolean encrypt, Boolean trustServerCert, Boolean integratedSecurity, Boolean withFailover, SqlAuthenticationMethod authType, SqlAuthenticationProviderManager sqlAuthProviderManager) at Microsoft.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, SecureString newSecurePassword, Boolean ignoreSniOpenTimeout, TimeoutTimer timeout, Boolean withFailover) at Microsoft.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString connectionOptions, SqlCredential credential, TimeoutTimer timeout) at Microsoft.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(TimeoutTimer timeout, SqlConnectionString connectionOptions, SqlCredential credential, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance) at Microsoft.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, SqlCredential credential, Object providerInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString userConnectionOptions, SessionData reconnectSessionData, Boolean applyTransientFaultHandling, String accessToken, DbConnectionPool pool, SqlAuthenticationProviderManager sqlAuthProviderManager) at Microsoft.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection, DbConnectionOptions userOptions) at Microsoft.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnectionPool pool, DbConnection owningObject, DbConnectionOptions options, DbConnectionPoolKey poolKey, DbConnectionOptions userOptions) at Microsoft.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection) at Microsoft.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection) at Microsoft.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection) at Microsoft.Data.ProviderBase.DbConnectionPool.WaitForPendingOpen() --- End of stack trace from previous location where exception was thrown --- at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenDbConnectionAsync(Boolean errorsExpected, CancellationToken cancellationToken) at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenDbConnectionAsync(Boolean errorsExpected, CancellationToken cancellationToken) at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenAsync(CancellationToken cancellationToken, Boolean errorsExpected) at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerDatabaseCreator.<>c__DisplayClass20_0.<b__0>d.MoveNext()

--- End of stack trace from previous location where exception was thrown --- at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerDatabaseCreator.<>c__DisplayClass20_0.<b__0>d.MoveNext()

--- End of stack trace from previous location where exception was thrown --- at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerExecutionStrategy.ExecuteAsync[TState,TResult](TState state, Func4 operation, Func4 verifySucceeded, CancellationToken cancellationToken) at Microsoft.EntityFrameworkCore.Migrations.HistoryRepository.ExistsAsync(CancellationToken cancellationToken) at Microsoft.EntityFrameworkCore.Migrations.Internal.Migrator.MigrateAsync(String targetMigration, CancellationToken cancellationToken) at Orion.EntityFrameworkCore.EntityFrameworkCoreOrionDbSchemaMigrator.MigrateAsync() in C:\Code\Orion\aspnet-core\src\Orion.EntityFrameworkCore.DbMigrations\EntityFrameworkCore\EntityFrameworkCoreOrionDbSchemaMigrator.cs:line 28 at Orion.Data.OrionDbMigrationService.MigrateDatabaseSchemaAsync(Tenant tenant) in C:\Code\Orion\aspnet-core\src\Orion.Domain\Data\OrionDbMigrationService.cs:line 84 at Orion.Data.OrionDbMigrationService.MigrateAsync() in C:\Code\Orion\aspnet-core\src\Orion.Domain\Data\OrionDbMigrationService.cs:line 63 at Nito.AsyncEx.Synchronous.TaskExtensions.WaitAndUnwrapException(Task task) at Nito.AsyncEx.AsyncContext.<>c__DisplayClass15_0.b__0(Task t)

at System.Threading.Tasks.ContinuationTaskFromTask.InnerInvoke() at System.Threading.Tasks.Task.<>c.<.cctor>b__274_0(Object obj) at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state) --- End of stack trace from previous location where exception was thrown --- at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state) at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread) --- End of stack trace from previous location where exception was thrown --- at Nito.AsyncEx.Synchronous.TaskExtensions.WaitAndUnwrapException(Task task) at Nito.AsyncEx.AsyncContext.Run(Func1 action) at Volo.Abp.Threading.AsyncHelper.RunSync(Func1 action) ** at Orion.DbMigrator.Program.Main(String[] args) in C:\Code\Orion\aspnet-core\src\Orion.DbMigrator\Program.cs:line 28**

  • Steps to reproduce the issue: I have tried multiple connection strings including the one used for initial migration and keep getting this error?

Host string used for Intial migrations: "Server=DESKTOP-L1E8946\SQLEXPRESS; Trusted_Connection=True; Database=ORION"

Tring used when getting the error above: "Server=DESKTOP-L1E8946\SQLEXPRESS; Trusted_Connection=True; Database=TestTenant"

  • ABP Framework version: v2.9
  • UI type: Angular
  • Tiered (MVC) or Identity Server Seperated (Angular): no

Relating to Settings and Features.

  1. One of our most used API calls needs to receive up to 30 settings to create data for a View Model. We are concerned about the time this will take on each call. Is the settings System suitable for this style of usage? Will it be efficient?
  2. Thoughout our app we need to check both if a Feature is enabled and a Setting indicating is a particular user can use that feature (e.g. Invoice Feature is enabled for a tenant, but only some users have access). What would be the most efficient way to implement this?
  • ABP Framework version: v2.9
  • UI type: Angular
  • Tiered (MVC) or Identity Server Seperated (Angular): no

Relating to Settings and Features.

  1. One of our most used API calls needs to receive up to 30 settings to create data for a View Model. We are concerned about the time this will take on each call. Is the settings System suitable for this style of usage? Will it be efficient?
  2. Thoughout our app we need to check both if a Feature is enabled and a Setting indicating is a particular user can use that feature (e.g. Invoice Feature is enabled for a tenant, but only some users have access). What would be the most efficient way to implement this?

I am looking for direction on acheiving this

Can I get some direction on acheiving the following two issues related to the logon screen

  1. Remove teh tenant selection from the logon screen and provide it only to admin users after logon. This could be on another page prior to showing the app or from a button in the app, maybe on the top toolbar.
  2. Modify the layout of the logon page to display items other than the logon card, for say marketing information.

Thank you.

With reference to multitenancy database per tenant. How much data is stored in the tenant databse. Speciifcally which of the following us stored in the tenant database. e.g. features, permissions, settings, etc.

When choosing multitenancy with database per tenant how much of the data is kept in the tenant databsae? By this I mean where are features per tenant, tenant and user settings, user permission, etc kept, etc?

We need to implement a sidebar which is different to the one provided by Leton that include dual menus. Can we replace the sidebar.? Futher to this can we do the same to the TopBar. For example, we want to place a glabal search in the top bar?

Showing 1 to 10 of 11 entries
Made with ❤️ on ABP v8.2.0-preview Updated on March 25, 2024, 15:11